linux驱动
文章平均质量分 83
dongyifengzhaowen
嵌入式。。。。就是牛!!!
展开
-
通过IO端口读取外部数据,带中断
基于FL2440开发板,内核版本2.6.28主机平台:Ubuntu 11.04 内核版本2.6.39 #include #include #include #include #include #include /*设置中断方转载 2011-10-17 18:18:50 · 1010 阅读 · 0 评论 -
ARM-Linux驱动--DMA驱动分析(一)
1、DMA的功能和工作原理这里就不多说了,可以查看s3c2440的手册2、在正式分析DMA驱动之前,我们先来看一下DMA的注册和初始化过程系统设备:(翻译自源码注释)系统设备和系统模型有点不同,它不需要动态绑定驱动,不能被探测(probe),不归结为任何的系统总线,所转载 2011-10-18 12:54:11 · 1485 阅读 · 0 评论 -
ARM-Linux驱动--DM9000网卡驱动分析(二)
下面开始分析具体的代码,这里由于使DM9000驱动更容易理解,在不影响基本的功能的前提下,这里将尽可能的简化该驱动(如:去掉该驱动中支持电源管理的功能)分析该驱动1、首先看一下该驱动的平台设备驱动的结构体定义view plaincopy to clipbo转载 2011-10-18 12:31:19 · 518 阅读 · 0 评论 -
ARM-Linux驱动--RTC(实时时钟)驱动分析 .
1、实时时钟概述实时时钟(RTC)单元可以在断电的情况下使用纽扣电池继续计时工作。RTC使用STRB/LDRB ARM操作传输二进制码十进制数的8位数据给CPU。其中的数据包括秒、分、时、日期、天、月、年的时间信息。可以执行报警功能。2、实时时钟操作下面是RTC模块的转载 2011-10-18 09:07:03 · 1107 阅读 · 0 评论 -
S3C2440上RTC时钟驱动开发实例讲解
一、开发环境主 机:VMWare--Fedora 9开发板:Mini2440--64MB Nand, Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.2二、相关概念1、平台设备:通常在Linux中,把SoC系统中集成的独立外设单元(转载 2011-10-18 08:55:28 · 718 阅读 · 0 评论 -
ARM-Linux驱动--Watch Dog Timer(看门狗)驱动分析
1、看门狗驱动的原理下图是看门狗驱动的原理图可以看出,PCLK是系统时钟,经过8位的预分频,然后再被分频(16、32、64、128)然后产生计数脉冲,进行计数,当计数器WTCNT加到0或减到0,然后产生中断,或引起系统复位。所以要隔一段时间,重置WTCNT的值,防转载 2011-10-18 09:10:59 · 1194 阅读 · 0 评论 -
ARM-Linux驱动--DM9000网卡驱动分析(四)
1、接下来接着分析DM9000网卡驱动的数据接收函数view plaincopy to clipboardprint?/* * Received a packet and pass to upper layer * 接收数据包,将数据包传递给上转载 2011-10-18 12:46:37 · 1007 阅读 · 0 评论 -
ARM-Linux驱动--DM9000网卡驱动分析(三) .
下面开始看网卡设备的打开、关闭函数和操作函数view plaincopy to clipboardprint?static const struct net_device_ops dm9000_netdev_ops = { .ndo_op转载 2011-10-18 12:39:12 · 568 阅读 · 0 评论 -
ARM-Linux驱动--DM9000网卡驱动分析(一) .
1、下图是DM9000的引脚图2、这里我们结合具体的开发板FL2440下面是FL2440和DM9000的引脚链接图本人移植DM9000的时候将设备的资源定义放在了arch/arm/plat-s3c24xx/devs.c中,详情点击上一篇博文转载 2011-10-18 09:15:07 · 691 阅读 · 0 评论 -
ARM-Linux驱动--ADC驱动(中断方式)
硬件平台:FL2440内核版本:2.6.28主机平台:Ubuntu 11.04内核版本:2.6.39这个驱动写了好久,因为原来的Linux内核编译的时候将触摸屏驱动编译进内核了,而触摸屏驱动里的ADC中断在注册的时候类型选择的是 IRQF_SAMPLE_R转载 2011-10-17 19:06:53 · 620 阅读 · 0 评论 -
Linux 驱动--ADC驱动 .
主机系统:Ubuntu 11.04内核版本:Linux Kernel 2.6.39硬件平台:FL2440开发板系统:Linux Kernel 2.6.28下面是用CPU轮寻的方式来判断AD转换完成的view plaincopy to clipboa转载 2011-10-17 18:41:29 · 858 阅读 · 0 评论 -
S3C2440上touchscreen触摸屏驱动 .
为了方便自己和广大嵌入式爱好者,这里转载自:http://hbhuanggang.cublog.cn一、开发环境主 机:VMWare--Fedora 9开发板:Mini2440--64MB Nand, Kernel:2.6.30.4编译器:arm-linux-g转载 2011-10-17 19:11:12 · 639 阅读 · 0 评论 -
控制IO端口 s3c2410_gpio_setpin()的使用 .
本文基于FL2440 ARM开发板Linux内核版本 2.6.28.7arm-linux-gcc 3.4.1 view plaincopy to clipboardprint?#include #include #inclu原创 2011-10-17 18:28:56 · 1562 阅读 · 0 评论 -
s3c2410_gpio_cfgpin函数解析
函数原型:s3c2410_gpio_cfgpin(unsigned int pin,unsigned int function)位置:/linux-2.6.32.2/arch/arm/plat-s3c24xx/gpio.c函数内容:void s3c2410_gpio_转载 2011-10-17 18:22:59 · 5434 阅读 · 0 评论 -
platform设备驱动全透析
1.1 platform总线、设备与驱动在Linux 2.6的设备驱动模型中,关心总线、设备和驱动这3个实体,总线将设备和驱动绑定。在系统每注册一个设备的时候,会寻找与之匹配的驱动;相反的,在系统每注册一个驱动的时候,会寻找与之匹配的设备,而匹配由总线完成。一个现实的Linux设备和驱动通常都需要挂接在一种总线上,对于本身依附于PCI、USB、I2 C、SPI等的设备而言,这自然不是问题,转载 2011-10-25 23:25:00 · 361 阅读 · 0 评论