转载:http://hi.baidu.com/cui1206/item/1d4119e376132513585dd886 基于MTD的NAND驱动(linux-2.6.22.10内核),目前已可以在该驱动的支持下跑cramfs和jffs2文件系统,另外,该驱动也可以同时支持small page(每页512 Byte)和big page(每页2048 Byte)两种NAND芯片.在此整理一下与NAND驱动相关的概念,结构体,驱动框架和流程,同时分析一下基于MTD的NAND驱动的部分函数,尤其是其中…
编写基于V4L2视频驱动主要涉及到以下几个知识点:1> 摄像头方面的知识 要了解选用的摄像头的特性,包括访问控制方法.各种参数的配置方法.信号输出类型等.2> Camera解码器.控制器 如果摄像头是模拟量输出的,要熟悉解码器的配置.最后数字视频信号进入camera控制器后,还要熟悉camera控制器的操作.3> V4L2的API和数据结构 编写驱动前要熟悉应用程序访问V4L2的方法及设计到的数据结构.4> V4L2的驱动架构 最后编写出符合V4L2规范的视频驱动. 本文介绍基于S…
转自:http://blog.chinaunix.net/uid-10747583-id-298573.html Tags:V4L2驱动框架.API.操作流程…… 原文地址:http://www.eefocus.com/ayayayaya/blog/10-09/196261_9360a.html 作者:刘洪涛,华清远见嵌入式学院讲师. 编写基于V4L2视频驱动主要涉及到以下几个知识点: ●    摄像头方面的知识                要了解选用的摄像头的特性,包括访问控制方法.各种参数…
[摘要]本文以Linux 2.6.25 内核为例,分析了基于platform总线的驱动模型.首先介绍了Platform总线的基本概念,接着介绍了platform device和platform driver的定义和加载过程,分析了其与基类device 和driver的派生关系及在此过程中面向对象的设计思想.最后以ARM S3C2440中I2C控制器为例介绍了基于platform总线的驱动开发流程. [关键字]platform_bus, platform_device, resource , pl…
一.platform总线.设备与驱动 在Linux 2.6 的设备驱动模型中,关心总线.设备和驱动3个实体,总线将设备和驱动绑定.在系统每注册一个设备的时候,会寻找与之匹配的驱动:相反的,在系统每注册一个驱动的时候,会寻找与之匹配的设备,而匹配由总线完成. 一个现实的Linux设备和驱动通常都需要挂接在一种总线上,对于本身依附于PCI.USB.I2C.SPI等的设备而言,这自然不是问题,但是在嵌入式系统里面,SoC系统中集成的独立的外设控制器.挂接在SoC内存空间的外设等确不依附于此类总线.基于…
之前提到nand驱动的初始化分析,有一个结构体 struct mtd_info始终贯穿这些代码 再来分析一下这个结构体的基本功能,如何初始化,如何使用 一.分析过程 看看结构体的出现和使用方式 第一次出现在文件\u-boot-sunxi-sunxi\drivers\mtd\nand\nand.c内: #ifndef CONFIG_SYS_NAND_SELF_INIT static void nand_init_chip(int i) { struct mtd_info *mtd= &nand_i…
驱动开发读书笔记. 0.02 基于EASYARM-IMX283 怎么烧写自己裁剪的linux内核?(非所有arm9通用) 手上有一块tq2440,但是不知道什么原因,没有办法烧boot进norflash或者nandflash:只好用另一块arm9(i.mx283a)来继续学习: 从开发教程上面可知,烧写uboot和Linux是通过各种批处理脚本和exe程序来执行的,称之为固件烧写,然而并没有需要我们选择uboot路径.Linux内核和文件系统的地方.这样的话是不是意味着只能烧写官方默认提供的文件…
分享自己从代码小工一步步走向搭架子,ING... 简单了解UnitOfWork 摘要: UnitOfWorkUnit Of Work模式,即工作单元,它是一种数据访问模式.它是用来维护一个由已经被业务修改(如增加.删除和更新等)的业务对象组成的列表.它负责协调这些业务对象的持久化工作及并发问题.那它是怎么来维护的一系列业务对象组成的列表持久化工作的呢?通过事务.Unit Of Work...阅读全文 posted @ 2014-09-28 00:41 Turbo Zhang 阅读(207) |…
目录 MTD下的Nand驱动 引入 平台设备资源文件 关键数据结构 平台框架 s3c24xx_nand_probe nand_scan s3c2410_nand_add_partition add_mtd_partitions 字符设备add 块设备add 队列 程序设计 参考 平台设备文件 必备的构造结构 步骤简述 测试 内核配置去除NAND 使用nfs文件系统启动 加载驱动 分区表打印 mtd-utils 复制文件系统回来 完整程序 title: MTD下的Nand驱动 tags: linu…
前言Device Tree是一种用来描述硬件的数据结构,类似板级描述语言,起源于OpenFirmware(OF).在目前广泛使用的Linux kernel 2.6.x版本中,对于不同平台.不同硬件,往往存在着大量的不同的.移植性差的板级描述代码,以达到对这些不同平台和不同硬件特殊适配的需求.但是过多的平台.过的的不同硬件导致了这样的代码越来越多,最终引发了Linux创始人Linus的不满,以及强烈呼吁改变.Device Tree的引入给驱动适配带来了很大的方便,一套完整的Device Tree可…