[RK3399][Android7.1] Uboot启动过程小结

本文详细介绍了RK3399平台Uboot v2017.02的启动过程,从board_init_f到board_init_r的各个阶段,涉及环境变量初始化、CPU设置、DRAM配置、存储初始化、分区加载、电源管理等多个环节,最后进入kernel。

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

OS: Android 7.1 
Board: Firefly-RK3399

Uboot: v2017.02


整个过程和rk3288平台的uboot(v2014.10)加载流程类似,可参考
[RK3288][Android6.0] U-boot 启动流程小结

bl board_init_f -> crt0_64.S //初始化环境安装
  board_init_f -> board_f.c
    initcall_run_list -> //依次运行init_sequence_f数组中的函数
      setup_fdt //如果有的话,允许环境变量fdtcontroladdr地址中的dts覆盖系统的那份
      arch_cpu_init  -> cpu.c
        rkclk_set_pll //设置pll
        rk_get_chiptype //获取chip type,当前是CONFIG_RK3399
      env_init env_rk.c //环境变量初始化, 使用那个env_rk.c的编译由CONFIG_ENV_IS_IN_RK_STORAGE控制打开
      ini

评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值