2.14作业

整理移植操作系统到开发板要进行的工作,具体步骤

  1. 安装tftp服务器和nfs服务器,准备需要下载到开发板文件,存放在指定下载文件夹下,准备需要挂载到开发板文件夹,存放在指定挂载文件夹中。

  2. ubuntu和开发板组网,关闭防火墙,关闭杀毒软件,配置ubuntu网络,桥接到自己网卡,选择桥接模式,开发板网络设置serverip,ipaddr,netmask,gatewayip四个参数,最后测试。

  3. 获取uboot源码,查看源码的帮助手册,确定板子的配置命令。

  4. 在uboot源码执行清除命令,配置交叉编译工具链,执行对应版本默认配置命令,再对板子的公板的设备树信息进行拷贝,修改为对应板子的信息。

  5. 在Makefile中添加板子平台的信息,回到源码目录下进行编译。

  6. 进行测试,根据提示错误信息,由于公板和板子有差异,修改对应的配置文件,最后编译。

  7. 移植网卡,修改对应设备树信息

  8. 获取tf-a源码,在源码顶层目录下,配置交叉编译工具链,在源码目录下给源码打补丁,再对板子的公板的设备树信息进行拷贝,修改为对应板子的信息。

  9. TF-A源码顶层目录下,打开Makefile.sdk文件,搜索TFA_DEVICETREE,添加板子的名称,在tf-a源码目录下,对tf-a源码进行编译。测试,根据提示错误信息,修改对应的配置文件,再编译。

  10. 获取内核源码,查看帮助文档,在linux内核源码目录下,打开Makefile文件,搜索CROSS_COMPILE,配置交叉编译工具链。在内核源码目录下,对内核源码进行打补丁,将补丁文件配置列表,打入到当前源码目录下,再对板子的公板的设备树信息进行拷贝,修改为对应板子的信息。对内核源码进行编译。测试,根据提示错误信息,修改对应的配置文件,再编译。最终生成uImage镜像文件和设备树文件。

  11. 制作根文件系统,获取源码,配置交叉编译工具链,执行make menucinfig,进入图形化界面修改相关配置,编译,根据提示错误信息,进行修改测试。产品阶段需要将根文件系统以ext4格式进行压缩打包。

  12. 开发阶段部署

  13. 在EMMC中固化uboot启动程序

  14. 开发板上电,将uboot镜像文件加载到开发板内存中

  15. uboot启动成功之后

  16. 通过tftp服务器,将uImage镜像文件和设备树文件下载到开发板内存中

  17. 下载成功之后,内核进行启动,内核启动成功之后

  18. 通过nfs服务器,将ubuntu指定的文件夹,挂载到开发板内存中

  19. 开发阶段linux操作系统启动成功。

  20. 产品阶段部署

  21. 在EMMC中固化uboot启动程序、uImage镜像文件、设备树文件、根文件系统镜像文件

  22. 开发板上电,将uboot镜像文件加载到开发板内存中

  23. uboot启动成功之后

  24. 将EMMC中对应的镜像文件读到内存中

  25. 启动内存地址

  26. 产品阶段linux操作系统启动成功。

相关推荐
D.....l14 分钟前
STM32学习(MCU控制)(DMA and ADC)
stm32·单片机·学习
编码追梦人17 分钟前
基于 STM32 的智能语音唤醒与关键词识别系统设计 —— 从硬件集成到算法实现
stm32·算法·struts
兆龙电子单片机设计8 小时前
【STM32项目开源】STM32单片机多功能饮水机系统
stm32·单片机·物联网·开源·毕业设计
m0_5557629010 小时前
STM32 的“内存划分”
stm32·单片机·嵌入式硬件
华清远见IT开放实验室10 小时前
STM32学习路线!软硬件兼修:裸机+RTOS+LVGL+硬件设计+项目实战 (STM32多核心开发板)
stm32·嵌入式·开发板·rtos·课程·软硬件·裸机开发
蓬荜生灰10 小时前
第6章—手动移植创建STM32工程
stm32·单片机·嵌入式硬件
GalaxySpaceX11 小时前
STM32-SPI协议
stm32·单片机·嵌入式硬件·1024程序员节
hazy1k12 小时前
51单片机基础-I²C通信与EEPROM读写
c语言·stm32·单片机·嵌入式硬件·51单片机·1024程序员节
无人装备硬件开发爱好者12 小时前
无人机电调芯片替换全解析:从 AM32 架构到 STM32F072、GD32E230 与 AT32F421 的实战对比
stm32·无人机·am32
小莞尔12 小时前
【51单片机】【protues仿真】基于51单片机热敏电阻数字温度计数码管系统
c语言·stm32·单片机·嵌入式硬件·物联网·51单片机