u-boot移植(十三)---代码修改---支持文件系统及补丁制作

一、烧写文件系统

1.1 jffs2烧写

  1.下载文件系统:tftp 30000000 fs_mini_mdev.jffs2

  

  2.擦除文件的块:nand erase.part rootfs

  

  3.烧入文件系统:nand write.jffs2 30000000 0x00260000 5b89a8

  

  4.设置启动参数:set bootargs console=ttySAC0 root=/dev/mtdblock3 rootfstype=jffs2

  

  5.重新启动

  

  这个需要先烧写内核。

1.2 yaffs烧写

  1.下载文件系统:tftp 30000000 fs_mini_mdev.yaffs2

  

  2.擦除文件的块:nand erase.part rootfs

  

  3.烧入文件系统:nand write.yaffs 30000000 0x00260000 889bc0

  

  报错,不认识 .yaffs 的后缀。

  进入 cmd_nand.c文件中,查找 yaffs关键字,找不到yaffs的支持。

  里面有个 nand_help_text 数组,这里定义了 nand 的一些命令:

  

  我们可以根据这里的宏定义下的写法,加上我们对yaffs的支持。

  

  在CONFIG_CMD_NAND_TRIMFFS 后加上下面的语句:

  

  在include/configs/jz2440.h中加入:

  

  在include/nand.h中添加:

  

  在Nand_util.c (drivers\mtd\nand) 中添加,nand_write_skip_bad函数中修改;

  

  第二个修改地方;

  

  else 的结束括号在这里;

  

  改完后,编译烧写,测试一下:

  

  启动完成后,开始上面的制作:

  1.下载文件系统:tftp 30000000 fs_mini_mdev.yaffs2

  

  2.擦除文件的块:nand erase.part rootfs

  

  3.烧入文件系统:nand write.yaffs 30000000 0x00260000 889bc0

  

  4 启动测试

  

  没烧写内核 就不验证了

二、补丁制作

  1.清除配置

  

  2.重命名u-boot

  

  3.解压原来的u-boot

  

  4.生成补丁文件:

  

  

  

  

时间: 06-26

u-boot移植(十三)---代码修改---支持文件系统及补丁制作的相关文章

u-boot移植(十二)---代码修改---支持DM9000网卡

一.准备工作 1.1 原理图 CONFIG_DM9000_BASE 片选信号是接在nGCS4引脚,若要确定网卡的基地址,则要根据片选信号的接口去确定. 在三星2440的DATASHEET中memory control这一章的Figure 5-1. S3C2440A Memory Map after Reset 已经说明了片选4的地址,如下: 只要发出的信号在 0x20000000--0x28000000 之间,就会使得片选4引脚变为低电平.所以可以确定我们网卡的基地址为0x20000000. C

嵌入式 Linux根文件系统移植(一)——Linux文件系统简介

嵌入式 Linux根文件系统移植(一)--Linux文件系统简介 本文对文件系统分析的代码来源于linux 2.6.35.7版本. 一.文件系统的体系结构 文件系统是对存储设备上的数据和元数据进行组织的机制,便于用户和操作系统的交互.Linux支持多种文件系统,文件系统接口实现为分层的体系结构,将用户接口层.文件系统实现和操作存储设备的驱动程序分隔开.Linux文件系统的体系结构如下: 用户空间包含一些应用程序(例如,文件系统的使用者)和 GNU C库(glibc),为文件系统调用(打开.读取.

Spring Boot如何让某个Controller支持跨源请求,以及如何让Controller类某个成员方法支持跨源请求

在前面我们已经讨论了Spring Boot 如何全局支持跨源请求.如果你想了解可以查看这篇文章 下面我们讨论另一种场景.有些时候,你需要让你的应用在大部分的时候,仅仅支持当前域名下的请求.而仅仅在极其特殊的几个场合下,才支持跨源请求.这个时候,你需要把跨源请求仅仅缩小在几个Controller上,或者Controller类的几个成员方法上.这个时候你需要用到如下的注解:@CrossOrigin(origins = "*", maxAge = 3600) .把这个注解放到 Control

am335x UART1输入u-boot 调试信息代码修改

AM335x 调试信息UART1输出代码修改1. 关于pin_mux  的配置代码修改位置:/board/forlinx/ok335x/mux.c 1 void enable_uart0_pin_mux(void) 2 { 3 configure_module_pin_mux(uart0_pin_mux_spl); 4 configure_module_pin_mux(uart1_pin_mux); 5 } 6 将这行代码打开. 代码跟踪流程:arch/arm/cpu/armv7/start.S

在使用shape的同时,用代码修改shape的颜色属性

Android里面经常会使用shape来定制一些View的背景 可以修改View的背景颜色,形状等属性 一般情况下,shape都是在xml文件里面写死了,今天遇到一个需求,View的形状是圆角的,但是颜色是在代码里面设置的 最开始的思路是先在代码里给View设置颜色,再在shape里面设置solid属性为透明色 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="htt

一次js代码修改不更新问题的解决

今天遇到一个问题,虽说问题不大,但弄得本人脑袋发麻 我讲javascript修改后,刷新页面或者清除浏览器缓存,修改后的效果也不出现,害的我好苦啊 最后想到自己是新装的机子是不是是浏览器设置的原因 按以下方式完美解决 这应该是开发人员必须设置的 一次js代码修改不更新问题的解决,布布扣,bubuko.com

代码就支持了多线程并发

100行代码就支持了多线程并发,批量写入日志 一,您选择用什么样的日志组件 日志组件,不得不提大名鼎鼎的Log4Net.比较常用的还有 Enterprise Library Logging,ServiceStack Logging.当然您还可以补充,我就只用过这几款. 上边提到的3款日志组件,都要在.config里加代码,特别是Log4Net,还要把SQL写在配置里.我就是仅仅只写个日志,还要配置这么多信息,让人略有不爽. 所以在很长一段时间里,我用下边这个方法写日志:   这个方法足够的简单,

钩取API之代码修改方法【一】

IAT方式就不去花精力了,加了壳的程序用这方法压根用不上. 就熟悉一下代码修改方法.书上用的是隐藏进程的实例 第一种办法 一,枚举进程,给所有进程加载DLL[用远程线程注入] 二,传入需要隐藏的进程名 三,判断有没有修改过需要钩取的函数,如果还没有修改过就改掉,跳向自己的函数,同时保存好原来的值 四,在自己的替代函数里将原来的值修改回去,并再执行一次,执行完做相关处理 五,在自己的替代函数最后再钩取函数,修改跳转到替代函数 基本逻辑就是这样,像是移花接木啊... DLL代码: #define S

linux4.10.8 内核移植(二)---初步裁剪、分区修改和文件系统

一.初步裁剪 在内核根目录下 执行: make menuconfig 1.1 system type裁剪 选择 SAMSUNG S3C24XX SoCs Support 进入其中,这里是配置我们的单板,取消与2440无关的配置: 1.2 文件系统裁剪 以模块加入的可以保留,其他的看情况进行裁剪. 1.3 device driver裁剪 里面有些驱动不是我们所需要的,我们的目标板根本不支持那些的功能就可以裁剪掉: 1.3.1 Network device support USB适配器我们并不支持,