S32K312 how APPBL will run after secure boot configuration

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

S32K312 how APPBL will run after secure boot configuration

Jump to solution
378 Views
yumi
Contributor III

Hi,

I am thinking about  how S32K312 secure boot works after configuration. As we know in the demo project, we will update the IVT before functional reset after secure boot configuration. For S32K312, it has just one core, so the Apps for BOOT_TARGET bit#1/2/8 in the IVT is not working, so the MCU core will run the  0x30 address AppBL if it find the BOOT_SEQ in BCW equals 1?

Tags (1)
0 Kudos
Reply
1 Solution
193 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Basic Secure Boot supports booting one target core (AppBL). AppBL contains core identifier, specifying the core.

Advanced secure boot (SMR-based secure boot) supports booting single or multiple cores.

View solution in original post

0 Kudos
Reply
3 Replies
331 Views
johnfinch204
Contributor I

Hi,

I am thinking about how S32K312 secure boot works after configuration. As we know in the demo project, we will update the IVT before functional reset after secure boot configuration. For S32K312, it has just one core, so the Apps for BOOT_TARGET bit#1/2/8 in the IVT is not working, so the MCU core will run the 0x30 address AppBL if it find the BOOT_SEQ in BCW equals 1?

 

Yes, your understanding is correct. Since the S32K312 is a single-core device, the core-specific BOOT_TARGET bits in the IVT are non-functional for determining the main execution path. If the BOOT_SEQ in the BCW is set to 1 (indicating secure boot), the Boot ROM will find the Image Vector Table (IVT), verify its integrity, and then transfer control to the Application Bootloader (AppBL) address specified within the IVT (often referenced as the 0x30 address field), initiating the secure load sequence for the user application.

231 Views
yumi
Contributor III

Hi @johnfinch204,

So for the single core MCU S32K312, we can configure multiple area, and after functional reset, MCU just runs the AppBL.

For multiple core MCU, we can also configure multiple area different cores, and after functional reset, MCU also runs to AppBL? Must the AppBL be in Core 0 or it can be in any core? 

Thanks

0 Kudos
Reply
194 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Basic Secure Boot supports booting one target core (AppBL). AppBL contains core identifier, specifying the core.

Advanced secure boot (SMR-based secure boot) supports booting single or multiple cores.

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2246416%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ES32K312%20how%20APPBL%20will%20run%20after%20secure%20boot%20configuration%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2246416%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%EF%BC%8C%3C%2FP%3E%3CP%3EI%20am%20thinking%20about%26nbsp%3B%20how%20S32K312%20secure%20boot%20works%20after%20configuration.%20As%20we%20know%20in%20the%20demo%20project%2C%20we%20will%20update%20the%20IVT%20before%20functional%20reset%20after%20secure%20boot%20configuration.%20For%20S32K312%2C%20it%20has%20just%20one%20core%2C%20so%20the%20Apps%20for%20BOOT_TARGET%20bit%231%2F2%2F8%20in%20the%20IVT%26nbsp%3Bis%20not%20working%2C%20so%20the%20MCU%20core%20will%20run%20the%26nbsp%3B%200x30%20address%20AppBL%20if%20it%20find%20the%20BOOT_SEQ%20in%20BCW%20equals%201%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2246717%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20S32K312%20how%20APPBL%20will%20run%20after%20secure%20boot%20configuration%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2246717%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CBLOCKQUOTE%3E%3CP%3EHi%EF%BC%8C%3C%2FP%3E%3CP%3EI%20am%20thinking%20about%20how%20S32K312%20secure%20boot%20works%20after%20configuration.%20As%20we%20know%20in%20the%20demo%20project%2C%20we%20will%20update%20the%20IVT%20before%20functional%20reset%20after%20secure%20boot%20configuration.%20For%20S32K312%2C%20it%20has%20just%20one%20core%2C%20so%20the%20Apps%20for%20BOOT_TARGET%20bit%231%2F2%2F8%20in%20the%20IVT%20is%20not%20working%2C%20so%20the%20MCU%20core%20will%20run%20the%200x30%20address%20AppBL%20if%20it%20find%20the%20BOOT_SEQ%20in%20BCW%20equals%201%3F%3C%2FP%3E%3C%2FBLOCKQUOTE%3E%3CBR%20%2F%3E%3CP%3EYes%2C%20your%20understanding%20is%20correct.%20Since%20the%20S32K312%20is%20a%20single-core%20device%2C%20the%20core-specific%20BOOT_TARGET%20bits%20in%20the%20IVT%20are%20non-functional%20for%20determining%20the%20main%20execution%20path.%20If%20the%20BOOT_SEQ%20in%20the%20BCW%20is%20set%20to%201%20(indicating%20secure%20boot)%2C%20the%20Boot%20ROM%20will%20find%20the%20Image%20Vector%20Table%20(IVT)%2C%20verify%20its%20integrity%2C%20and%20then%20transfer%20control%20to%20the%20Application%20Bootloader%20(AppBL)%20address%20specified%20within%20the%20IVT%20(often%20referenced%20as%20the%200x30%20address%20field)%2C%20initiating%20the%20secure%20load%20sequence%20for%20the%20user%20application.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2251633%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20S32K312%20how%20APPBL%20will%20run%20after%20secure%20boot%20configuration%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2251633%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F257221%22%20target%3D%22_blank%22%3E%40johnfinch204%3C%2FA%3E%2C%3C%2FP%3E%3CP%3ESo%20for%20the%20single%20core%20MCU%20S32K312%2C%20we%20can%20configure%20multiple%20area%2C%20and%20after%20functional%20reset%2C%20MCU%20just%20runs%20the%20AppBL.%3C%2FP%3E%3CP%3EFor%20multiple%20core%20MCU%2C%20we%20can%20also%20configure%20multiple%20area%20different%20cores%2C%20and%20after%20functional%20reset%2C%20MCU%20also%20runs%20to%20AppBL%3F%20Must%20the%20AppBL%20be%20in%20Core%200%20or%20it%20can%20be%20in%20any%20core%3F%26nbsp%3B%3C%2FP%3E%3CP%3EThanks%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2252361%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20S32K312%20how%20APPBL%20will%20run%20after%20secure%20boot%20configuration%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2252361%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EBasic%20Secure%20Boot%20supports%20booting%20one%20target%20core%20(AppBL).%20AppBL%20contains%20core%20identifier%2C%20specifying%20the%20core.%3C%2FP%3E%0A%3CP%3EAdvanced%20secure%20boot%20(SMR-based%20secure%20boot)%20supports%20booting%20single%20or%20multiple%20cores.%3C%2FP%3E%3C%2FLINGO-BODY%3E