Rockchip RK3588 SD卡启动

本文介绍Rockchip RK3588的SD卡启动方法。先阐述RK3588的BOOTROM流程,包括上电运行代码、探测外设存储器加载Loader代码及启动接口和探测顺序。接着说明软件修改,如kernel和Android的配置。最后介绍制作SD卡启动卡的要求、工具及操作,制成后插入机器开机即可。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Rockchip RK3588 SD卡启动

RK3588的BOOTROM 流程

RK3588 内部都有集成一个 BOOTROM,系统上电时先会运行 BOOTROM 代码,然后 BOOTROM 代码会探测外设存储器并加载 Loader 代码。
RK3588的bootrom支持从如下接口启动系统

  • SPI interface
  • eMMC interface
  • SD/MMC interface
    BOOTROM 探测外设存储器的顺序不同,具体顺序如下,从左到右:
SPI NOR
eMMC
SD CARD

因为SD card是最后探测的,所以在SD card启动的时候eEMMC或者SPI NOR中不能有固件

软件修改

  • kernel
    dts里面的sdmmc节点下加入supports-emmc;字段,此配置标识此插槽为 emmc 功能,为必须添加项。否则无法初始化 emmc 外设。
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-evb1-lp4x.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s-evb1-lp4x.dtsi
index 5a93b3fa949c0..dd3a5aab7853b 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588s-evb1-lp4x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588s-evb1-lp4x.dtsi
@@ -647,6 +647,7 @@
 };
 
 &sdmmc {
+       supports-emmc;
        status = "okay";
 };
  • Android
    在device下面的配置PRODUCT_BOOT_DEVICE,增加sdmmc的节点fe2c0000.mmc,不同芯片平台这个节点不一样,可以在芯片的dtsi里面查看
@sys2_206:~/4_Android12_29_sdk$ cd device/rockchip/rk3588/
diff --git a/BoardConfig.mk b/BoardConfig.mk
index 71d04b0..525bf1a 100644
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -25,7 +25,7 @@ PRODUCT_KERNEL_CONFIG ?= rockchip_defconfig pcie_wifi.config
 
 #BOARD_AVB_ENABLE := true
 # used for fstab_generator, sdmmc controller address
-PRODUCT_BOOT_DEVICE := fe2e0000.mmc
+PRODUCT_BOOT_DEVICE := fe2e0000.mmc,fe2c0000.mmc

改完编译update.img

制作SD卡启动卡

  • SD卡要用高速的卡
  • 工具:瑞芯微创建省级磁盘工具
  • 工具版本:V1.69
  • 工具地址在SDK的如下路径:
RKTools\windows\SDDiskTool_v1.69.zip

制作过程按下图说明操作
在这里插入图片描述
制作成功后将SD卡插入RK3588的机器上开机启动即可

### RK3588 Android TV 开发和配置教程 #### 一、环境准备 对于RK3588芯片组的Android TV开发,首要条件是准备好合适的硬件与软件资源。确保拥有RK3588开发板以及相应的电源适配器等配件[^2]。 #### 二、获取源码及编译工具链 访问官方提供的资料库或社区论坛来获得针对RK3588优化过的Android操作系统源代码包。同时安装必要的构建工具如AOSP Build Tools, JDK等,并设置好PATH变量以便后续操作能够顺利执行。 #### 三、编译过程概述 利用预先搭建好的Linux服务器作为主要工作节点,在此之上按照标准流程完成整个系统的编译任务。具体步骤涉及初始化仓库、同步最新变更记录、设定目标产品参数等一系列指令调用;最终通过`make -j$(nproc)`命令启动多线程编译作业以加速产出效率。 #### 四、烧录镜像至存储介质 当成功生成完整的固件文件之后,则需借助特定的应用程序(例如PhoenixCard)将其写入到MicroSD或其他形式的大容量闪存装置内。值得注意的是,某些情况下可能还需要额外制作bootloader分区映像才能保证设备可以稳定启动进入新刷写的OS环境中去。 #### 五、初步测试与调试 一旦上述准备工作全部就绪,就可以尝试开机检验基本功能是否正常运作了——比如LED指示灯应能依照预期规律闪烁变化。如果遇到任何异常状况务必及时查阅日志输出寻找线索并加以修正。 ```bash adb logcat | grep "ERROR" ``` #### 六、深入定制化调整 随着项目的推进,开发者往往希望能够进一步增强用户体验或是集成更多特色服务进来。此时便涉及到诸如修改框架层API接口定义、引入第三方SDK组件乃至重新设计UI界面布局等方面的工作内容。这些改动通常需要密切配合Google发布的文档指南来进行实施。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

loitawu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值