linux驱动
流浪海苔
这个作者很懒,什么都没留下…
展开
-
浅谈Linux PCI设备驱动(二)
我们在 浅谈Linux PCI设备驱动(一)中(以下简称 浅谈(一) )介绍了PCI的配置寄存器组,而Linux PCI初始化就是使用了这些寄存器来进行的。后面我们会举个例子来说明Linux PCI设备驱动的主要工作内容(不是全部内容),这里只做文字性的介绍而不会涉及具体代码的分析,因为要分析代码的话,基本就是对 Linux内核源代码情景分析(下册)第八章的解读,读者若想分析代码,可以参考该书的内转载 2014-09-15 17:38:17 · 2305 阅读 · 0 评论 -
Linux下的网络设备驱动(一)
版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学 通信与信息系统专业 研二 魏清 一.网络设备驱动基础1. 以太网基础理论以太网是局域网的一种,它使用载波监听多路访问及冲突检测技术(CSMA/CD),并以10M/S的速率运行在多种类型的电缆上,常用的网卡芯片有DM9000、D转载 2014-10-31 18:04:54 · 532 阅读 · 0 评论 -
Linux下的USB总线驱动(二)
版权所有,转载请说明转自 http://my.csdn.net/weiqing1981127 2.USB鼠标驱动 usbmouse.c下面我们分析下USB鼠标驱动,鼠标输入HID类型,其数据传输采用中断URB,鼠标端点类型为IN。好了,我们先看看这个驱动的模块加载部分。static int __init usb_mouse_init(void){转载 2014-10-31 18:01:49 · 369 阅读 · 0 评论 -
linux中断--中断下半部机制的使用 & 中断编程
中断程序一般会包含在某个设备的驱动程序中,因此,中断处理程序本质上还是一个内核模块。在上篇文章中也看到了一个简单的中断处理流程和内核模板的写法非常相似。但是那个中断是最简单的中断,没有用到中断处理的下半部的处理机制,在别的文章中也讲述了下半部的处理机制,这里简单的使用介绍下!上文中我们通过一个简单的例子分析了一个中断程序的基本结构。可以看到,中断处理程序在处理中断时起到了关键作用,转载 2014-10-31 18:16:23 · 382 阅读 · 0 评论 -
Linux下的USB总线驱动(三)
版权所有,转载请说明转自 http://my.csdn.net/weiqing19811274.U盘驱动分析USB Mass Storage是一类USB存储设备,这些设备包括USB磁盘、USB硬盘、USB磁带机、USB光驱、U盘、记忆棒、智能卡和一些USB摄像头等,这类设备由USB协议支持。首先我想去看看/driver/usb/storage/MakefileEXT转载 2014-10-31 18:02:45 · 695 阅读 · 0 评论 -
input子系统分析
一、input子系统概述在linux下,按键、触摸屏、鼠标等都可以利用input接口函数来实现设备驱动。1,linux输入子系统主要分三层: 驱动,输入CORE, 事件处理层。驱动根据CORE提供的接口,向上报告发生的按键动作。然后CORE根据驱动的类型,分派这个报告给对应的事件处理层进行处事。事件处理层把数据变化反应到设备模型的文件中(事件缓冲区)。并通知在这些设转载 2014-11-01 22:08:39 · 449 阅读 · 0 评论 -
input 子系统架构总结
原文地址:Linux 的输入子系统不仅支持鼠标、键盘等常规输入设备,而且还支持蜂鸣器、触摸屏等设备。本章将对 Linux 输入子系统进行详细的分析。一 前言 输入子系统又叫 input 子系统。其构建非常灵活,只需要调用一些简单的函数,就可以将一个输入设备的功能呈现给应用程序。转载 2014-11-01 10:16:43 · 307 阅读 · 0 评论 -
Linux下的网络设备驱动(二)
版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学 通信与信息系统专业 研二 魏清三.网络设备驱动分析我们先看看dm9000.c驱动的模块加载函数static struct platform_driver dm9000_driver = { .driver = {转载 2014-10-31 18:04:38 · 555 阅读 · 0 评论 -
linux中断--内核中断编程
前言在前面分析了中断的基本原理后,就可以写一个内核中断程序来体验以下,也可以借此程序继续深入来了解内核中断的执行过程一.内核中断程序:我们还是来看一看成程序:在看程序之前,要熟悉如何进行模块编程,和了解module_pararm()的用法。如果不熟悉的话请大家看,module_param()的学习和Linux内核模块编程,在此不作解释。1.程序interru转载 2014-10-31 18:14:38 · 425 阅读 · 0 评论 -
Linux下的platform总线驱动(一)
版权所有,转载请说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学 通信与信息系统专业 研二 魏清一.Platform设备驱动概念主要讲解平台设备驱动的模型和基本概念,同时因为驱动加载的方式有动态加载和静态加载两种方式,这里我们分别对动态加载和静态加载两种情况下,如何使用平台设备和驱动加以叙述。最后使用mini2440转载 2014-10-31 18:05:48 · 380 阅读 · 0 评论 -
linux中断--中断原理分析
前言:中断是计算机发展中一个重要的技术,它的出现很大程度上解放了CPU,提高了CPU的执行效率。在中断出现之前,CPU对IO采用的是轮询的方式进行服务,这使的CPU纠结在某一个IO上,一直在等待它的响应,如果它不响应,CPU就在原地一直的等下去。这样就导致了其他IO口也在等待CPU的服务,如果某个IO出现了important or emergency affairs,CPU也抽不出转载 2014-10-31 18:13:40 · 471 阅读 · 0 评论 -
浅谈Linux PCI设备驱动(一)
要弄清楚Linux PCI设备驱动,首先要明白,所谓的Linux PCI设备驱动实际包括Linux PCI设备驱动和设备本身驱动两部分。不知道读者理不理解这句话,本人觉得这句话很重要,对于PCI、USB这样的驱动来说,必须要理解这个概念,才能明白该如何看待Linux下的PCI和USB以及类似的总线型的驱动。理由也很简单,就是Linux PCI驱动是内核自带的,或者说内核帮你写好了!而我们需要完成的转载 2014-09-15 17:36:35 · 1313 阅读 · 0 评论 -
Linux下的platform总线驱动(二)
版权所有,转载请说明转自 http://my.csdn.net/weiqing1981127 三.平台设备驱动测试这里我们采用Mini2440开发板,编写基于平台设备的按键驱动,要求按键驱动触发方式为单边沿触发,同时要求添加设备属性项。因为这个驱动比较简单,我就不去细致分析了,如果对硬件不理解可以参考mini2440开发板数据手册,如果对软件不理解,可以参考上文平台设备的转载 2014-10-31 18:06:22 · 343 阅读 · 0 评论