Linux驱动
慌慌丨张张
一个程序员、艺术家。
展开
-
LINUX之设备驱动开发概述
1)在drivers/char下编写驱动代码。 主要函数module_init:注册设备节点,创建设备module_exit:注销设备节点,删除设备fops函数:包括open、ioctl、close等驱动函数结构。 2)在drivers/char下的Kconfig文件中加入该模块并make menuconfig配置内核。 在drivers/char下的Ma原创 2013-06-19 17:43:02 · 850 阅读 · 0 评论 -
USB On-The-Go引脚 说明
USB On-The-Go 是什么 USB 接口的设备现在是随处可见了,打印机、相机、手机、MP3等几乎目前能想到的消费类电子设备都具有 USB接口。USB传输速率快,接口简单、支持热插拔的特性,使其在诸多接口中脱颖而出,大有统一天下之势。但传统的USB协议(USB2.0)限制了在 这庞大的设备群中必须有一个HOST作为主子,通常是PC。两个外设之间的数据交换必须通过这个主子中转才能转载 2013-07-18 11:57:24 · 1770 阅读 · 0 评论 -
OTG驱动分析(二)
上回介绍了OTG功能的 OTG部分驱动,本片分析OTG功能的从设备部分驱动。从设备的注册过程和OTG的一样,首先注册设备。流程是:1. 定义platform_device结构。 2. 定义platform_device下的struct resource设备资源结构 3. 定义 platform_device下的DEV设备下的平台私有数据(就是该设备私有的数据) 4. 调转载 2013-07-18 11:55:53 · 2330 阅读 · 0 评论 -
platform设备驱动全透析
1.1 platform总线、设备与驱动在Linux 2.6的设备驱动模型中,关心总线、设备和驱动这3个实体,总线将设备和驱动绑定。在系统每注册一个设备的时候,会寻找与之匹配的驱动;相反的,在系统每注册一个驱动的时候,会寻找与之匹配的设备,而匹配由总线完成。一个现实的Linux设备和驱动通常都需要挂接在一种总线上,对于本身依附于PCI、USB、I2 C、SPI等的设备而言,这自然不是问转载 2013-07-18 11:51:50 · 686 阅读 · 0 评论 -
Linux Platform Device and Driver
从Linux 2.6起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Linux中大部分的设备驱动,都可以使用这套机制, 设备用Platform_device表示,驱动用Platform_driver进行注册。 Linux platform driver机制和传统的device driver 机制(通过driver_register函数转载 2013-07-18 10:35:45 · 928 阅读 · 0 评论 -
基于MTD的NANDFLASH设备驱动底层实现原理分析
经过UBOOT初步的移植,Linux内核初步的移植,Linux内核总线设备模型的分析,等一系列痛苦的折腾,目的就是想更好的来分析下NANDFLASH的驱动。。大概一共历经了半个月的时间,慢慢的对NANDFLASH驱动程序有感觉了。。。一、MTD体系结构:Linux内核提供MTD子系统来建立FLASH针对Linux的统一、抽象接口。MTD将文件系统与底层的FLASH存储器进行隔离。转载 2013-06-21 11:12:42 · 3297 阅读 · 0 评论 -
LINUX之LCD驱动
一 实验内容简要描述1.实验目的学会驱动程序的编写方法,配置S3C2410的LCD驱动,以及在LCD屏上显示包括bmp和jpeg两种格式的图片2.实验内容 (1)分析S3c2410实验箱LCD以及LCD控制器的硬件原理,据此找出相应的硬件设置参数,参考xcale实验箱关于lcd的设置,完成s3c2410实验箱LCD的设置 (2)在LCD上显示一张BMP图片或JPEG图片3转载 2013-06-21 11:08:32 · 1337 阅读 · 0 评论 -
LINUX之GPIO驱动及接口使用
打算跟着友善之臂的《mini2440 Linux移植开发指南》 见 http://www.linuxidc.com/Linux/2011-06/37904.htm 来做个LED驱动,虽然LED的原理简单得不能再简单了,但是要把kernel中针对于s3c24**的GPIO的一些数据结构,还有函数搞清楚也不是那么轻松的事,所以本文主要简单地说明下LED驱动中的相关数据结构以及函数/宏的定义,并对驱转载 2013-06-21 10:59:32 · 7810 阅读 · 2 评论 -
LINUX之makefile与kconfig
本文章介绍了makefile跟kconfig文件,包括编译过程与makefile编码规则。 编译过程: 我们在进行linux内核配置的时候经常会执行make menuconfig这个命令,然后屏幕上会出现以下界面: 这个界面是怎么生成的呢?跟我们经常说的内核配置与与编译又有什么关系呢?下面我们借此来讲解一下linux内核的配置机制及其编译过程。一、配置系统的转载 2013-06-20 16:14:19 · 1345 阅读 · 0 评论 -
I2C驱动
本文章介绍了LINUX平台的I2C驱动及非LINUX平台的I2C驱动。 一、 I2C协议 I2C只有两条线:SDA/SCL,广泛应用在EEPROM,实时时钟,LCD设备。 开始与停止:当SCL为高电平时,SDA拉低,开始发送数据。当SCL为高电平时,SDA拉高结束传输。开始与停止信号的时序图: 数据传送:SCL线呈现高电平期间,SDA线上的电平原创 2013-06-19 18:21:34 · 1330 阅读 · 0 评论 -
USB OTG驱动分析(一)
前一段时间弄了 2 个礼拜的 OTG 驱动调试,感觉精神疲惫啊。主要原因还是自己对 OTG 功能不了解造成的。现在终于完成但是对实质原理还有些模糊。所以 自己重新总结一下。因为自己是菜鸟,所以用菜鸟的白话方式分析。高手滤过吧。 所谓 OTG 功能 就是具备该功能的设备即可当主设备(host) 去轮询别人,也可以当从设备 (device) 去被别人轮~~(双性人?)。正所谓所有的产品和功能都是因为需转载 2013-07-18 11:54:48 · 2256 阅读 · 0 评论