Hello everyone,
I would like to create the file "firmware_ls1043ardb_sdboot.img" which must be loaded on the SD card using a RCW modified by me.
Flex-builder works with a lot of files (RCW, U-boot,...), different for each board and compiles them all together based on the type of command launched.
The command that allows me to compile all the files for a specific board and get the ".img " is the following:
"$flex-builer -i mkfw -m ls1043ardb -b sd"
But I want to change RCW, change the working frequency and disable core (core 1, core 2, core 3 ) of the processor.
From what I seem to have understood every time I run the command, it goes to check the file
<flexbuild> / configs / board / <machine> / manifest
An excerpt from the first part of manifest:
machine="ls1043ardb"
# default RCW
rcw_nor="firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1600.bin"
rcw_nor_sec="firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1600_sben.bin"
rcw_sd="firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1600_sdboot.bin"
rcw_sd_sec="firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1600_sdboot_sben.bin"
rcw_nand="firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1600_nandboot.bin"
rcw_nand_sec="firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1600_nandboot_sben.bin"
uefi_nor="firmware/uefi/ls1043ardb/LS1043ARDB_EFI_NORBOOT.fd"
device_tree="linux/kernel/arm64/LS/fsl-ls1043a-rdb-sdk.dtb"
BOOT_TYPE="sd nor nand"
BOOTLOADER_TYPE="uboot uefi"
UBOOT_CONFIG="ls1043ardb_tfa_defconfig ls1043ardb_tfa_SECURE_BOOT_defconfig"
# RCW/PBL+BL2 image
COMPOSITE_IMG1_FILE_sd="firmware/atf/ls1043ardb/bl2_sd.pbl"
COMPOSITE_IMG1_FILE_sd_sec="firmware/atf/ls1043ardb/bl2_sd_sec.pbl"
COMPOSITE_IMG1_FILE_nor="firmware/atf/ls1043ardb/bl2_nor.pbl"
COMPOSITE_IMG1_FILE_nor_sec="firmware/atf/ls1043ardb/bl2_nor_sec.pbl"
COMPOSITE_IMG1_FILE_nand="firmware/atf/ls1043ardb/bl2_nand.pbl"
# BL33 fip image
COMPOSITE_IMG2_FILE="firmware/atf/ls1043ardb/fip_uboot.bin"
COMPOSITE_IMG2_FILE_sec="firmware/atf/ls1043ardb/fip_uboot_sec.bin"
COMPOSITE_IMG2_FILE_uefi="firmware/atf/ls1043ardb/fip_uefi.bin"
# bootloader UEFI environment variable
COMPOSITE_IMG3_FILE_uefi="firmware/uefi/ls1043ardb/LS1043ARDBNV_EFI_NORBOOT.fd"
I have to change this line rcw_sd="firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1600_sdboot.bin" to rcw_sd="firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1200_sdboot.bin" to run the board at 1.2GHz.
Not only that, inside the file rcw_1200_sdboot.bin I have to go write:
.pbi
write 0x01ee0094, 0x0000000e
.ebd
to disable cores.
the file rcw_1200_sdboot.bin is in this path:
flexbuild_lsdk2108/components/firmware/rcw/ls1043ardb/RR_FQPP_1455/rcw_1200_sdboot.bin
Once the RCW file has been modified, rerun the command $ flex-builer -i mkfw -m ls1043ardb -b sd and wait for the .img file to be generated.
Finally I insert the SD card formatted in Fat16 format
and I run the following command to load the file on the sd card:
sudo dd if=firmware_lx2160ardb_rev2_uboot_sdboot.img of=/dev/sdb bs=512 seek=8
Are the steps described up to here correct?
Solved! Go to Solution.
 yipingwang
		
			yipingwang
		
		
		
		
		
		
		
		
	
			
		
		
			
					
		These steps described by you are correct.
Hi, thanks for your reply.
Although the procedure seems right, I am having problems.
I get nothing at all (via USB console), I don't see U-Boot.
I'm doing the steps in the most standard way without editing any files. I want to get an .img file capable of starting u-boot on my ls1043a platform.
So I download flex-builder from your site:www.nxp.com/lsdk.
I perform the following steps:
$ tar xvzf flexbuild_<version>.tgz
$ cd flexbuild_<verison>
$ source setup.env
$ flex-builder -h
After that I run the command:
$ flex-builder -i mkfw -m ls1043ardb -b sd
Which after a while gives me the following outputs:
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'm only interested in: firmware_ls1043ardb_sdboot.img
I'm going to save the .img file in SD using the following 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.
I cannot understand where I am wrong. Having not changed anything, uboot should start without problems.
Probably I am wrong to write the .img file into the SD card. Is there an alternative way to write the SD card, or to verify that it was written correctly?
ok i solved the problem
Hello,
Could you please describe how you solved it? I faced with the same issue.
