-
Notifications
You must be signed in to change notification settings - Fork 6.7k
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
NXP S32Z: add support to execute code from code RAM #81112
Conversation
Use Zephyr cache API to initialize cache as done for various platforms. Enabling CACHE_MANAGEMENT by default Signed-off-by: Dat Nguyen Duy <[email protected]>
359eaaf
to
6a24810
Compare
On Arm Cortex R52, cache segregation policy controls the number of L1 I/D cache ways that are allocated to Flash and AXIM interface. Adding Kconfig options for configuring it. Writing to IMP_CSCTRL is only permitted before the caches have been enabled, following a system reset. Signed-off-by: Dat Nguyen Duy <[email protected]>
Add devicetree node for code RAM, code RAM can be accessed over AIXM bus or AXIF bus. Code access via AXIF interface provides the best optimal performance Signed-off-by: Dat Nguyen Duy <[email protected]>
- Trace32 runner: no need to configure TE bit in CFG_CORE register in the cmm start-up script, it can be configured at Zephyr start-up code when required (via SCTRL register) - MPU static regions also needs to be updated for XIP and non-XIP Signed-off-by: Dat Nguyen Duy <[email protected]>
6a24810
to
3f2bac6
Compare
SoC changes LGTM, I'll let others review the Arm changes and approve after
@@ -13,9 +13,8 @@ | |||
compatible = "nxp,s32z270"; | |||
|
|||
chosen { | |||
zephyr,sram = &sram1; | |||
zephyr,console = &uart0; |
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.
Is dropping the console here intended ?
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.
Hi, yes the change is intended because the console is already chosen in https://github.com/zephyrproject-rtos/zephyr/blob/main/boards/nxp/s32z2xxdc2/s32z2xxdc2_s32z270_rtu1_B.overlay (for revB) and https://github.com/zephyrproject-rtos/zephyr/blob/main/boards/nxp/s32z2xxdc2/s32z2xxdc2_s32z270_rtu1_D.overlay (for revD)
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.
if the change is unrelated to this pr then consider doing it in a separate pr
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.
Changes to the arch/arm parts look good to me.
The rest seems fine too.
This PR adds support to execute code from code RAM through AXIF (a read-only bus interface)
This addresses #60217