技术案例 SSD å¯åŠ¨ æœ¬ç« èŠ‚ä»‹ç»å¦‚何把固件烧录到 SSD,并从 SSD å¯åŠ¨ç³»ç»Ÿã€‚ 准备工作: RK356x å¹³å° è‰¯å¥½çš„ M.2 SSD 或者 SATA SSD 良好的 Type-C æ•°æ®çº¿ 更新到最新的 Linux SDK,进入 u-boot 目录,确ä¿æœ‰ä»¥ä¸‹æ交: commit 9341129a705816604b7883313857307f248b57e5 Author: weicz <wcz@t-chip.com.cn> Date: Mon Mar 21 11:43:00 2022 +0800 configs: add firefly-rk3568-usb/pcie/sata.config Signed-off-by: weicz <wcz@t-chip.com.cn> M.2 SSD å¯åŠ¨ 1ã€è¿›å…¥ u-boot 目录,执行如下命令编译与打包引导固件: ./make.sh firefly-rk3568-pcie --spl-new 生æˆçš„固件有"rk356x_spl_loader_*.bin"与"uboot.img"。 2ã€RK356x 进入 Maskrom 模å¼ï¼ŒæŠŠå¼•å¯¼å›ºä»¶çƒ§å½•åˆ° Nor Flash(默认): Windows å¹³å°ä¸‹é€‰ä¸"Loader"ã€"Parameter"与"Uboot"并烧录: Linux å¹³å°ä¸‹çƒ§å½•"Loader"ã€"Parameter"与"Uboot": upgrade_tool ul rk356x_spl_loader_*.bin upgrade_tool di -p parameter.txt upgrade_tool di -u uboot.img 3ã€é‡å¯ RK356x,接上串å£ä¼šçœ‹åˆ°å¦‚下打å°ï¼š Bootdev: nvme 0 这说明 RK356x 在 uboot 阶段å¯ä»¥è¯†åˆ«åˆ° M.2 SSD,æ¤æ—¶å› 为 M.2 SSD 并没有 å›ºä»¶ï¼Œå› æ¤ uboot ä¼šåŠ è½½å†…æ ¸å¤±è´¥ï¼ 4ã€åœ¨ uboot shell 输入以下命令,å¯æŠŠç³»ç»Ÿå›ºä»¶çƒ§å½•åˆ° M.2 SSD: => rockusb 0 nvme 0 注æ„的是如果设备使用了 extboot,则需è¦è¿›è¡Œå–æ¶ˆï¼Œç›®å‰ M.2 SSD 在 extboot 下兼容性较差。 å–消 extboot: diff --git a/rk356x/firefly-rk3568-ubuntu.mk b/rk356x/firefly-rk3568-ubuntu.mk index 8badc34..ee1610f 100644 --- a/rk356x/firefly-rk3568-ubuntu.mk +++ b/rk356x/firefly-rk3568-ubuntu.mk @@ -18,7 +18,7 @@ export RK_IDBLOCK_UPDATE=true # update spl export RK_LOADER_UPDATE_SPL=true #Set extboot -export FF_EXTBOOT=true +export FF_EXTBOOT=false # Set rootfs type, including ext2 ext4 squashfs export RK_ROOTFS_TYPE=ext4 然åŽé‡æ–°çƒ§å½• "boot.img"。 5ã€çƒ§å½•å›ºä»¶æˆåŠŸåŽé‡å¯å³å¯æ£å¸¸å¯åŠ¨ï¼š root@firefly:~# df -h Filesystem Size Used Avail Use% Mounted on udev 3.8G 0 3.8G 0% /dev tmpfs 769M 816K 768M 1% /run /dev/nvme0n1p6 461M 363M 71M 84% /root-ro /dev/nvme0n1p7 219G 69M 219G 1% /userdata overlayroot 219G 69M 219G 1% / tmpfs 3.8G 0 3.8G 0% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup tmpfs 769M 0 769M 0% /run/user/0 å¯ä»¥çœ‹åˆ°"userdata"分区挂载的设备为"/dev/nvme0n1p7"ï¼ SATA SSD å¯åŠ¨ SATA SSD å¯åŠ¨çš„æ“作æ¥éª¤ä¸Ž M.2 SSD å¯åŠ¨ç±»ä¼¼ï¼Œä¸åŒç‚¹å¦‚下: 1ã€ç¼–译引导固件命令如下: ./make.sh firefly-rk3568-sata --spl-new 2ã€åœ¨ uboot shell 输入以下命令把系统固件烧录到 SATA SSD: => rockusb 0 scsi 0 没有贴 Nor Flash 的情况 由于 Maskrom ä¸æ”¯æŒä»Ž SSD åŠ è½½å¼•å¯¼å›ºä»¶ï¼Œå› æ¤å¦‚果没有 Nor Flash 需è¦æŠŠ 引导固件烧录到 eMMC å˜å‚¨å™¨ã€‚ 如果 eMMC å˜å‚¨å™¨æœ¬èº«æœ‰å›ºä»¶ï¼Œé‚£ä¹ˆç›´æŽ¥è¿›å…¥ Loader 模å¼çƒ§å½• rk356x_spl_loader_*.bin与uboot.imgå³å¯ï¼ 如果 eMMC å˜å‚¨å™¨æœ¬èº«æ²¡æœ‰å›ºä»¶ï¼Œé‚£ä¹ˆ Maskrom 模å¼æ˜¯é»˜è®¤çƒ§å½•åˆ° eMMC å˜å‚¨ 器的。