-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Add BOOTLOADER feature #7714
Add BOOTLOADER feature #7714
Conversation
Might need to update the binaries |
@brianesquilona Some questions:
|
Quoting @theotherjimmy
I have tested the first one to work. |
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.
Binaries needs LICENSE file, please add it
I'm not worried about this, since the updates can come during a patch release. |
@theotherjimmy - Should the binaries for each platform be placed under corresponding TARGET_ folder? |
@brianesquilona - As we discussed with @theotherjimmy, current locations of those binaries are fine. So no need to change them. @cmonr - Please see my responses to some of your questions: Will there be/are there docs coming in to addresshow to use the feature? - Yes, there will be update to the docs coming into Handbook repo capturing these changes. We will add you to that once its up. |
@0xc0170 - bootloader binaries are copied from mbed-bootloader-binaries repo which has same license(Apache License 2.0) as mbed-os. So no need to copy the license again. Let me know if you think we still need the license. |
@SenRamakri It's good that the licenses are somewhere, but within the context of Mbed OS, if someone was casually browsing this particular folder and used these binaries, a user would have to search through the file history to eventually find this PR to find out that the licenses exist elsewhere. I think the idea of having the licenses locally within the repo, and next to the binaries is to make it explicitly known what the user is getting. A random example: https://github.com/ARMmbed/mbed-os/tree/646cc89a620f978ed6174cb7bbb921e0f0d910f2/targets/TARGET_ARM_SSG/TARGET_BEETLE/TOOLCHAIN_ARM_STD. Just a single search was needed to find that binary, and now I also know what kind of license it's paired with.
I was more asking as to whether we had some sort of CI testing wrapped around this feature and/or binaries. Manual testing things and saying that they're ok gives me the jeebees, as that's just asking for issues down the road. However, if some sort of automated testing is in the pipeline or not ready yet, then I think that's not a dealbreaker fow now. |
:+1 for referencing the docs PR. |
I'm assuming that application can override the binaries with their own in different location? |
60a7517
to
4bbfffb
Compare
Added LICENSE file |
Unless anyone else has input for this PR (@bulislaw @theotherjimmy @donatieng @SenRamakri ), I'm going to get it going in CI. /morph build |
Build : SUCCESSBuild number : 2801 Triggering tests/morph test |
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.
@bulislaw Hex/bin files in tree are not automatically assumed to be bootloaders, and the configuration option is what selects the bootloader for a target. The mbed_lib.json is what picks the bootloader in this PR.
I don't like how we move devices specific files out of target directory. It's even more confusing that we move out the config to another file. If we want to make our system feel consistent we should be trying to minimise surprises and things to know. I don't care whether it's DEVICE_BOOTLOADER or FEATURE_BOOTLOADER, but I'd like to have it under targets/. The two things that need to be considered:
- Bootloader has to be easily (in/ex)cluded from a build
- There must be a way for users to provide their own binary and settings
…bed OS repository for supported targets
b17e455
to
4db8a10
Compare
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.
Verified to work with upcoming version of mbed-cloud-client-example.
Any response for this? Is this intended (the structure) for a reason as @theotherjimmy indicated earlier about bootloader being specific use case thus this tree (not in targets/ folder). cc @donatieng |
I agree with @bulislaw - even if the tools don't require it we should keep things consistent by having binaries in folders specific to targets, such as As we move towards adding support for more targets, this will ensure future-proofness. |
@brianesquilona please switch the license header to PBL. FYI @ChiefBureaucraticOfficer |
…he license to PBL
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.
Thanks @brianesquilona !
Let's wait for the green light regarding license but looks good. @theotherjimmy does this work for you?
Just got confirmation that this PBL is correct & appropriate so good to go from a legal standpoint 👮 |
/morph build |
Build : SUCCESSBuild number : 2891 Triggering tests/morph test |
Test : SUCCESSBuild number : 2639 |
Exporter Build : FAILUREBuild number : 2516 |
/morph export-build |
Exporter Build : SUCCESSBuild number : 2525 |
BOOTLOADER feature
Description
Added BOOTLOADER feature and copy bootloader binaries into mbed OS repository for supported targets
Pull request type