-
Notifications
You must be signed in to change notification settings - Fork 3k
Add mbed-os 5 build support for LPC11C24 #6541
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
Conversation
@jorisa Can you share the tests you run (using The change is minimal. what is actually fixing? an error? |
@jorisa .. how much RAM/Flash is present on the LPC11C24? Why do you want to remove the RTOS component here (via .mbedignore)? That optimisation needs to happen in the application based on requirements.. Can you please clarify the need for this PR and also attach greentea logs from all 3 compilers here? Thanks. |
All, apologies for the lack of additional information with this pull-request. The LPC11C24 has 32kB Flash / 8kB RAM. We are porting some projects from mbed2 to the latest mbed-os. By following the advice in the mentioned blog post we removed all rtos dependancies on the application level using mbedignore, making it resemble the classic mbed library. The only error that we ran in to was:
This value is also defined for TARGET_LPC11U24 which is a very similar part (also 32/8Kb). I don't have the infrastructure to test on all 3 compilers, but I verified that this fixes the error on gcc, and that the application runs as expected. I amended the pull request to default to hex output, since this is what FlashMagic accepts (for the CAN bootloader). Let me know if additional information is necessary. As a separate note, would it be an idea to create a target config to exclude all the rtos stuff? I don't know how many other small targets exists that currently still need need to rely on the old library. |
I checked |
I don't know how you define 'supported'. Currently you cannot build this target with mbed-os, with this fix you can. We use a bunch of targets on mbed5 and would prefer to build everything from the same mbed-os library version. I am happy to change the title to something you find more appropriate. |
Sounds fine to me |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a recheck - hex is supported by target?
@0xc0170 , without |
@0xc0170 hex is supported on LPC11C24, This is how we invoke the build:
I assume it defaults to supporting OS 5. Again to clarify, this is to allow building both "classic" (rtos-less) applications and os5 applications from the same library code base. Is there a reason why you would want the classic library at all considering this seems to work fine? Do I need to do something to run the remaining checks? |
That specifies if it is released or not (target part of mbed 2 lib for instance or published in the targets supported, etc) - that is my understanding. You can still build locally using tools for instance, as @jorisa is doing. @jorisa This patch looks fine to fine, will run CI. Out of curiosity, with the footprint this target has - what are you going to run there? I would imagine just having single threaded app and even then its limited? /morph build |
It's for a simple CAN based I/O expander, indeed single thread. We use the ROM CAN bootloader with MagicFlash to load the firmware. |
Build : SUCCESSBuild number : 1738 Triggering tests/morph test |
Exporter Build : SUCCESSBuild number : 1372 |
Test : SUCCESSBuild number : 1541 |
/morph mbed2-build |
1 similar comment
/morph mbed2-build |
Description
Fix support for building LPC11C24.
Based on: https://os.mbed.com/blog/entry/Reducing-memory-usage-by-tuning-RTOS-con/
Pull request type
[X] Fix
[ ] Refactor
[ ] New target
[ ] Feature
[ ] Breaking change