LS1043A - 32 bit SDK for bare board project

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

LS1043A - 32 bit SDK for bare board project

773 Views
babatejbotcha
Contributor I

I need to run LS1043A in 32bit execution state. Codewarrior doesn't support for creating a AArch32 baremetal project. Could any one provide me a LS1043A 32 bit SDK for a baremetal project or any alternative solution? 

Tags (1)
0 Kudos
1 Reply

512 Views
yipingwang
NXP TechSupport
NXP TechSupport

ARMv8 processors includes two execution states, AArch64 and AArch32.

In AArch32 state, the A32 and T32 instruction sets, that are compatible with earlier version of the ARM architecture.

You could install CodeWarrior for ARMv7, and create a bareboard project for LS1021 processor to have reference.

 

In your product design, probably you could refer to AARCH32 supporting in u-boot provided in Linux SDK.

Use AArch64 state u-boot bring up the board, then before u-boot loading Linux Kernel, switch the core to AArch32 mode, EL2, by setting up scr_el3, sctlr_el2, elr_el3 and spsr_el3 registers. Once the registers are setup, the “eret” instruction will bring the system to the address assigned in elr_el3, which is the entry point of 32-bit Linux kernel.

0 Kudos