
Linux驱动开发
文章平均质量分 94
leibniz_zsu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于MTD的NAND驱动开发(一)
○、说明 大约用了两个礼拜不到的时间为公司的IPcamera系统写了基于MTD的NAND驱动(linux-2.6.22.10内核),目前已可以在该驱动的支持下跑cramfs和jffs2文件系统,另外,该驱动也可以同时支持small page(每页512 Byte)和big page(每页2048 Byte)两种NAND芯片。在转载 2009-12-10 10:46:00 · 5541 阅读 · 1 评论 -
Linux驱动程序开发 - 设备驱动模型初探
序言从这一章开始,我们将详细的介绍Linux的设备驱动模型。Linux设备驱动模型是一个相当复杂的系统,对于初学者来说真有些无从入手。而且更加困难的是,随着新的LinuxKernel的release,Linux的设备驱动模型总会有或大或小的变化,我们将尽量展现 Linux Kernel的这种变化。早期的Linux内核(版本2.4之前)并没有实现一个统一的设备模型,设转载 2009-12-15 16:56:00 · 7515 阅读 · 0 评论 -
利用udev、sys动态创建linux设备结点
在Linux2.6内核中,devfs被认为是过时的方法,并最终被抛弃,udev取代了它。Devfs的一个很重要的特点就是可以动态创建设备结点。那我们现在如何通过udev和sys文件系统动态创建设备结点呢?下面通过一个实例,说明udev、sys动态创建设备结点的方法。注意代码中红色的部分是为了实现动态创建设备结点添加的。 #i nclude #i n转载 2009-12-14 11:08:00 · 6325 阅读 · 0 评论 -
2410下DMA驱动源码分析
首先我们由kconfig和makefile来获取DMA方面相关文件(即源码): Arch/arm/plat-s3c24xx/Dma.c Arch/arm/mach-s3c2410/Dma.c 以上两个就是操作DMA的核心文件. 我们会逐个的来分析.转载 2009-12-10 14:00:00 · 9815 阅读 · 1 评论 -
基于MTD的NAND驱动开发(完)
六、NAND驱动中的坏块管理 由于NANDFlash的现有工艺不能保证NAND的MemoryArray在其生命周期中保持性能的可靠,因此在NAND芯片出厂的时候,厂家只能保证block0不是坏块,对于其它block,则均有可能存在坏块,而且NAND芯片在使用的过程中也很容易产生坏块。因此,我们在读写NAND FLASH的时候,需要检测坏块,同转载 2009-12-10 10:50:00 · 10182 阅读 · 0 评论 -
基于MTD的NAND驱动开发(三)
五、NAND驱动中的probe函数 对于很多嵌入式Linux的外设driver来说,probe函数将是我们遇到的第一个与具体硬件打交道,同时也相对复杂的函数。而且根据我的经验,对于很多外设的driver来说,只要能成功实现probe函数,那基本上完成这个外设的driver也就成功了一多半,基于MTD的NAND driver转载 2009-12-10 10:48:00 · 10272 阅读 · 0 评论 -
基于MTD的NAND驱动开发(二)
四、基于MTD的NAND驱动架构 1、platform_device和platform_driver的定义和注册 对于我们的NAND driver,以下是一个典型的例子: static struct platform_driver caorr_nand_driver = {转载 2009-12-10 10:26:00 · 3958 阅读 · 0 评论 -
linux驱动内核模型
内核驱动模型的初衷2.6内核增加了一个引人注目的新特性——统一设备模型(devicemodel)。设备模型提供了一个独立的机制专门来表示设备,并描述其在系统中的拓扑结构,从而使得系统具有以下优点:l 代码重复最小化。l 提供诸如引用计数这样的统一机制。l 可以列举系统中所有的设备,观察它们的状转载 2009-12-10 16:36:00 · 7717 阅读 · 0 评论 -
Linux 2.6内核的设备模型
Linux 2.6内核的一个重要特色是提供了统一的内核设备模型。随着技术的不断进步,系统的拓扑结构越来越复杂,对智能电源管理、热插拔以及plug and play的支持要求也越来越高,2.4内核已经难以满足这些需求。为适应这种形势的需要,2.6内核开发了全新的设备模型。1.Sysfs文件系统Sysfs文件系统是一个类似于proc文件系统的特殊文件系统,用于将系统中的设备组织转载 2009-12-10 16:23:00 · 6239 阅读 · 0 评论 -
Linux Platform Device and Driver
作者:Dongas日期:08-06-27 从Linux 2.6起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Linux中大部分的设备驱动,都可以使用这套机制, 设备用Platform_device表示,驱动用Platform_dr转载 2009-12-10 10:55:00 · 6926 阅读 · 0 评论 -
Adding a device from a kernel module the udev way (pi, a device that prints out the value of pi)
It seems like the interface for creating modules has changed a bit, andudev is the way to go. Here is a short, quick and dirty module thatcreates /dev/pi with anonymous major and minor us转载 2009-12-16 09:09:00 · 6210 阅读 · 0 评论