Linux NAND FLASH驱动代码分析
FLASH驱动在嵌入式系统中有着举足轻重的位置,而目前市场上NAND FLASH的价格又要便宜与NOR
FLASH,随着越来越多的平台支持从NAND FLASH中启动,掌握NAND
flash的驱动编写有着重要的现实意义,由于内核已经完成了大部分的工作,实际工作中大部分工程师对NAND
FLASH驱动只是简单的修改,对其工作原理并不太清楚,下面我们来分析一下NAND FLASH的代码流程,从中体会块设备的代码之美。
在学习NAND FLASH驱动之前,我们需要对块设备中下面的重要2点有个认识:
1.gendisk: 描述块设备实体(一整个nandflash芯片)的结构体
整个块设备的注册过程都是围绕gendisk来开展的
2. add_disk() //
将一个分区信息(如/dev/mtdblock3)注册到内核列表中
下面我们来分析具体的驱动:
一、s3c2410nandflash控制器初始化步骤:
s3c2410_nand_init(&s3c2410_nand_driver)
->
driver_register->bus_add_driver()->driver_attach->bus_for_each_dev(__driver_attach)->driver_probe_device()->dev->probe()
[最后这个函数实质是s3c2410_nand_probe()]
-> s3c2410_nand_probe()
-> s3c24xx_nand_probe()
->
s3c2410_nand_inithw() // 初始化nandflash控制器
->
s3c2410_nand_init_chip()// 初始化s3c2410 nandflash驱动最底层的访问控制函数
&nb
相关文档:
最近发现在google或者baidu听mp3的时候.flash中的文字显示的全部都是乱码...很难看! 遂google了一下. 找到了解决方法. 分享一下:
sudo vi /etc/fonts/conf.d/49-sansserif.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!--
If the font still h ......
来源:http://www.laogu.com/wz_687.htm
NOR和NAND是现在市场上两种主要的非易失闪存技术。Intel于1988年首先开发出NOR flash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。紧接着,1989年,东芝公司发表了NAND flash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口轻松升级。但是经过了十多年之后 ......
在一中已经说明了在linux下配置SVN server的主要步骤,如果软件依赖没有问题的话应该已经安装成功了,下面就是配置的问题了。首先要确定subversion的两个模块是不是正确的安装到了apache下,可以在apache的一个配置文件中看到,该配置文件在apache的安装目录下 /conf/httpd.conf
在httpd.conf下面会有两行:
LoadModul ......
在进行嵌入式开发之前,首先要建立一个交叉编译环境,这是一套编译器、连接器和libc库等组成的开发环境。本文具体说明了嵌入式交叉编译环境的建立过程
和具体的操作步骤,希望能够对各位朋友搭建对应的交叉编译环境有所帮助。
一、所需软硬件环境
■ 主机环境
建立交叉编译工具链的主机环境:
Ubuntu 8.10,gcc-4.3 ......
在嵌入式平台上运行QTE时,使用的键盘通常不是标准键盘,而是嵌入式设备外扩的普通按键。那么实现QTE键盘输入的方
法大体上可以分为两类:
(1)编写一个普通按键驱动,然后开辟一个QT线程读取按键值,在通过信号把按键值发送出
去。需要接收键盘输入的目标,声明槽函数,接收键盘信号。
& ......