linux驱动编程配置----(二)

上次提到启动uboot的步骤,那么接下来需要启动linux内核以及挂载根文件系统

1.linux内核启动

u-boot提供了常用的网络协议,接下来我们用的最多的就是tftp协议。因为我们需要通过该协议从电脑上下载linux内核程序,但是要使用tftp,就需要我们配置好网络相关的环境变量。

他们包括: 1. netmask子网掩码 2. ethaddr 以太网mac地址 3. serverip tftp服务器ip地址 4. ipaddr mini2440ip地址

在minicom中修改键值对

printenv查看键值对

setenv修改

1

1.安装tftp

事实上之后在开发阶段,我们都是通过tftp把linux内核下载到开发板的内存中,在引导linux启动的。

之所以这么做的目的是之后的驱动开发修改linux源码或者重新编译了Linux源码都需要重新把Linux烧写到nand-flash中去过于费时费力了。通常的做法是开发调试阶段就是通过tftp下载

Linux内核,等一起调试停当,再固化到nand-flash中。

先在服务器上tftp服务目录中创建一个文件,然后再在开发板上用tftp命令现在这个文件,如:tftp 0x30008000 1.txt,将1.txt文件下载到开发板sdram地址为0x30008000处。

u-boot是一种引导程序,不要忘记我们最终的目的是要启动linux系统。既然u-boot可以使用tftp来下载任意文件,那么就可以使用tftp下载编译好的linux内核文件到mini2440中,并让

mini2440引导linux系统。

1。 复制已经编译好的linux内核文件uImage到tftp根目录,如何

编译出这个文件是之后我们要学习的重点;

  1. 用tftp命令下载这个文件到开发板:tftp 0x30008000 uImage;

  2. 下载完成后使使用u-boot命令bootm 0x30008000启动linux操作

2.根文件系统

config配置文件

相关推荐
可可嘻嘻大老虎1 天前
nginx无法访问后端服务问题
运维·nginx
JiMoKuangXiangQu1 天前
ARM64 进程虚拟地址空间布局
linux·arm64 虚拟地址布局
阳光九叶草LXGZXJ1 天前
达梦数据库-学习-47-DmDrs控制台命令(LSN、启停、装载)
linux·运维·数据库·sql·学习
无忧智库1 天前
某市“十五五“地下综合管廊智能化运维管理平台建设全案解析:从数字孪生到信创适配的深度实践(WORD)
运维·智慧城市
CQ_YM1 天前
ARM之I2C
arm开发·单片机·嵌入式硬件·嵌入式
春日见1 天前
如何避免代码冲突,拉取分支
linux·人工智能·算法·机器学习·自动驾驶
珠海西格1 天前
“主动预防” vs “事后补救”:分布式光伏防逆流技术的代际革命,西格电力给出标准答案
大数据·运维·服务器·分布式·云计算·能源
无垠的广袤1 天前
【VisionFive 2 Lite 单板计算机】边缘AI视觉应用部署:缺陷检测
linux·人工智能·python·opencv·开发板
阿波罗尼亚1 天前
Kubectl 命令记录
linux·运维·服务器
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.1 天前
Keepalived单播模式配置与实战指南
linux·服务器·负载均衡