uboot
文章平均质量分 84
dz小伟
dz小伟
展开
-
uboot环境变量和硬件驱动
ENV_SIZE环境变量最大内存,10k二、printenv命令原创 2022-10-27 19:54:14 · 988 阅读 · 0 评论 -
uboot命令体系
uboot管理方式是:通过自定义段,实现。管理方式:数组,链表等。原创 2022-10-17 18:22:14 · 707 阅读 · 0 评论 -
uboot(五)—— main_loop
此函数会执行参数 s 指定的一系列命令,也就是环境变量 bootcmd 的命令。位置:u-boot-2022.01/common/main.c 40行。原创 2022-10-12 12:41:16 · 838 阅读 · 0 评论 -
uboot(四)—— board_init_r
清bss段,然后执行board_init_r/** Clear BSS section ,清除bss段*/*/*/#endif。原创 2022-10-08 20:12:38 · 1007 阅读 · 0 评论 -
uboot(三)—— crt0_64.S(relocate_code)
位置u-boot-2022.01\arch\arm\lib\crt0_64.S。调用relocate_code实现重定位。的加载提供内存,避免内存践踏。搬运到高端内存区,为。原创 2022-10-08 20:02:41 · 434 阅读 · 0 评论 -
uboot(二)—— crt0_64.S(board_init_f函数)
board_init_f 在u-boot-2022.01\common\board_f.c。board_init_f_alloc_reserve:最终算出gd的内存地址,top指向。文件位置:u-boot-2022.01/arch/arm/lib/crt0_64.S。board_init_f_init_reserve:实例化gd,并初始化为0。现在我们已经映射了DRAM并开始工作,我们可以重新定位代码并继续从DRAM运行。串口、定时器、设备树、malloc、cpu、DM驱动模型、dram、原创 2022-10-03 19:44:03 · 1254 阅读 · 0 评论 -
uboot(一)—— start.S
进行地址无关的相对地址修复,以此保证后续在跳入c语言部分时可正常执行,一般不定义此配置则是继续往下执行boot流程。3.位置在 u-boot-2022.01/arch/arm/cpu/armv8/start.S。1.uboot编译完成后有一个uboot-boot.lds链接器文件。2.打开里面有一个ENYRY(_start),符号所在的文件就是整个程序的起始文件。对一些系统寄存器进行初始化。原创 2022-09-30 20:12:15 · 1057 阅读 · 1 评论 -
Makefile
定义和使用变量,和shell一样都没有变量类型,直接定义使用,引用变量时用$(var)原创 2022-09-16 16:49:59 · 243 阅读 · 1 评论 -
shell脚本
shell脚本其实是一类语言而不是一个语言。常用shell语言:sh、bash、csh、ksh、perl、python等脚本语言一般在嵌入式中应用,主要是用来做配置解释运行shell解析器会逐行的解释shell程序代码,然后一行一行的去运行。(顺序结构)shell是弱类型语言(语言中的变量如果有明确的类型则属于强类型语言;变量没有明确类型就是弱类型语言)shell中赋值的=两边是不能有空格的引用一个变量必须使用$符号,$符号就是变量解引用符号变量引用的时候可以$var,原创 2022-09-16 12:30:10 · 354 阅读 · 0 评论 -
树莓派uboot配置编译
OS跑起来前,需要的一段引导程序负责部署整个计算机系统,引导操作系统内核启动并给内核传参提供一个命令行界面供人操作是一个开源项目,uboot就是universal bootloader(通用的启动代码)命令行用的行缓存,linux终端设计有3种缓冲机制:无缓冲、行缓冲、全缓冲。原创 2022-09-27 16:47:15 · 1776 阅读 · 0 评论