Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecate tinker fqc #2479

Merged
merged 7 commits into from
Jul 19, 2022
Merged

Deprecate tinker fqc #2479

merged 7 commits into from
Jul 19, 2022

Conversation

scott-brust
Copy link
Member

Problem

All of the tinker-fqc app functionality has been rolled into the base tinker app. There is no need for the app anymore so it should be removed. It was unnecessarily inflating the size of the combined release binaries as well, since it was being built for every platform even though it was only strictly needed for P2.

Another problem solved in this release is that tinker was no longer able to be compiled with the standalone application.cpp file.

The last major change in this PR is the creation of a third_party/coremark module. A fork of the public coremark repo was made, then a submodule added referencing our particle branch that has the modifications needed to run coremark in the P2 FQC CPU test. Functionally things are the same, but the coremark code is no longer included in the tinker app dir.

Solution

  1. Remove user/applications/tinker-fqc/ directory
  2. Add extra define to tinker makefile to specify when building tinker for FQC purposes (ie via make APP=tinker)
  3. Create third_party/coremark/coremark submodule, point it to the particle branch with our changes

Steps to Test

Compile tinker for P2

make PLATFORM=p2 APP=tinker all

Use cloud compile with just the application.cpp file

particle compile --target 5.0.0-alpha.1 p2 ./user/applications/tinker/application.cpp

Compiling code for p2
Targeting version: 5.0.0-alpha.1

Including:
    ./user/applications/tinker/application.cpp

attempting to compile firmware
downloading binary from: /v1/binaries/62d5dbb55e264a021eefa462
saving to: p2_firmware_1658182577343.bin
Memory use:
   text	   data	    bss	    dec	    hex	filename
   7934	    116	    496	   8546	   2162	/workspace/target/workspace.elf

Compile succeeded.
Saved firmware to: /Users/scottbrust/develop/device-os/p2_firmware_1658182577343.bin

Example App

Use tinker

References

Coremark submodule forked from here. Based on the barebones target


Completeness

  • User is totes amazing for contributing!
  • Contributor has signed CLA (Info here)
  • Problem and Solution clearly stated
  • Run unit/integration/application tests on device
  • Added documentation
  • Added to CHANGELOG.md after merging (add links to docs and issues)

@scott-brust scott-brust force-pushed the fix/deprecate-tinker-fqc branch from 60e97b5 to da2d5b4 Compare July 18, 2022 22:25
@scott-brust scott-brust merged commit 5b4a65f into develop Jul 19, 2022
@scott-brust scott-brust deleted the fix/deprecate-tinker-fqc branch July 19, 2022 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants