Skip to content

Conversation

@MaureenHelm
Copy link
Member

Fixes the Cortex-M DTCM linker section to work with relocation using scripts/gen_relocate_app.py

Adds support for the Cortex-M ITCM linker section.

This is in preparation for extending #31034 to support XIP.

Adds missing DTCM_ADDR and CCM_ADDR macros needed by the linker script
generated by scripts/gen_relocate_app.py.

Moves associated bss_end, noinit_end, and data_end linker symbols to
account for section relocation. Without this change, the section sizes
calculated in z_bss_zero() and z_data_copy() are incorrect.

Signed-off-by: Maureen Helm <[email protected]>
Adds a linker section for Cortex-M instruction tightly coupled memory
(ITCM), similar to the existing section for DTCM. A new executable MPU
region is not added as there isn't currently a need to make this section
accessible to user mode. This section can be enabled by setting a device
tree chosen node zephyr,itcm.

Signed-off-by: Maureen Helm <[email protected]>
Sets the device tree chosen node for instruction tightly coupled memory
(ITCM) on all i.MX RT boards. Leverages the common Cortex-M linker
section instead of the SoC-specific one.

Signed-off-by: Maureen Helm <[email protected]>
@MaureenHelm
Copy link
Member Author

@ioannisg will you please have another look?

@ioannisg ioannisg requested a review from erwango January 14, 2021 20:42
@ioannisg ioannisg merged commit 4afc478 into zephyrproject-rtos:master Jan 15, 2021
@MaureenHelm MaureenHelm deleted the arm-tcm branch January 15, 2021 15:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants