EMMC (firmware) Boot
From ESS-WIKI
Revision as of 03:02, 15 September 2021 by William6.chen (talk | contribs)
#Linux host
#download flex-installer
wget https://www.nxp.com/lgfiles/sdk/lsdk2012/flex-installer && chmod +x flex-installer && sudo mv flex-installer /usr/bin
flex-installer -h
#download flex-builder
tar xvzf flexbuild_lsdk2012.tgz
cd flexbuild_lsdk2012/
source setup.env
flex-builder -h
#create docker container
docker run -it --name emmcboottest --privileged -v $(pwd):/home/adv/flexbuild_lsdk2012:rw fbubuntu:18.04 /bin/bash
cd home/adv/flexbuild_lsdk2012
source setup.env
#先build一次拉code
flex-builder -i mkfw -m ls1046ardb -b qspi
# clean
flex-builder clean
# 修改rcw_1800_qspiboot.rcw內容(才可以認到eMMC)
cd /home/adv/flexbuild_lsdk2012/packages/firmware/rcw/ls1046ardb/RR_FFSSPPPH_1133_5559
vim rcw_1800_qspiboot.rcw
IIC2_EXT=0
EVDD_VSEL=0
# build firmware for qspi bank4
flex-builder -i mkfw -m ls1046ardb -b qspi
# build firware for emmc
flex-builder -i mkfw -m ls1046ardb -b emmc
# exit docker container
exit
#copy image to tftp folder
cd flexbuild_lsdk2012/build/images
cp firmware_ls1046ardb_uboot_qspiboot.img /tftpboot/
cp firmware_ls1046ardb_uboot_emmcboot.img /tftpboot/
# at ls1046ardb Device COM
# firmware_ls1046ardb_uboot_qspiboot.img 燒入qspi bank4
=> cpld reset
=> setenv serverip 172.22.31.153
=> dhcp
=> ping 172.22.31.153
=> tftp $load_addr firmware_ls1046ardb_uboot_qspiboot.img
=> sf probe 0:1
=> sf erase 0 +$filesize && sf write $load_addr 0 $filesize
=> cpld reset altbank
# uboot check emmc
=> mmcinfo
=> mmc list
# boot to qspi tiny ubuntu
run qspi_bootcmd
# format emmc
flex-installer -i pf -d /dev/mmcblk0
sync
#reboot from qspi bank4
cpld reset altbank
# download firmware_ls1046ardb_uboot_emmcboot.img by tftp and install to emmc
=> setenv serverip 172.22.31.153
=>dhcp
=> ping 172.22.31.153
=>tftp $load_addr firmware_ls1046ardb_uboot_emmcboot.img
=>load mmc 0:2 $load_addr firmware_ls1046ardb_uboot_emmcboot.img
=>mmc dev 1;mmc write $load_addr 8 1fff8
#power off set switch to SD boot
#power on