uboot研读笔记 | 11 - 移植uboot 2012.04到JZ2440(移植完成,制作uboot补丁)

项目开源地址:https://github.com/Mculover666/uboot-jz2440

0. 教程完整目录

  • 00 - 嵌入式Linux系统中Bootloader的作用和基本运行原理
  • 01 - 下载uboot源码并使用VSCode远程查看源码、编译uboot(2012.04.01版本)
  • 02 - 详细探索uboot启动过程(基于S3C2410处理器)
  • 03 - 初步移植uboot 2012.04到JZ2440(修改时钟,配置串口)
  • 04 - 移植uboot 2012.04到JZ2440(支持Nor Flash读写)
  • 05 - 移植uboot 2012.04到JZ2440(支持Nand Flash读写)
  • 06 - 移植uboot 2012.04到JZ2440(支持DM9000C网卡)
  • 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)
  • 08 - 移植uboot 2012.04到JZ2440(设置mtd分区表)
  • 09 - 移植uboot 2012.04到JZ2440(设置默认环境变量参数)
  • 10 - 移植uboot 2012.04到JZ2440(烧写Linux内核、烧写yaffs2文件系统)
  • 11 - 移植uboot 2012.04到JZ2440(移植完成,制作uboot补丁)

1. 为什么需要补丁

补丁文件就是通过对比当前文件和源码文件之后,得到修改内容的文件。

有了补丁文件,就可以在uboot2012.04的源码之上,直接打补丁,就会变为移植好适配JZ2440的uboot,非常方便,

在分享或者发布的时候,因为Uboot源码是统一的,所以只需要分享或者发布这个补丁文件即可。

2. 如何制作补丁

  • ①清除编译产生文件
make distclean
  • ② 对文件夹重命名
mv u-boot-2012.04.01 u-boot-2012.04.01-jz2440
  • ③ 重新解压uboot2012.04.01源码
tar -jxvf u-boot-2012.04.01.tar.bz2

  • 制作补丁(diff命令)
diff -urN <旧的文件> <新的文件> > <补丁文件名.patch>


补丁制作完成。

3. 如何打补丁(patch命令)

打补丁的命令如下:

patch -p<数字n> < <补丁文件路径和位置>

其中数字n表示,补丁文件中位置信息中,忽略前n项。

比如,这里我进入到uboot源码文件夹中,执行打补丁命令,因为已经在uboot-2012.04.01这个目录下了,所以 n = 1,表示第一级目录被忽略。

如下,打补丁成功:
uboot研读笔记 | 11 - 移植uboot 2012.04到JZ2440(移植完成,制作uboot补丁)_第1张图片

4. 测试补丁是否可用

打上补丁之后,直接编译:

make distclean
make smdk2440_config
make

编译成功:
uboot研读笔记 | 11 - 移植uboot 2012.04到JZ2440(移植完成,制作uboot补丁)_第2张图片
下载到开发板中测试,Linux启动成功:
uboot研读笔记 | 11 - 移植uboot 2012.04到JZ2440(移植完成,制作uboot补丁)_第3张图片
接收更多精彩文章及资源推送,欢迎订阅我的微信公众号:『mculover666』

你可能感兴趣的:(#,uboot研读笔记)