-
Notifications
You must be signed in to change notification settings - Fork 138
NXP MCXN non-TrustZone + TrustZone port #671
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
base: master
Are you sure you want to change the base?
Conversation
293e848 to
8c00a73
Compare
64faa89 to
43c2db1
Compare
43c2db1 to
f9b5928
Compare
dgarske
left a comment
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.
Code looks great! I'll give it a test drive on the MCX-N shortly.
dgarske
left a comment
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.
All testing without TrustZone works great.
Partition 1 header magic 0xFFFFFFFF invalid at 0x15000
Boot partition: 0xA000 (sz 20076, ver 0x2, type 0x601)
Partition 1 header magic 0xFFFFFFFF invalid at 0x15000
Starting Update (fallback allowed 0)
Partition 1 header magic 0xFFFFFFFF invalid at 0x15000
Boot partition: 0xA000 (sz 20076, ver 0x2, type 0x601)
Booting version: 0x2
Hello from firmware version 2
I got stuck trying to enable TrustZone. I think the MCU Configurator tool can do it and setup the memory partitions, but I don't see this documented in your PR?
|
The MCX-N doesn't need a hardware-level trustzone configuration like STM32. At reset the CPU always runs in secure mode and lets you setup secure/non-secure regions at runtime, then jump into non-secure code via the The difference between The MCU Configurator tool is more like a code generator that sets up the trustzone configuration code, it's not needed in wolfBoot (at least for now, maybe we could support it in the future). |
Tested on FRDM-MCXN947. This port uses the newer version of the MCUXpresso SDK (https://github.com/nxp-mcuxpresso/mcuxsdk-manifests).