How to use UART2 instead of UART1 on LS1043ARDB/LS1046ARDB

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

How to use UART2 instead of UART1 on LS1043ARDB/LS1046ARDB

How to use UART2 instead of UART1 on LS1043ARDB/LS1046ARDB

How to use UART2 instead of UART1 on LS1043ARDB/LS1046ARDB.

 

1. Compile PBL binary from RCW source file

2. Compile U-Boot binary

3. Compile TF-A binaries (bl2_.pbl and fip.bin)

4. Program TF-A binaries on specific boot mode

 

 

1-COMPILE PBL BINARY FROM RCW SOURCE FILE

 

You have to create a new directory to compile the binaries that you need to create a

TF-A binary

You need to compile the rcw_<boot_mode>.bin binary to build the

bl2_<boot_mode>.pbl binary.

 

Clone the rcw repository and compile the PBL binary.

 

1. $ git clone https://github.com/nxp-qoriq/rcw

2. $ cd rcw

3. $ cd ls1043ardb

4. $ make

 

Inside the directory called “RR_FQPP_1455” you can see some binaries with

the next nomenclature:

rcw_<freq>.bin

Where “freq” is the frequency in MHz of the processor, the values of the frequency

are 1200MHz, 1400MHz, 1500MHz, and 1600MHz

 

2-COMPILE U-BOOT BINARY

You need to compile the u-boot.bin binary to build the fip.bin binary.

Clone the U-boot repository and compile the U-Boot binary for TF-A

 

1. $ git clone https://github.com/nxp-qoriq/u-boot

2. $ cd u-boot

3. $ git checkout -b LSDK-21.08 LSDK-21.08

4. $ export ARCH=arm64

5. $ export CROSS_COMPILE=aarch64-linux-gnu-

6. $ make distclean

7. $ nano configs/ls1043ardb_tfa_defconfig

7.1 change the bootargs "console=ttyS0,115200" for "console=ttyS1,115200"

7.2 add "CONFIG_CONS_INDEX=2

7. $ make ls1043ardb_tfa_defconfig

8. $ make

 

3 Compile TF-A binaries (bl2_.pbl and fip.bin)

1. $ git clone https://github.com/nxp-qoriq/atf

2. $ cd atf

3. $ git checkout -b LSDK-21.08 LSDK-21.08

4. $ export ARCH=arm64

5. $ export CROSS_COMPILE=aarch64-linux-gnu-

6. $ nano plat/nxp/common/include/default/ch_3_2/soc_default_base_addr.h

6.1 Change the line "#define NXP_UART_ADDR 0x021C0000" for "#define NXP_UART_ADDR 0x021D0000"

6.2 Change the line "#define NXP_UART1_ADDR 0x021D0000" for "#define NXP_UART_ADDR 0x021C0000"

 
7. $ nano plat/nxp/common/include/default/ch_2/soc_default_base_addr.h

7.1 Change the line "#define NXP_UART_ADDR 0x021C0500" for "#define NXP_UART_ADDR 0x021C0600"

7.2 Change the line "#define NXP_UART1_ADDR 0x021C0600" for "#define NXP_UART_ADDR 0x021C0500"

 

The compiled BL2 binaries, bl2.bin and bl2_<boot mode>.pbl are available at

atf/build/ls1043ardb/release/.

NOTE: For any update in the BL2 source code or RCW binary, the bl2_<boot

mode>.pbl binary needs to be recompiled

 

3.1 HOW TO COMPILE BL2 BINARY

To compile the BL2 binary without OPTEE:

make PLAT=<platform> bl2 BOOT_MODE=<boot_mode> pbl

RCW=<path_to_rcw_binary>/<rcw_binary_for_specific_boot_mode>

 

To LS1043ARDB for SD boot:

make PLAT=ls1043ardb bl2 BOOT_MODE=sd pbl

RCW=<path_to_rcw_binary>/<rcw_freq.bin>

 

To LS1043ARDB for NOR boot:

make PLAT=ls1043ardb bl2 BOOT_MODE=nor pbl

RCW=<path_to_rcw_binary>/<rcw_freq.bin>

 

To LS1043ARDB for NAND boot:

make PLAT=ls1043ardb bl2 BOOT_MODE=nand pbl

RCW=<path_to_rcw_binary>/<rcw_freq.bin>

 

3.2 HOW TO COMPILE FIP BINARY

 

To compile the FIP binary without OPTEE and trusted board boot:

$make PLAT=<platform> fip BL33=<path_to_u-boot_binary>/u-boot.bin

 

For LS1043ARDB:

$make PLAT=ls1043ardb fip BL33=<path_to_u-boot_binary>/u-boot.bin

 

The compiled BL31 and FIP binaries ( bl31.bin, fip.bin ) are available at

atf/build/ls1043ardb/release/. For any update in the BL31, BL32, or BL33 binaries,

the fip.bin binary needs to be recompiled.

 

4 Program TF-A binaries on specific boot mode

For that step you can use a tftp server, but it is easier with a USB formatted on

FAT32.

 

You have to put the files “ bl2_<boot_mode>.pbl” and “fip.bin” in the usb and follow

the steps to your boot mode.

 

4.1 Program TF-A binaries on IFC NOR flash

For LS1043A, the steps to program TF-A binaries on IFC NOR flash are as follows:

 

1. Boot the board from the default bank.

2. Under U-boot prompt:

=> usb start

3. Flash bl2_nor.pbl:

=> fatload usb 0:1 $load_addr bl2_nor.pbl

 

a. Alternate bank:

=> protect off 64000000 +$filesize && erase 64000000 +$filesize &&

cp.b $load_addr 64000000 $filesize

 

b. Current bank:

=> protect off 60000000 +$filesize && erase 60000000 +$filesize &&

cp.b $load_addr 60000000 $filesize

 

 

4. Flash fip.bin:

=> fatload usb 0:1 $load_addr fip.bin

 

a. Alternate bank:

=> protect off 64100000 +$filesize && erase 64100000 +$filesize &&

cp.b $load_addr 64100000 $filesize

 

b. Current bank:

=> protect off 60100000 +$filesize && erase 60100000 +$filesize &&

cp.b $load_addr 60100000 $filesize

 

5. Reset your board:

 

a. Alternate bank:

cpld reset altbank

 

b. Current bank:

cpld reset

 

4.2 Program TF-A binaries on NAND flash

 

1. Boot the board from the default bank.

 

2. Under U-boot prompt:

=> usb start

 

3. Flash bl2_nand.pbl to NAND flash:

 

=> fatload usb 0:1 $load_addr bl2_nand.pbl

=> nand erase 0x0 $filesize;nand write $load_addr 0x0 $filesize;

 

4. Flash fip_uboot.bin to NAND flash:

 

=> fatload usb 0:1 $load_addr fip.bin

=> nand erase 0x100000 $filesize;nand write $load_addr 0x100000 $filesize;

 

5. Reset your board:

=> cpld reset nand

 

4.3 Program TF-A binaries on SD card

 

To program TF-A binaries on an SD card, follow these steps:

 

1. Boot the board from the default bank.

 

2. Under U-boot prompt:

=> usb start

 

3. Flash bl2_sd.pbl to SD card:

=> fatload usb 0:1 $load_addr bl2_sd.pbl

=> mmc write $ load_addr 8 A1

 

4. Flash fip.bin to SD card:

=> fatload usb 0:1 $load_addr bl2_sd.pbl

=> mmc write $load_addr 800 A1

 

5. Reset your board:

=> cpld reset sd

Now the console should be out from UART2 port of the board.

Chavira_0-1698856099543.png

 

Labels (1)
%3CLINGO-SUB%20id%3D%22lingo-sub-1750421%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EHow%20to%20use%20UART2%20instead%20of%20UART1%20on%20LS1043ARDB%2FLS1046ARDB%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1750421%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EHow%20to%20use%20UART2%20instead%20of%20UART1%20on%20LS1043ARDB%2FLS1046ARDB.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E1.%20Compile%20PBL%20binary%20from%20RCW%20source%20file%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E2.%20Compile%20U-Boot%20binary%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E3.%20Compile%20TF-A%20binaries%20(bl2_.pbl%20and%20fip.bin)%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E4.%20Program%20TF-A%20binaries%20on%20specific%20boot%20mode%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E1-COMPILE%20PBL%20BINARY%20FROM%20RCW%20SOURCE%20FILE%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EYou%20have%20to%20create%20a%20new%20directory%20to%20compile%20the%20binaries%20that%20you%20need%20to%20create%20a%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3ETF-A%20binary%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EYou%20need%20to%20compile%20the%20rcw_%3CBOOT_MODE%3E.bin%20binary%20to%20build%20the%3C%2FBOOT_MODE%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Ebl2_%3CBOOT_MODE%3E.pbl%20binary.%3C%2FBOOT_MODE%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EClone%20the%20rcw%20repository%20and%20compile%20the%20PBL%20binary.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E1.%20%24%20git%20clone%20https%3A%2F%2Fgithub.com%2Fnxp-qoriq%2Frcw%0A%0A2.%20%24%20cd%20rcw%0A%0A3.%20%24%20cd%20ls1043ardb%0A%0A4.%20%24%20make%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EInside%20the%20directory%20called%20%E2%80%9CRR_FQPP_1455%E2%80%9D%20you%20can%20see%20some%20binaries%20with%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Ethe%20next%20nomenclature%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Ercw_%3CFREQ%3E.bin%3C%2FFREQ%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EWhere%20%E2%80%9Cfreq%E2%80%9D%20is%20the%20frequency%20in%20MHz%20of%20the%20processor%2C%20the%20values%20of%20the%20frequency%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Eare%201200MHz%2C%201400MHz%2C%201500MHz%2C%20and%201600MHz%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E2-COMPILE%20U-BOOT%20BINARY%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EYou%20need%20to%20compile%20the%20u-boot.bin%20binary%20to%20build%20the%20fip.bin%20binary.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EClone%20the%20U-boot%20repository%20and%20compile%20the%20U-Boot%20binary%20for%20TF-A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E1.%20%24%20git%20clone%20https%3A%2F%2Fgithub.com%2Fnxp-qoriq%2Fu-boot%0A%0A2.%20%24%20cd%20u-boot%0A%0A3.%20%24%20git%20checkout%20-b%20LSDK-21.08%20LSDK-21.08%0A%0A4.%20%24%20export%20ARCH%3Darm64%0A%0A5.%20%24%20export%20CROSS_COMPILE%3Daarch64-linux-gnu-%0A%0A6.%20%24%20make%20distclean%0A%0A7.%20%24%20nano%20configs%2Fls1043ardb_tfa_defconfig%0A%0A7.1%20change%20the%20bootargs%20%22console%3DttyS0%2C115200%22%20for%20%22console%3DttyS1%2C115200%22%0A%0A7.2%20add%20%22CONFIG_CONS_INDEX%3D2%0A%0A7.%20%24%20make%20ls1043ardb_tfa_defconfig%0A%0A8.%20%24%20make%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E3%20Compile%20TF-A%20binaries%20(bl2_.pbl%20and%20fip.bin)%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E1.%20%24%20git%20clone%20https%3A%2F%2Fgithub.com%2Fnxp-qoriq%2Fatf%0A%0A2.%20%24%20cd%20atf%0A%0A3.%20%24%20git%20checkout%20-b%20LSDK-21.08%20LSDK-21.08%0A%0A4.%20%24%20export%20ARCH%3Darm64%0A%0A5.%20%24%20export%20CROSS_COMPILE%3Daarch64-linux-gnu-%0A%0A6.%20%24%20nano%20plat%2Fnxp%2Fcommon%2Finclude%2Fdefault%2Fch_3_2%2Fsoc_default_base_addr.h%0A%0A6.1%20Change%20the%20line%20%22%23define%20NXP_UART_ADDR%200x021C0000%22%20for%20%22%23define%20NXP_UART_ADDR%200x021D0000%22%0A%0A6.2%20Change%20the%20line%20%22%23define%20NXP_UART1_ADDR%200x021D0000%22%20for%20%22%23define%20NXP_UART_ADDR%200x021C0000%22%0A%0A%20%0A7.%20%24%20nano%20plat%2Fnxp%2Fcommon%2Finclude%2Fdefault%2Fch_2%2Fsoc_default_base_addr.h%0A%0A7.1%20Change%20the%20line%20%22%23define%20NXP_UART_ADDR%200x021C0500%22%20for%20%22%23define%20NXP_UART_ADDR%200x021C0600%22%0A%0A7.2%20Change%20the%20line%20%22%23define%20NXP_UART1_ADDR%200x021C0600%22%20for%20%22%23define%20NXP_UART_ADDR%200x021C0500%22%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EThe%20compiled%20BL2%20binaries%2C%20bl2.bin%20and%20bl2_%3CBOOT%20mode%3D%22%22%3E.pbl%20are%20available%20at%3C%2FBOOT%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Eatf%2Fbuild%2Fls1043ardb%2Frelease%2F.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3ENOTE%3A%20For%20any%20update%20in%20the%20BL2%20source%20code%20or%20RCW%20binary%2C%20the%20bl2_%3CBOOT%3E%3C%2FBOOT%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Emode%26gt%3B.pbl%20binary%20needs%20to%20be%20recompiled%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E3.1%20HOW%20TO%20COMPILE%20BL2%20BINARY%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3ETo%20compile%20the%20BL2%20binary%20without%20OPTEE%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Emake%20PLAT%3D%3CPLATFORM%3E%20bl2%20BOOT_MODE%3D%3CBOOT_MODE%3E%20pbl%0A%0ARCW%3D%3CPATH_TO_RCW_BINARY%3E%2F%3CRCW_BINARY_FOR_SPECIFIC_BOOT_MODE%3E%0A%0A%20%0A%0ATo%20LS1043ARDB%20for%20SD%20boot%3A%0A%0Amake%20PLAT%3Dls1043ardb%20bl2%20BOOT_MODE%3Dsd%20pbl%0A%0ARCW%3D%3CPATH_TO_RCW_BINARY%3E%2F%3CRCW_FREQ.BIN%3E%0A%0A%20%0A%0ATo%20LS1043ARDB%20for%20NOR%20boot%3A%0A%0Amake%20PLAT%3Dls1043ardb%20bl2%20BOOT_MODE%3Dnor%20pbl%0A%0ARCW%3D%3CPATH_TO_RCW_BINARY%3E%2F%3CRCW_FREQ.BIN%3E%0A%0A%20%0A%0ATo%20LS1043ARDB%20for%20NAND%20boot%3A%0A%0Amake%20PLAT%3Dls1043ardb%20bl2%20BOOT_MODE%3Dnand%20pbl%0A%0ARCW%3D%3CPATH_TO_RCW_BINARY%3E%2F%3CRCW_FREQ.BIN%3E%3C%2FRCW_FREQ.BIN%3E%3C%2FPATH_TO_RCW_BINARY%3E%3C%2FRCW_FREQ.BIN%3E%3C%2FPATH_TO_RCW_BINARY%3E%3C%2FRCW_FREQ.BIN%3E%3C%2FPATH_TO_RCW_BINARY%3E%3C%2FRCW_BINARY_FOR_SPECIFIC_BOOT_MODE%3E%3C%2FPATH_TO_RCW_BINARY%3E%3C%2FBOOT_MODE%3E%3C%2FPLATFORM%3E%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E3.2%20HOW%20TO%20COMPILE%20FIP%20BINARY%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3ETo%20compile%20the%20FIP%20binary%20without%20OPTEE%20and%20trusted%20board%20boot%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%24make%20PLAT%3D%3CPLATFORM%3E%20fip%20BL33%3D%3CPATH_TO_U-BOOT_BINARY%3E%2Fu-boot.bin%3C%2FPATH_TO_U-BOOT_BINARY%3E%3C%2FPLATFORM%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EFor%20LS1043ARDB%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%24make%20PLAT%3Dls1043ardb%20fip%20BL33%3D%3CPATH_TO_U-BOOT_BINARY%3E%2Fu-boot.bin%3C%2FPATH_TO_U-BOOT_BINARY%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EThe%20compiled%20BL31%20and%20FIP%20binaries%20(%20bl31.bin%2C%20fip.bin%20)%20are%20available%20at%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Eatf%2Fbuild%2Fls1043ardb%2Frelease%2F.%20For%20any%20update%20in%20the%20BL31%2C%20BL32%2C%20or%20BL33%20binaries%2C%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Ethe%20fip.bin%20binary%20needs%20to%20be%20recompiled.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E4%20Program%20TF-A%20binaries%20on%20specific%20boot%20mode%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EFor%20that%20step%20you%20can%20use%20a%20tftp%20server%2C%20but%20it%20is%20easier%20with%20a%20USB%20formatted%20on%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EFAT32.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EYou%20have%20to%20put%20the%20files%20%E2%80%9C%20bl2_%3CBOOT_MODE%3E.pbl%E2%80%9D%20and%20%E2%80%9Cfip.bin%E2%80%9D%20in%20the%20usb%20and%20follow%3C%2FBOOT_MODE%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3Ethe%20steps%20to%20your%20boot%20mode.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E4.1%20Program%20TF-A%20binaries%20on%20IFC%20NOR%20flash%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3EFor%20LS1043A%2C%20the%20steps%20to%20program%20TF-A%20binaries%20on%20IFC%20NOR%20flash%20are%20as%20follows%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E1.%20Boot%20the%20board%20from%20the%20default%20bank.%0A%0A2.%20Under%20U-boot%20prompt%3A%0A%0A%3D%26gt%3B%20usb%20start%0A%0A3.%20Flash%20bl2_nor.pbl%3A%0A%0A%3D%26gt%3B%20fatload%20usb%200%3A1%20%24load_addr%20bl2_nor.pbl%0A%0A%20%0A%0Aa.%20Alternate%20bank%3A%0A%0A%3D%26gt%3B%20protect%20off%2064000000%20%2B%24filesize%20%26amp%3B%26amp%3B%20erase%2064000000%20%2B%24filesize%20%26amp%3B%26amp%3B%0A%0Acp.b%20%24load_addr%2064000000%20%24filesize%0A%0A%20%0A%0Ab.%20Current%20bank%3A%0A%0A%3D%26gt%3B%20protect%20off%2060000000%20%2B%24filesize%20%26amp%3B%26amp%3B%20erase%2060000000%20%2B%24filesize%20%26amp%3B%26amp%3B%0A%0Acp.b%20%24load_addr%2060000000%20%24filesize%0A%0A%20%0A%0A%20%0A%0A4.%20Flash%20fip.bin%3A%0A%0A%3D%26gt%3B%20fatload%20usb%200%3A1%20%24load_addr%20fip.bin%0A%0A%20%0A%0Aa.%20Alternate%20bank%3A%0A%0A%3D%26gt%3B%20protect%20off%2064100000%20%2B%24filesize%20%26amp%3B%26amp%3B%20erase%2064100000%20%2B%24filesize%20%26amp%3B%26amp%3B%0A%0Acp.b%20%24load_addr%2064100000%20%24filesize%0A%0A%20%0A%0Ab.%20Current%20bank%3A%0A%0A%3D%26gt%3B%20protect%20off%2060100000%20%2B%24filesize%20%26amp%3B%26amp%3B%20erase%2060100000%20%2B%24filesize%20%26amp%3B%26amp%3B%0A%0Acp.b%20%24load_addr%2060100000%20%24filesize%0A%0A%20%0A%0A5.%20Reset%20your%20board%3A%0A%0A%20%0A%0Aa.%20Alternate%20bank%3A%0A%0Acpld%20reset%20altbank%0A%0A%20%0A%0Ab.%20Current%20bank%3A%0A%0Acpld%20reset%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E4.2%20Program%20TF-A%20binaries%20on%20NAND%20flash%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E1.%20Boot%20the%20board%20from%20the%20default%20bank.%0A%0A%20%0A%0A2.%20Under%20U-boot%20prompt%3A%0A%0A%3D%26gt%3B%20usb%20start%0A%0A%20%0A%0A3.%20Flash%20bl2_nand.pbl%20to%20NAND%20flash%3A%0A%0A%20%0A%0A%3D%26gt%3B%20fatload%20usb%200%3A1%20%24load_addr%20bl2_nand.pbl%0A%0A%3D%26gt%3B%20nand%20erase%200x0%20%24filesize%3Bnand%20write%20%24load_addr%200x0%20%24filesize%3B%0A%0A%20%0A%0A4.%20Flash%20fip_uboot.bin%20to%20NAND%20flash%3A%0A%0A%20%0A%0A%3D%26gt%3B%20fatload%20usb%200%3A1%20%24load_addr%20fip.bin%0A%0A%3D%26gt%3B%20nand%20erase%200x100000%20%24filesize%3Bnand%20write%20%24load_addr%200x100000%20%24filesize%3B%0A%0A%20%0A%0A5.%20Reset%20your%20board%3A%0A%0A%3D%26gt%3B%20cpld%20reset%20nand%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSTRONG%3E4.3%20Program%20TF-A%20binaries%20on%20SD%20card%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3ETo%20program%20TF-A%20binaries%20on%20an%20SD%20card%2C%20follow%20these%20steps%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E1.%20Boot%20the%20board%20from%20the%20default%20bank.%0A%0A%20%0A%0A2.%20Under%20U-boot%20prompt%3A%0A%0A%3D%26gt%3B%20usb%20start%0A%0A%20%0A%0A3.%20Flash%20bl2_sd.pbl%20to%20SD%20card%3A%0A%0A%3D%26gt%3B%20fatload%20usb%200%3A1%20%24load_addr%20bl2_sd.pbl%0A%0A%3D%26gt%3B%20mmc%20write%20%24%20load_addr%208%20A1%0A%0A%20%0A%0A4.%20Flash%20fip.bin%20to%20SD%20card%3A%0A%0A%3D%26gt%3B%20fatload%20usb%200%3A1%20%24load_addr%20bl2_sd.pbl%0A%0A%3D%26gt%3B%20mmc%20write%20%24load_addr%20800%20A1%0A%0A%20%0A%0A5.%20Reset%20your%20board%3A%0A%0A%3D%26gt%3B%20cpld%20reset%20sd%0A%0A%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%20style%3D%22color%3A%20%230e101a%3B%20background%3A%20transparent%3B%20margin-top%3A%200pt%3B%20margin-bottom%3A%200pt%3B%22%3E%3CSPAN%20data-preserver-spaces%3D%22true%22%3ENow%20the%20console%20should%20be%20out%20from%20UART2%20port%20of%20the%20board.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Chavira_0-1698856099543.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Chavira_0-1698856099543.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F247944iF0011B366F097C95%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Chavira_0-1698856099543.png%22%20alt%3D%22Chavira_0-1698856099543.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%0A%3CBR%20%2F%3E%0A%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1750421%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3EQorIQ%20LS1%20Devices%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
100% helpful (2/2)
Version history
Last update:
‎11-22-2023 09:05 AM
Updated by: