Linux-使用patch命令给uboot打补丁(3)

patch:修改文件,让用户对原文件打补丁

用法  

patch -p[剥离层级]  <[补丁文件]

打补丁示例:

u-boot-1.1.6_jz2440.patach补丁文件给u-boot-1.1.6打补丁

patch -p1  <../u-boot-1.1.6_jz2440.patach 

“p”指的是被打补丁路径,后面的数字表示去掉路径的第几部分。"1",表示去掉第1个

“<”指的是u-boot-1.1.6_jz2440.patach补丁文件位置

“../”表示返回上一个目录,如下图所示,这两个文件在同一目录下,当我们在u-boot-1.1.6目录下,就需要“../”:

1.如下图,先打开u-boot-1.1.6_jz2440.patach文件查看diff比较的目录位置,发现补丁文件是以u-boot-1.1.6目录开头的

2.所以在u-boot-1.1.6目录下时,打补丁使用patch -p1  <../u-boot-1.1.6_jz2440.patach

因为补丁文件在system目录下,所以使用"../"返回到system上一目录。

因为当前已经在u-boot-1.1.6目录下,所以使用p1删除补丁文件中第一个已经重复的目录名。

3:补丁打好后,在u-boot-1.1.6目录下使用make命令开始配置工程,

3.1 make 100ask24x0_config                                    //配置100ask

3.2 make                                                                //编译工程,并生成u-boot.bin文件,如下图所示

当要取消make编译时,在编译期间输入 make clean即可

4:通过FTP将编译好的bin文件拷贝到Windows上,然后通过oflash下载在nor flash中

 补充:

Patch文件说明:

diff -urN u-boot-1.1.6/common/cmd_bootm.c u-boot-1.1.6_jz2440/common/cmd_bootm.c   //蓝色代表原文件名以及文件地址,红色代表打上补丁后的新文件名以及地址
--- u-boot-1.1.6/common/cmd_bootm.c	2006-11-02 22:15:01.000000000 +0800
+++ u-boot-1.1.6_jz2440/common/cmd_bootm.c	2010-11-26 12:54:38.150155640 +0800
                                            //--- 对文件里代码删减     +++ 对文件里代码添加
@@ -318,5 +318,5 @@                         //-318,5 表示在原文件里第318行内有删减,接下来显示5段。+318,5同样类似
                                                          //第318行,第一段
	switch (hdr->ih_comp) {                           //第319行,第二段
 	case IH_COMP_NONE:                                //第320行,第三段
-		if(ntohl(hdr->ih_load) == addr) {         //第321行,删减第四段
+		if(ntohl(hdr->ih_load) == data) {         //第322行,增加第五段

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Janti

Java中的NIO基础知识

上一篇介绍了五种NIO模型,本篇将介绍Java中的NIO类库,为学习netty做好铺垫

1153
来自专栏java 成神之路

NIO 之 Channel实现原理

45514
来自专栏java 成神之路

NIO 之 Selector实现原理

3859
来自专栏个人分享

NIO源码阅读

  自己对着源码敲一遍练习,写上注释。发现NIO编程难度好高啊。。虽然很复杂,但是NIO编程的有点还是很多:

1024
来自专栏日常分享

NIO 服务端TCP连接管理的方案

   因为服务端与客户端实现的是长连接,所以需要对客户端的连接情况进行监控,防止无效连接占用资源。

1105
来自专栏javathings

Java NIO 实现网络通信

Java NIO 的相关资料很多,对 channel,buffer,selector 如何相关概念也有详细的阐述。但是,不亲自写代码调试一遍,对这些概念的理解仍...

2572
来自专栏蓝天

基于zookeeper的主备切换方法

继承CZookeeperHelper即可快速实现主备切换: https://github.com/eyjian/mooon/blob/master/mooo...

1192
来自专栏chenssy

【死磕Netty】-----NIO基础详解

原文出处http://cmsblogs.com/ 『chenssy』 转载请注明原创出处,谢谢! Netty 是基于Java NIO 封装的网络通讯框架,只有充...

4446
来自专栏JavaEdge

Tomcat架构解析之3 Connector NIOAcceptorPollerWorkerNioSelectorPool

2764
来自专栏coolblog.xyz技术专栏

基于 Java NIO 实现简单的 HTTP 服务器

本文是上一篇文章实践篇,在上一篇文章中,我分析了选择器 Selector 的原理。本篇文章,我们来说说 Selector 的应用,如标题所示,这里我基于 Jav...

67212

扫码关注云+社区