eaidk610 uboot
本次实验环境介绍下载本次实验所需文件分别为rkbin与u-bootrkbin实验–生成rk3399_loader_v1.30.130.bin//进入rkbin目录 leolinux:~/eaidk610/uboot$cdrkbin/ //查看目录内容 leolinux:~/eaidk610/uboot/rkbin$lsbin doc img LICENSE README.md RKBOOT RKBOOT.ini RKTRUST scripts specific tools //执行 boot_merger 工具生成 Loader 文件 leolinux:~/eaidk610/uboot/rkbin$ ./tools/boot_merger RKBOOT/RK3399MINIALL.ini ********boot_merger ver1.35******** Info:Pack loader ok. //执行完成后在当前目录下会生成一个类似 rk3399_loader_v*.bin 的文件 leolinux:~/eaidk610/uboot/rkbin$ls-lrk3399_loader_*.bin -rw-rw-r--1leo leo454990Aug2315:17 rk3399_loader_v1.30.130.bin leolinux:~/eaidk610/uboot/rkbin$lsbin doc img LICENSE README.md rk3399_loader_v1.30.130.bin RKBOOT RKBOOT.ini RKTRUST scripts specific tools //将它复制一份并重命名为 MiniLoaderAll.bin leolinux:~/eaidk610/uboot/rkbin$cprk3399_loader_*.bin MiniLoaderAll.bin leolinux:~/eaidk610/uboot/rkbin$lsbin doc img LICENSE MiniLoaderAll.bin README.md rk3399_loader_v1.30.130.bin RKBOOT RKBOOT.ini RKTRUST scripts specific tools编译uboot//进入uboot目录编译uboot leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$cd~/eaidk610/uboot/u-boot/ leolinux:~/eaidk610/uboot/u-boot$lsapi board cmd config.mk COPYING doc dts examples include Kconfig Licenses Makefile post scripts tools arch boot common configs disk driversenvfs Kbuild lib MAINTAINERS net READMEtest//关联rkbin leolinux:~/eaidk610/uboot/u-boot$exportBL31~/eaidk610/uboot/rkbin/bin/rk33/rk3399_bl31_v1.36.elf //关联编译器 leolinux:~/eaidk610/uboot/u-boot$exportCROSS_COMPILEaarch64-linux-gnu- //关联开发板 leolinux:~/eaidk610/uboot/u-boot$makeeaidk-610-rk3399_defconfig HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o YACC scripts/kconfig/zconf.tab.[ch]LEX scripts/kconfig/zconf.lex.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf## configuration written to .config#//开始编译中间输出过长 直截取开头与结尾 leolinux:~/eaidk610/uboot/u-boot$makescripts/kconfig/conf--syncconfigKconfig UPD include/config.h CFG u-boot.cfg GEN include/autoconf.mk GEN include/autoconf.mk.dep CFG spl/u-boot.cfg GEN spl/include/autoconf.mk CFG tpl/u-boot.cfg GEN tpl/include/autoconf.mk UPD include/config/uboot.release UPD include/generated/version_autogenerated.h UPD include/generated/timestamp_autogenerated.h UPD include/generated/dt.h ENVC include/generated/env.txt ENVP include/generated/env.in ENVT include/generated/environment.h COPY scripts/dtc/pylibfdt/libfdt.i################省略输出过程#######################AR tpl/dts/built-in.a CC tpl/fs/fs_internal.o AR tpl/fs/built-in.a LDS tpl/u-boot-spl.lds LD tpl/u-boot-tpl OBJCOPY tpl/u-boot-tpl-nodtb.binmkdir-ptpl/dts/ FDTGREP tpl/dts/dt-tpl.dtb COPY tpl/u-boot-tpl.dtb CAT tpl/u-boot-tpl-dtb.bin COPY tpl/u-boot-tpl.bin SYM tpl/u-boot-tpl.sym COPY u-boot.dtb MKIMAGE u-boot-dtb.img BINMAN .binman_stamp Imagesimple-binis missing optional external blobs but is still functional: tee-os /binman/simple-bin/fit/images/tee-SEQ/tee-os(tee-os): See the documentationforyour board. You may need to build Open Portable Trusted Execution Environment(OP-TEE)and build withTEE/path/to/tee.bin OFCHK .config leolinux:~/eaidk610/uboot/u-boot$ //查看编译后结果输出文件 leolinux:~/eaidk610/uboot/u-boot$lsapi configs generated_defconfig mkimage-in-simple-bin.mkimage-u-boot-spl spl u-boot-dtb.bin u-boot-nodtb.bin arch COPYING idbloader.img mkimage-in-simple-bin.mkimage-u-boot-tpl System.map u-boot-dtb.img u-boot-rockchip.bin binman-fake disk include nettestu-boot.dtb.out u-boot-spl.dtb.out board doc Kbuild post tools u-boot.dtb.tmpl1 u-boot.srec boot drivers Kconfig README tpl u-boot.dtb.tmpl2 u-boot.sym build dts lib scripts u-boot u-boot.img u-boot-tpl.dtb.out cmdenvLicenses simple-bin.fit.fit u-boot.bin u-boot.itb common examples MAINTAINERS simple-bin.fit.itb u-boot.cfg u-boot.lds config.mk fs Makefile烧录基于upgrade_tool工具//进入rktools的升级组件使用升级工具进行烧录 leolinux:~/eaidk610/uboot/rkbin$cd~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/ leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$lsconfig.ini revision.txt upgrade_tool 命令行开发工具使用文档.pdf leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool-HUsing /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini ---------------------Tool Usage --------------------- Help: H Version: V Log: LG ------------------Upgrade Command ------------------ ChooseDevice: CD ListDevice: LD SwitchDevice: SD UpgradeFirmware: UFFirmware[-noreset]UpgradeLoader: ULLoader[-noreset][FLASH|EMMC|SPINOR|SPINAND]DownloadImage: DI-p|-b|-k|-s|-r|-m|-u|-t|-re imageDownloadBoot: DBLoaderEraseFlash: EFLoader|firmwarePartitionList: PL WriteSN: SNserial numberReadSN: RSN ReadComLog: RCLFileCreateGPT: GPTInput ParameterOutput GptSwitchStorage: SSD SwitchUSB3: SU3 ShowFirmwareInfo: SFIFirmware[entryNo]ExtractFirmware: EXFFirmware|LoaderOutput Dir----------------Professional Command ----------------- TestDevice: TD ResetDevice: RD[subcode]ResetPipe: RP[pipe]ReadCapability: RCB ReadFlashID: RID ReadFlashInfo: RFI ReadChipInfo: RCI ReadCPUID: CPU[-out|-textout]ReadSecureMode: RSM ReadLBA: RLBeginSecSectorLen[File]WriteLBA: WLBeginSec[SizeSec]FileEraseLBA: ELBeginSecEraseCountEraseBlock: EBCSBeginBlockBlokcLen[--Force]RunSystem: RUNuboot_addrtrust_addrboot_addruboottrustboot------------------------------------------------------- //长按Maskrom按键进入对应模式 leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool LD Using /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini List of rockusb connected(1)DevNo1Vid0x2207,Pid0x330c,LocationID54ModeMaskromSerialNo//擦除开发板flash leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool EF ~/eaidk610/uboot/rkbin/MiniLoaderAll.bin Using /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini Loading loader... Start to erase flash... Download Boot Start Download Boot Success Wait For Maskrom Start Wait For Maskrom Success Test Device Start Test Device Success Get FlashInfo Start Get FlashInfo Success Erase Flash Start Erase Flash...(100%)Erase Flash Success Reset Device Start Erase flash ok. //烧录文件 leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool UL ~/eaidk610/uboot/rkbin/MiniLoaderAll.bin Using /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini Loading loader... Support Type:RK330C Loader ver:1.1e Loader Time:2026-08-2315:17:47 Start to upgrade loader... Download Boot Start Download Boot Success Wait For Maskrom Start Wait For Maskrom Success Test Device Start Test Device Success Check Chip Start Check Chip Success Get FlashInfo Start Get FlashInfo Success Prepare IDB Start Prepare IDB Success Download IDB Start Download IDB Success Upgrade loader ok. //烧录过程 //首先进行load烧录 leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool ld Using /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini List of rockusb connected(1)DevNo1Vid0x2207,Pid0x330c,LocationID54ModeMaskromSerialNoleolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool DB ~/eaidk610/build/rkbin/MiniLoaderAll.bin Using /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini Download boot ok. leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool RFI Using /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini Flash Info: Flash Size: 14910MB,value0x1d1f000 Block Size: 512KB,value1024Page Size: 2KB,value4LBA Size:1ECC Bits:0Access Time:40Flash CS:0leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool WL 0x40 ~/eaidk610/build/u-boot/idbloader.img Using /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini Start towriteidbloader.img at 0x40... Write LBA fromfile(100%)leolinux:~/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool$ ./upgrade_tool WL 0x4000 ~/eaidk610/build/u-boot/u-boot.itb Using /home/leo/eaidk610/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/config.ini Start towriteu-boot.itb at 0x4000... Write LBA fromfile(100%)//此时串口输出内容显示uboot已经更新 U-Boot TPL2026.10-rc2-00071-g6073c36b2c8d(Aug232026-12:30:24)Channel0: LPDDR3, 800MHzBW32Col10Bk8CS0Row15CS1Row15CS2DieBW16Size2048MB Channel1: LPDDR3, 800MHzBW32Col10Bk8CS0Row15CS1Row15CS2DieBW16Size2048MB 256B stride Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL2026.10-rc2-00071-g6073c36b2c8d(Aug232026-12:30:24 0800)Trying to boot from MMC1## Checking hash(es) for config config-1 ... OK## Checking hash(es) for Image atf-1 ... sha256 OK## Checking hash(es) for Image u-boot ... sha256 OK## Checking hash(es) for Image fdt-1 ... sha256 OK## Checking hash(es) for Image atf-2 ... sha256 OK## Checking hash(es) for Image atf-3 ... sha256 OKNOTICE: BL31: v1.3(release):8f40012ab NOTICE: BL31: Built:14:20:53, Feb162023NOTICE: BL31: Rockchip release version: v1.1 INFO: GICv3 with legacy support detected. ARM GICV3 driver initializedinEL3 INFO: Using opteed sec cpu_context!INFO: boot cpu mask:0INFO: plat_rockchip_pmu_init(1203): pd status 3e INFO: BL31: Initializing runtime services烧录过程基于rkdeveloptool工具烧录leolinux:~/eaidk610/build/u-boot$ rkdeveloptool db ~/eaidk610/build/rkbin/MiniLoaderAll.bin Did notfindany rockusb device, please pluginthe device. leolinux:~/eaidk610/build/u-boot$ rkdeveloptool db ~/eaidk610/build/rkbin/MiniLoaderAll.bin Downloading bootloader succeeded. leolinux:~/eaidk610/build/u-boot$ rkdeveloptool read-flash-info Flash Info: Manufacturer: SAMSUNG,value00 Flash Size:14910MB Flash Size:30535680Sectors Block Size:512KB Page Size:2KB ECC Bits:0Access Time:40Flash CS: Flash0leolinux:~/eaidk610/build/u-boot$ rkdeveloptool wl 0x40 idbloader.img Write LBA fromfile(100%)leolinux:~/eaidk610/build/u-boot$ rkdeveloptool wl 0x4000 u-boot.img Write LBA fromfile(100%)leolinux:~/eaidk610/build/u-boot$输出U-Boot TPL2026.10-rc2-00071-g6073c36b2c8d(Aug232026-12:30:24)Channel0: LPDDR3, 800MHzBW32Col10Bk8CS0Row15CS1Row15CS2DieBW16Size2048MB Channel1: LPDDR3, 800MHzBW32Col10Bk8CS0Row15CS1Row15CS2DieBW16Size2048MB 256B stride Trying to boot from BOOTROM Returning to boot ROM... U-Boot SPL2026.10-rc2-00071-g6073c36b2c8d(Aug232026-12:30:24 0800)Trying to boot from MMC1## Checking hash(es) for config conf-1 ... OK## Checking hash(es) for Image firmware-1 ... crc32 OK## Checking hash(es) for Image fdt-1 ... crc32 OKU-Boot2026.10-rc2-00071-g6073c36b2c8d(Aug232026-12:30:24 0800)SoC: Rockchip rk3399 Reset cause: POR Model: OPEN AI LAB EAIDK-610 DRAM:4GiB(total3.9GiB)PMIC: RK808 Core:309devices,28uclasses, devicetree: separate MMC: mmcfe310000:3, mmcfe320000:1, mmcfe330000:0Reading from MMC(0)... *** Warning - bad CRC, using default environment In: serialff1a0000 Out: serialff1a0000 Err: serialff1a0000 Model: OPEN AI LAB EAIDK-610 Net: eth0: ethernetfe300000 Hit any key to stop autoboot:0Scanningforbootflowsinall bootdevs Seq Method State Uclass Part Name Filename --- ----------- ------ -------- ---- ------------------------ ---------------- Scanning global bootmethefi_mgr:Card did not respond to voltage select!:-110Card did not respond to voltage select!:-110Cannot persist EFI variables without system partition0efi_mgr ready(none)0NULL** Booting bootflowNULLwith efi_mgr Loading Boot0000mmc 0failed EFI boot manager: Cannot load any image Boot failed(err-14)Scanning bootdevmmcfe320000.bootdev:Card did not respond to voltage select!:-110Card did not respond to voltage select!:-110Card did not respond to voltage select!:-110Card did not respond to voltage select!:-110Scanning bootdevmmcfe330000.bootdev:Unknown uclassnvmeinlabel Unknown uclassscsiinlabel USB EHCI1.00USB EHCI1.00USB XHCI1.10Bus usbfe380000:1USB Device(s)found Bus usbfe3c0000:1USB Device(s)found Bus usbfe900000:4USB Device(s)found Scanning bootdevethernetfe300000.bootdev:ethernetfe300000 WaitingforPHY auto negotiation to complete......... TIMEOUT!Could not initialize PHY ethernetfe300000 BOOTP broadcast1BOOTP broadcast2BOOTP broadcast3BOOTP broadcast4BOOTP broadcast5BOOTP broadcast6BOOTP broadcast7BOOTP broadcast8Retrytimeexceeded;starting again Scanning bootdevethernetfe300000.bootdev:ethernetfe300000 WaitingforPHY auto negotiation to complete......... TIMEOUT!Could not initialize PHY ethernetfe300000 BOOTP broadcast1BOOTP broadcast2BOOTP broadcast3BOOTP broadcast4BOOTP broadcast5BOOTP broadcast6BOOTP broadcast7Retrytimeexceeded;starting again Nomorebootdevs --- ----------- ------ -------- ---- ------------------------ ----------------(1bootflow,1valid)mmc list mmcfe310000:3mmcfe320000:1mmcfe330000:0(eMMC)

相关新闻