-
Notifications
You must be signed in to change notification settings - Fork 267
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
Lack of uninit section causes linking defmt to fail #175
Comments
Anything else that needs to be done in this PR? |
No, that should be all that is necessary. |
I did not have any issues flashing with Code is here I tried to use your linker script patch like this:
Hardware is an esp32c3, connected directly over onboard serial peripheral. |
My apologies, this was user error. I forgot that I have successfully tested the |
defmt puts it's uninitialised data in the uninit section, found here in the cortex-m-rt linker script:
https://github.com/rust-embedded/cortex-m/blob/0e530549de322684c50e858c6bb985afb5479dbe/cortex-m-rt/link.x.in#L170
this is absent from the linker scripts here, so we get this linker error:
This issue has already been reported with defmt.
knurling-rs/defmt#693
I've tested adding this uninit section to the esp32c3 db-riscv-link.x after BSS, and it seems to work!
Also seems to trigger some issues flashing on cargo embed, but I think those are likely to be probe-rs bugs.
probe-rs-cli does not trigger this, maybe my cargo-embed is not up to date. Recording it here just in case:
I'll make a PR for this in a few days if no-one else picks this up
The text was updated successfully, but these errors were encountered: