uboot学习 0.1

1.为什么要有uboot

uboot的使用,和相关应用

环境变量和命令得连接

ddr和flash如何使用Uboot来管理,

Uboot是如何来引导操作系统的?

uboot是来启动操作系统内核的,操作系统无法自启动,需要uboot来帮助

典型的计算机系统有pc机,嵌入式设备有平板,游戏机,单片机设备有电视机,电饭锅

计算机系统的组成一般都是外部储存器 flash 加硬盘加cpu加内部储存器 DDR3 SRAM

PC机启动过程 bios程序部署在pc机主板上(随主板机出厂已经预置了),操作系统部署在硬盘上,内存在掉电时无工作

上电后先执行bios程序,bios程序负责初始化硬盘,初始化DDR3内存,从硬盘上读取Os镜像到DDR中,然后跳转到DDR3中去执行os直到启动。

嵌入式系统的启动过程,其实是参考pc机的,uboot程序部署在flash(能支持flash启动的cpu上),os部署在flash上,嵌入式系统中没有硬盘,用flash代替.

系统上电后先执行uboot,然后uboot来启动,负责初始化DDR,然后将os从flash中读取到ddr中,然后启动os,内核启动后,再加载根文件系统

Uboot部署内核,提供命令行给用户操作,操作flash等板子上的驱动.

2.uboot必须解决哪些问题

开机自启动,

soc的多种启动方式,Uboot的开机启动必须根据soc的启动方式来设计Uboot

start.S文件写了开机自启动这块。

uboot还可以刷机,通过fastboot

引导内核启动并给操作系统传参,我们可以在uboot中事先给LINUX内核设置一些启动参数,内核启动后会在特定位置找到相关参数并解析。这些参数将被用来指导linux内核的启动过程

soc级和板级,soc级就是soc内部外设,板级就是soc外设。

uboot的入口就是开机自启动,Uboot的唯一出口就是启动内核,启动内核以后,uboot的生命周期就结束了。uboot的本质是一个裸机程序,一般的Uboot在180k到350k之间,uboot这个裸机文件本质上是一个开源项目,配备,编译后会生成.bin文件。

uboot可以提供一个shell界面(和Linux很像,只是命令集不一样)比如说ls

Uboot启动后大部分时间和工作都是在shell下完成的,比如说输入命令,设置环境变量。
3.所以说必须得学会命令和环境变量

学习uboot中常用命令

Uboot设计时借鉴了linux的设计模式,环境变量名都是系统内置的,认识就是认识,不认识就是不认识

例如要修改一个程序的运行方法,只需要修改环境变量即可。 

bootdelay环境变量,修改延迟时间。

setenv

设置环境变量的参数 

设置命令会有特殊符号(例如单引号)

;将两个命令隔开,

movi命令族是什么意思

movi init

movi read

movi write

printenv

打印出系统所有的环境变量,不用加参数。

flash中有专门保存环境变量的分区。flash中有环境变量分区

s5p6818开发板的uboot设置

设置启动参数

setenv bootcmd "ext4load mmc 2:1 0x48000000 uImage;bootm 0x48000000"
setenv bootargs "lcd=vs070cxn tp=gslx680-linux root=/dev/mmcblk0p2 rw rootfstype=ext4"
如果用的是MIPI接口,则设置如下:
setenv bootargs "lcd=wy070ml tp=gslx680-linux root=/dev/mmcblk0p2 rw rootfstype=ext4"

设置根文件系统的路径,设置文件系统的属性为ext4,初始化lcd屏幕,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值