Boot problem with PBI

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

Boot problem with PBI

Jump to solution
2,121 Views
notshure
Contributor IV

Hello everyone.

My goal is to get my LS1043a board to boot by SD and starting the system by shutting down cores 1, 2 and 3.

Once the system is up and running, i would like to see from uboot that such cores are disabled.

To do this I have to create a custom boot via flexbuilder.

The procedure I performed is the following:

  • Change the file rcw_1600_sdboot.rcw, with the addition of the  PBI command.

  • Save the file rcw_1600_sdboot.rcw with the new changes.

  • Delete the old compiled RCW file rcw_1600_sdboot.bin from the folder located in :

/home/flex/Downloads/flexbuild_lsdk2108/components/firmware/rcw/ls1043ardb/RR_FQPP_1455

  • Go to the folder:

/home/flex/Downloads/flexbuild_lsdk2108/components/firmware/rcw

And run the linux $ make command, to compile all the RCWs

  • Delete any folders present in the following path:

/home/flex/Downloads/flexbuild_lsdk2108/build/firmware/rcw

  • Delete any folders present in the following path:

/home/flex/Downloads/flexbuild_lsdk2108/build/firmware/atf

  • Delete any files or folders present in the following path:

/home/flex/Downloads/flexbuild_lsdk2108/build/images

  • Once the old executable files are deleted, I run the following command:

flex-builder -i mkfw -m ls1043ardb-b sd

  • The output of the command generates me the following files:

firmware_ls1043ardb_sdboot.img

firmware_ls1043ardb_sdboot_secure.img

linux_LS_arm64_signature.itb

lsdk2108_yocto_tiny_LS_arm64.itb

rootfs_lsdk2108_yocto_tiny_arm64.cpio.gz

  • I write the file firmware_ls1043ardb_sdboot.img to the SD card using the following linux command:

sudo dd if=firmware_ls1043ardb_sdboot.img of=/dev/sdb1 bs=512 seek=8

I use a USB adapter to insert SD card into my PC.

I am running Ubuntu 20.04 through a virtual machine.

The writing seems to have been successful.

But when I try to boot from SD (set de DIP switches for SD boot), I don't see anything on the console.

I don't see Uboot starting.

there is something wrong with this procedure ?

Below is the link to the drive folder in which there are all the .bin files of interest and the modified RCW file

File 

0 Kudos
1 Solution
2,069 Views
ufedor
NXP Employee
NXP Employee

U-Boot is natively big-endian, so for little-endian registers it is needed to perform byte swap.

View solution in original post

0 Kudos
6 Replies
2,109 Views
ufedor
NXP Employee
NXP Employee

Are you able to prepare bootable SD card if unmodified rcw_1600_sdboot.rcw is used?

0 Kudos
2,104 Views
notshure
Contributor IV

Yes, I can generate a working SD boot in case I don't modify rcw_1600_sdboot.rcw.

0 Kudos
2,101 Views
ufedor
NXP Employee
NXP Employee

Please correct the line:

write 0x01ee0094, 0x0000000e

as follows

write 0xee0094, 0x0000000e

0 Kudos
2,081 Views
notshure
Contributor IV

Thank you for your answer.
Now the boot starts and I can see u-boot.
To be sure the cores have been disabled, I went to read the contents of the DCFG CCSR COREDISR register by running the following command on u-boot

md 0x1ee0094 1

But I read the following value 0x0e000000

I shouldn't be reading 0x0000000e

0 Kudos
2,070 Views
ufedor
NXP Employee
NXP Employee

U-Boot is natively big-endian, so for little-endian registers it is needed to perform byte swap.

0 Kudos
2,056 Views
notshure
Contributor IV

Thanks a lot for the answer.

0 Kudos