• Linux学习笔记5 - U-Boot概述


    1.简介

    • U-BootUniversal Bootloader简称(bootloader的一种),是一个遵循GPL条款的开源源码项目。其从FADSRROM,8xxROM,PPCBOOT逐步发展演化而来。
      其源码目录,编译形式与Linux内核极相似,事实上,不少u-boot源码就是相应的Linux内核源码程序的简化。

    2.特点

    • 开放源码
    • 支持多种嵌入式操作系内核,诸如:Linux,VxWorks等。
    • 支持多个处理器(平台)系列,诸如:PowerPC,ARM,x86,MIPS等。
    • 拥有较高的可靠性与稳定性。
    • 高度灵活的功能设置,适合U-Boot调试,OS不同引导需求和发布。
    • 拥有丰富的设备驱动源码,诸如:串口,以太网,FLASH等。
    • 较为丰富的开发调试文档和强大的网络技术支持。

    3.主要功能

    • 支持的功能列表
      • 系统引导,支持NFS挂载,RAM DISK(压缩或非压缩)形式的根文件系统。
      • 基本辅助功能,强大的操作系统接口功能,可灵活设置,传递多个关键参数给操作系统;支持目标板环境参数的多种存储方式;支持CRC32校验。
      • 设备驱动,串口,以太网,FLASHLCD等。
      • 上电自检功能,SDRAM,FLASH大小自动检测,SDRAM故障检测,CPU型号。
      • 特殊功能,XIP内核引导。

    4.U-Boot源码

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NBEuIeLP-1661840411712)(uboot%E7%9B%AE%E5%BD%95.png)]
    图片引用地址

    5.U-Boot移植步骤

    • 1.配置目标板类型(makefile文件)
    • 2.修改程序链接地址
    • 3.修改中断配置
    • 4.修改启动代码(假若是从NandFlash加载代码启动)
    • 5.修改内存配置
    • 6.添加NandFlash读函数
    • 7.NandFlash初始化函数
    • 8.修改GPIO配置
    • 9.提供NandFlash相关宏定义
    • 10.注册NandFlash设备
    • 11.设置NandFlash环境

    6.启动方式

    • 1.启动加载模式
      • 亦称"自主"模式,上电后,bootloader直接操作性同加载到RAM中运行,不需要用户介入。
        此种模式也是嵌入式产品通用(正常)模式。
    • 2.下载加载模式
      • 此模式下,设备上电后,bootloader将通过串口/网络连接等方式,将从远端设备下载文件(内核映像&根文件系统映像),文件先被bootloader保存在设备的RAM中,
        然后再被bootloader写入到FLASH等存储设备中,此种模式在系统更新时使用。

    参考文献:《Linux嵌入式应用程序开发标准教程(第2版)》

  • 相关阅读:
    树莓派开机教程
    纯CSS实现禁止网页文本被选中
    测试记录-提测规范
    沉浸式体验与 AI 数智助理一起工作的一天
    Maven高级
    12.cuBLAS开发指南中文版--cuBLAS中的Level-1函数asum()和axpy()
    探秘小米增程汽车与仿生机器人的未来:AI大模型的潜在影响及苹果iPhone15Pro发热问题解决之道
    腾讯云服务器如何重置实例密码(单台/多台)
    [C++](15)继承
    Stimulsoft Ultimate 2022.4.5 Crack
  • 原文地址:https://blog.csdn.net/weixin_43940932/article/details/126603241