Rockchip Uboot 特性简介 RK3399 RV1126 RK3588

本文详细介绍了Rockchip平台的U-Boot特性,包括KernelDTB用于外设初始化、EmmcAliases处理eMMC/SD设备、存储布局、系统复位机制、时间戳配置以及U-Boot初始化过程。
摘要由CSDN通过智能技术生成

Rockchip Uboot 特性简介

  • 本文主要介绍 RK 平台上一些重要的特性。

Kernel DTB

  • 原生的 U-Boot 只支持使用 U-Boot 自己的 DTB,RK 平台增加了 kernel DTB 机制的支持,即使用 kernel DTB 去初始化外设。主要目的是为了兼容外设板级差异,如:power、clock、display 等。
  • U-Boot DTB:负责初始化存储、打印串口等设备;
  • Kernel DTB:负责初始化存储、打印串口以外的设备;
  • U-Boot 初始化时先用 U-Boot DTB 完成存储、打印串口初始化,然后从存储上加载 Kernel DTB 并转而使用这份 DTB 继续初始化其余外设。
  • 通常对于外设的 DTS 修改,用户应该修改kernel DTB。
  • 启用 kernel DTB 机制后:编译阶段会把 U-Boot DTS 里带 u-boot,dm-pre-relocu-boot,dm-spl 属性的节点过滤出来,在此基础上再剔除 defconfig 中 CONFIG_OF_SPL_REMOVE_PROPS 指定的 property,最终生成 u-boot.dtb 文件并且追加在 u-boot.bin的末尾。
  • 默认支持并开启的平台(只列出了我使用过的芯片):rk3399,rk3399pro,rv1126,rk3588s,rk3588。
  • DTS 目录:./arch/arm/dts/

Emmc Aliases

  • U-Boot Emmc aliases 有别于 kernel DTS 里的定义。
  • eMMC/SD 在 U-Boot 中统称为 mmc 设备,使用编号 0、1 作区分。
  • SD 的启动优先级高于 eMMC。
  • 在 U-Boot 中,mmc0 表示 emmcmmc 表示 sd
  • 在 Kernel 中,mmc0 可能表示 sd,也可能表示 emmc

存储布局

  • RK linux方案的存储布局如下:
    partition

快捷键

  • RK平台提供串口组合键触发一些事件用于调试、烧写,开机时长按即可触发。

    快捷键作用
    ctrl+c进入 U-Boot 命令行模式
    ctrl+d进入 loader 烧写模式
    ctrl+b进入 maskrom 烧写模式
    ctrl+f进入 fastboot 模式
    ctrl+m打印 bidram/system 信息
    ctrl+i使能内核 initcall_debug
    ctrl+p打印 cmdline 信息
    ctrl+s"Starting kernel…"之后进入 U-Boot 命令行

SysReset

  • U-Boot的复位和kernel一样,最终需要陷入trust里完成。

Timestamp

  • Kernel的打印信息默认带有时间戳,方便用户关注时间。U-Boot 的打印信息默认没有带时间戳,用户有需要的话可以使能配置 CONFIG_BOOTSTAGE_PRINTF_TIMESTAMP

总体耗时

  • U-Boot 初始化结束默认会打印本阶段的总耗时:

    ### Booting Android Image at 0x02007800 ...
    Kernel load addr 0x02008000 size 8062 KiB
    ### Flattened Device Tree blob at 08300000
    Booting using the fdt blob at 0x8300000
    XIP Kernel Image ... OK
    Using Device Tree in place at 08300000, end 08316ed1
    Adding bank: 0x00000000 - 0x08400000 (size: 0x08400000)
    Adding bank: 0x09200000 - 0x80000000 (size: 0x76e00000)
    Total: 812.613 ms // U-Boot阶段的总耗时
    
    Starting kernel ...
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

专注的罗哈哈

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

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

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

打赏作者

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

抵扣说明:

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

余额充值