linux2.6.30.4内核移植(2)——Nand Flash驱动移植
内核源码:linux2.6.30.4
交叉编译工具:3.4.5
移植linux内核至:TQ2440
工作基础:http://www.cnblogs.com/nufangrensheng/p/3669623.html
Linux内核中已经做好了Nand Flash的驱动,只需要进行适当的修改即可使用。
一、修改内核源码arch/arm/plat-s3c24xx/common-smdk.c文件:
1、修改其中的smdk_default_nand_part[]结构体(大概在109行),将其修改为如下所示:
/* arch/arm/plat-s3c24xx/common-smdk.c */
static struct mtd_partition smdk_default_nand_part[] = {
[0] = {
.name = "EmbedSky_board_uboot",
.offset = 0x00000000,
.size = 0x00040000,
},
[1] = {
.name = "EmbedSky_board_kernel",
.offset = 0x00200000,
.size = 0x00300000,
},
[2] = {
.name = "EmbedSky_board_yaffs2",
.offset = 0x00500000,
.size = MTDPART_SIZ_FULL,
}
};
2、修改其中的smdk_nand_info结构体(大概在140行)将其修改为如下所示:
/* arch/arm/plat-s3c24xx/common-smdk.c */
static struct s3c2410_platform_nand smdk_nand_info = {
141 .tacls = 10,
142 .twrph0 = 25,
143 .twrph1 = 10,
144 .nr_sets = ARRAY_SIZE(smdk_nand_sets),
145 .sets = smdk_nand_sets,
146 };
二、修改内核源码drivers/mtd/nand/s3c2410.c文件的第752行,将原来的内容修改为如下所示:
/* drivers/mtd/nand/s3c2410.c */ chip->ecc.mode = NAND_ECC_NONE; //NAND_ECC_SOFT;
三、Nand Flash驱动配置
执行make menuconfig,进入Device Drivers配置选项:







四、编译、烧写、启动,在启动信息中可以看到如下所示信息,说明Nand Flash移植成功了:

linux2.6.30.4内核移植(2)——Nand Flash驱动移植的更多相关文章
- linux2.6.30.4内核移植(3)——yaffs文件系统移植
内核源码:linux2.6.30.4 交叉编译工具:3.4.5 移植linux内核至:TQ2440 工作基础:http://www.cnblogs.com/nufangrensheng/p/36696 ...
- linux2.6.30.4内核移植(1)
内核源码:linux2.6.30.4 交叉编译工具:3.4.5 移植linux内核至:TQ2440 1.进入内核顶层目录,修改顶层Makefile,大概在193和194行,将ARCH和CROSS_CO ...
- 如何编写linux下nand flash驱动-2
[Nand Flash引脚(Pin)的说明] 图3.Nand Flash引脚功能说明 上图是常见的Nand Flash所拥有的引脚(Pin)所对应的功能,简单翻译如下: 1. I/O0 ~ ...
- linux下Pl353 NAND Flash驱动分析
linux的NAND Flash驱动位于drivers/mtd/nand子文件夹下: nand_base.c-->定义通用的nand flash基本操作函数,如读写page,可自己重写这些函数 ...
- NAND FLASH 驱动分析
NAND FLASH是一个存储芯片 那么: 这样的操作很合理"读地址A的数据,把数据B写到地址A" 问1. 原理图上NAND FLASH和S3C2440之间只有数据线, ...
- 如何编写linux下nand flash驱动-4
2. 软件方面 如果想要在Linux下编写Nand Flash驱动,那么就先要搞清楚Linux下,关于此部分的整个框架.弄明白,系统是如何管理你的nand flash的,以及,系统都帮你做 ...
- 十八、Nand Flash驱动和Nor Flash驱动
在读者学习本章之前,最好了解Nand Flash读写过程和操作,可以参考:Nand Flash裸机操作. 一开始想在本章写eMMC框架和设备驱动,但是没有找到关于eMMC设备驱动具体写法,所以本章仍继 ...
- NAND FLASH驱动框架以及程序实现
1.NAND FLASH的硬件连接: 实验用的NAND FLASH芯片为K9F2G08U0C,它是三星公司的存储芯片,它的大小为256M.它的接线图如下所示: 它的每个引脚的分别为LDATA0-LDA ...
- Smart210学习记录----nand flash驱动
[详解]如何编写Linux下Nand Flash驱动 :http://www.cnblogs.com/linux-rookie/articles/3016990.html 当读写文件请求到来的时候, ...
随机推荐
- 解决xib布局方式支持ios6,ios7
xcode5 中的界面布局 根据sdk 分成ios7.0 and Later 和 ios6.1 and Earlier 两种,那如何xib同时支持 ios6 和ios7 的界面呢 方法如下: 在xco ...
- C#+AE 判断点是否在面内的方法
整体思路:射线法. ①:先判断点的X和Y坐标和多边形的Xmin,Xmax,Ymin,Ymax的关系.若超出了这四个值,则一定在多边形外: ②:若不符合上述条件,则继续.向左做线段,线段的左顶点的X坐标 ...
- Java Swing 使用非本地字体
package reyo; import java.awt.Container; import java.awt.Font; import java.awt.FontFormatException; ...
- Spring Framework 4.1.3 还是一样给力
Spring Framework 4.1.3 发布,此版本是 4.1.x 系列的第三个维护版本,包括超过50 个 bug 修复和改进.本来是计划月末发布,但是想早些发布,配合这周要发布的 Spring ...
- [Android Security] APK自我保护 - DEX/APK校验
cp : https://segmentfault.com/a/1190000005105973 DEX校验 classes.dex 是 Android 虚拟机的可执行文件,我们所写的 java 代码 ...
- Gradle 简介
一.简介 Gradle 是 Android 现在主流的编译工具,虽然在Gradle 出现之前和之后都有对应更快的编译工具出现,但是 Gradle 的优势就在于它是亲儿子,Gradle 确实比较慢,这和 ...
- Java泛型之类型擦除
类型擦除 学过C++模板的,在使用Java泛型的时候,会感觉到有点不疑问,例如:(1)无法定义一个泛型数组.无法调用泛型参数对象中对应的方法(当然,通过extends关键字是可以做到,只是比较麻烦): ...
- golang导入包的几个说明:import
导入包: 标准包使用的是给定的短路径,如"fmt"."net/http" 自己的包,需要在工作目录(GOPATH)下指定一个目录,improt 导入包,实际上就 ...
- AsyncHttpClient的连接池使用逻辑
AsyncHttpClient的连接池结构很简单, NettyConnectionsPool内部重要的几个变量如下 // 连接池, 通过 host 区分不同的池 private final Concu ...
- bat 批处理切换到当前脚本所在文件夹
bat 批处理切换到当前脚本所在文件夹 切换到当前脚本所在的文件夹 ? 1 cd %~dp0 另外附上一些bat基本内容 —————————————————————————————— 批处理常用 ...