-
Notifications
You must be signed in to change notification settings - Fork 3k
NRF51822: Fix baremetal linker error #12154
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
NRF51822: Fix baremetal linker error #12154
Conversation
926950d
to
d8dc2a2
Compare
@hugueskamba, thank you for your changes. |
Looks similar to #12155 probably won't actually run |
@bulislaw |
Ensure the NRF51822 `us_ticker.c` module content is compiled in only if the target supports USTICKER.
d8dc2a2
to
e0c628c
Compare
CI started |
Test run: FAILEDSummary: 2 of 11 test jobs failed Failed test jobs:
|
Do we think the failure is related to the changes? I have not seen anything that suggested that. |
Test restarted |
To understand this one: there is no lp ticker for nrf51x, us ticker is implemented via rtc (already low power), therefore use us ticker during sleep as set here is fine. Is that correct? |
], | ||
"overrides": { | ||
"tickless-from-us-ticker" : true, | ||
"boot-stack-size" : "0x400" |
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.
Why do we also change boot-stack-size
in this PR which addresses a baremetal link error?
I am assuming that there is not enough memory on this target to accommodate the default 4K stack size?
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.
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.
I don't know why we also need to change the boot stack size nor which value it should be set to: 0x800 or 0x400:
https://github.com/ARMmbed/mbed-os/blob/master/targets/TARGET_NORDIC/TARGET_MCU_NRF51822/device/TOOLCHAIN_GCC_ARM/TARGET_MCU_NORDIC_32K/NRF51822.ld/#L4
@mprse You worked on this some time ago, can you give your view?
CI started |
Test run: SUCCESSSummary: 11 of 11 test jobs passed |
This shall be ready for integration once approved, cc @evedon |
NOTE: We shall probably have to re-run CI on this before merging due to the number of days since it last ran... |
Did anyone checked whether it actually works after compiling? If yes, it's fine with me. |
@hugueskamba @evedon ^^^^ |
Successfully built mbed-os-example-blinky-baremetal for NRF51822 with this PR. |
@evedon could you approve then please and I will rerun this through the CI and then we should be able to get this in. |
CI started |
Test run: FAILEDSummary: 1 of 11 test jobs failed Failed test jobs:
|
Re running CI as I cannot see why this failed |
Test run: FAILEDSummary: 1 of 11 test jobs failed Failed test jobs:
|
Summary of changes
Ensure the
NRF51822
'sus_ticker.c
module content is compiled in only if the targetsupports the microsecond ticker (
USTICKER
).Impact of changes
It is now possible to build NRF51822 targets with the baremetal profile using the debug and develop build profiles.
i.e It is now possible to build
mbed-os-example-blinky-baremetal
with$ mbed compile -t <TOOLCHAIN> -m nrf51_microbit
Migration actions required
Documentation
Pull request type
Test results
Reviewers
@pan-