【RK3588】Android系统SD卡启动详解

RK3588平台Android系统SD卡启动配置。Rockchip平台默认是不支持从SD卡启动Android系统的,需要简单的配置才可支持,接下来进行说明。

测试平台:正点原子RK3588开发板(ATK-DLRK3588)

1.BootROM的启动顺序

RK3588芯片内部集成了一个BootROM,其内有固化代码,系统上电时先运行BootROM代码,然后BootROM代码会检测外设存储器并从中加载pre-loader。

RK3588的BootROM支持从如下存储器启动系统:

  • FSPI:Serial Flash(Serial Nor/Nand Flash)
  • eMMC
  • SDMMC Card
  • BootROM代码探测外设存储器的顺序如下所示:

    因为SD Card是最后探测的,所以使用SD Card启动的时候、eMMC和FSPI中不能有固件!

    2.代码修改

    在RK3588 Android12/13 SDK根目录下,打开device/rockchip/rk3588/BoardConfig.mk文件:

    vi device/rockchip/rk3588/BoardConfig.mk

    找到PRODUCT_BOOT_DEVICE变量所在行,并在其末尾增加sdmmc的节点fe2c0000.mmc,如下所示:

    修改完成后保存退出!

    执行如下命令重新编译Android源码:

    source build/envsetup.sh

    lunch ATK_DLRK3588-userdebug

    make installclean

    ./build.sh -UCKAu -J10

    编译成功后得到update.img固件,所在路径为:rockdev/Image-ATK_DLRK3588/update.img

    3.制作SD启动卡

    将Ubuntu下编译得到的update.img固件拷贝到Windows,打开瑞芯微SDDiskTool工具,该工具所在路径为:<SDK>/RKTools/windows/SDDiskTool_v1.74.zip,将其拷贝到Windows下并解压,如下所示:

    首先,将一张SD卡(选择那种高速卡)通过读卡器连接到电脑,然后双击SD_Firmware_Tool.exe可执行文件打开SDDiskTool工具,并按照下图说明操作、制作一张SD卡启动卡:

           点击“开始创建”后开始制作SD启动卡,等待其制作成功!

    SD启动卡制作成功后、将其插入RK3588开发板上电启动即可!

    作者:半曲江南

    物联沃分享整理
    物联沃-IOTWORD物联网 » 【RK3588】Android系统SD卡启动详解

    发表回复