Linux驱动
yedushu
这个作者很懒,什么都没留下…
展开
-
git相关资料
搭建私有代码管理平台(Gitlab)和自动化部署平台(Jenkins)https://my.oschina.net/u/3375733/blog/1812886GitLab 与 Gerrit对比https://blog.csdn.net/bjstyle/article/details/79107086CI持续集成介绍https://www.jianshu.com/p/61b5b549d21...原创 2019-10-11 23:04:58 · 96 阅读 · 0 评论 -
linux驱动学习(八) i2c驱动架构(史上最全) davinc dm368 i2c驱动分析
转载http://blog.csdn.net/ghostyu/article/details/8094049预备知识在阅读本文最好先熟悉一种i2c设备的驱动程序,并且浏览一下i2c-core.c以及芯片提供商的提供的i2c总线驱动(i2c-davinci.c)。标题党请见谅!其实i2c接口非常的简单,即使用51单片的gpio来模拟i2c,编写一个e2prom或者其他i2c接转载 2017-07-05 10:24:40 · 439 阅读 · 0 评论 -
Linux中tty框架与uart框架之间的调用关系剖析
http://www.cnblogs.com/aaronLinux/p/5582338.html转载 2017-07-05 16:37:15 · 322 阅读 · 0 评论 -
Linux串口(serial、uart)驱动程序设计
一、核心数据结构 串口驱动有3个核心数据结构,它们都定义在 1.uart_driver uart_driver包含了串口设备名、串口驱动名、主次设备号、串口控制台(可选)等信息,还封装了tty_driver(底层串口驱动无需关心tty_driver)。struct uart_driver { struct module *owner; /* 拥有转载 2017-07-07 16:57:40 · 695 阅读 · 0 评论 -
Linux LCD驱动(一)——硬件分析和FrameBuffer
一、开发环境主 机:VMWare--Fedora 9开发板:TQ2440--64MB Nand, Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.3二、背景知识1. LCD工作的硬件需求: 要使一块LCD正常的显示文字或图像,不仅需要LCD驱动器,而且还需要相应的LCD控制器。在通常情况下,生产厂商把LCD驱动器会以COF/COG转载 2017-07-09 16:59:18 · 490 阅读 · 0 评论 -
Linux下的帧缓冲lcd应用编程及Framebuffer驱动程序模型
一、Linux的帧缓冲设备帧缓冲(framebuffer)是 Linux 为显示设备提供的一个接口,把显存抽象后的一种设备,他允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。这种操作是抽象的,统一的。用户不必关心物理显存的位置、换页机制等等具体细节。这些都是由Framebuffer 设备驱动来完成的。帧缓冲驱动的应用广泛,在 linux 的桌面系统中,Xwindow 服务器就是利转载 2017-07-09 22:22:21 · 557 阅读 · 0 评论 -
linux帧缓冲(framebuffer)驱动
一、FrameBuffer的原理FrameBuffer 是出现在 2.2.xx 内核当中的一种驱动程序接口。 Linux是工作在保护模式下,所以用户态进程是无法象DOS那样使用显卡BIOS里提供的中断调用来实现直接写屏,Linux抽象出FrameBuffer这个设备来供用户态进程实现直接写屏。Framebuffer机制模仿显卡的功能,将显卡硬件结构抽象掉,可以转载 2017-07-09 22:42:19 · 1177 阅读 · 0 评论 -
SD/MMC 中的scatterlist
今天下午闲下来了,想想还是给EVB增加一下SD/MMC的驱动吧。SD/MMC的官方文档很少,也没有啥书写到这个问题,听说华清远见的宋宝华老师的新一版《Linux驱动开发》会讲这个问题。不过Linux最大的优点就是开源,大家都可以研究,网上也有人写了2410、2440的相关分析文章了,大家都有转载,比如以下网址的一篇:http://blog.chinaunix.net/u3/106866/showa...转载 2018-05-16 23:52:02 · 152 阅读 · 0 评论 -
Linux kernel scatterlist API介绍
Linux kernel scatterlist API介绍作者:wowo 发布于:2017-10-13 22:20 分类:内存管理1. 前言我们在那些需要和用户空间交互大量数据的子系统(例如MMC[1]、Video、Audio等)中,经常看到scatterlist的影子。对我们这些“非英语母语”的人来说,初见这个词汇,脑袋瞬间就蒙圈了。scatter可翻译成“散开、分散”,list是“列表”的意...转载 2018-05-17 00:04:23 · 890 阅读 · 0 评论 -
SD/eMMC驱动详解
声明:此原创非彼原创,资料来源于网络,只是经过加工整理罢了。如果引用了你的资料并没有说明出处,敬请原谅!仅供学习参考。1. 总论 1.1 概念MMC - MultiMedia CardSD - Secure Digital Card1.2 分类按存储大小,普通SD卡(<=2GB,支持FAT12/FAT16),HCSD卡(>2GB,<=32GB,支持FAT32)按体积大小,普...转载 2018-06-10 22:31:40 · 1400 阅读 · 0 评论 -
Linux PCI 设备驱动基本框架(一)
https://www.cnblogs.com/zhuyp1015/archive/2012/06/30/2571400.htmlLinux将所有外部设备看成是一类特殊文件,称之为“设备文件”,如果说系统调用是Linux内核和应用程序之间的接口,那么设备驱动程序则可以看成是 Linux内核与外部设备之间的接口。设备驱动程序向应用程序屏蔽了硬件在实现上的细节,使得应用程序可以像操作普通文件一样来...转载 2019-05-19 20:59:58 · 505 阅读 · 0 评论 -
PCIE相关
https://blog.csdn.net/hulidong971/article/details/41412199https://www.cnblogs.com/chengqi521/p/8717630.html转载 2019-05-19 22:48:51 · 215 阅读 · 0 评论 -
Linux SPI总线和设备驱动架构之四:SPI数据传输的队列化
我们知道,SPI数据传输可以有两种方式:同步方式和异步方式。所谓同步方式是指数据传输的发起者必须等待本次传输的结束,期间不能做其它事情,用代码来解释就是,调用传输的函数后,直到数据传输完成,函数才会返回。而异步方式则正好相反,数据传输的发起者无需等待传输的结束,数据传输期间还可以做其它事情,用代码来解释就是,调用传输的函数后,函数会立刻返回而不用等待数据传输完成,我们只需设置一个回调函数,传输完成转载 2017-07-03 17:36:55 · 295 阅读 · 0 评论 -
Linux SPI总线和设备驱动架构之三:SPI控制器驱动
通过第一篇文章,我们已经知道,整个SPI驱动架构可以分为协议驱动、通用接口层和控制器驱动三大部分。其中,控制器驱动负责最底层的数据收发工作,为了完成数据的收发工作,控制器驱动需要完成以下这些功能:1. 申请必要的硬件资源,例如中断,DMA通道,DMA内存缓冲区等等;2. 配置SPI控制器的工作模式和参数,使之可以和相应的设备进行正确的数据交换工作;3. 向通用接口转载 2017-07-03 17:36:06 · 353 阅读 · 0 评论 -
Linux SPI总线和设备驱动架构之二:SPI通用接口层
版权声明:本文为博主原创文章,未经博主允许不得转载。通过上一篇文章的介绍,我们知道,SPI通用接口层用于把具体SPI设备的协议驱动和SPI控制器驱动联接在一起,通用接口层除了为协议驱动和控制器驱动提供一系列的标准接口API,同时还为这些接口API定义了相应的数据结构,这些数据结构一部分是SPI设备、SPI协议驱动和SPI控制器的数据抽象,一部分是为了协助数据传输而定转载 2017-07-03 17:34:53 · 421 阅读 · 0 评论 -
linux驱动模型开发——linux platform总线机制讲解与实例开发
1、概述:通常在Linux中,把SoC系统中集成的独立外设单元(如:I2C、IIS、RTC、看门狗等)都被当作平台设备来处理。从Linux2.6起,引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver,来管理相应设备。Linux中大部分的设备驱动,都可以使用这套机制,设备用platform_device表示,驱动用platform_drive转载 2016-08-08 15:38:26 · 449 阅读 · 0 评论 -
linux驱动模型开发——linux platform总线机制讲解与实例开发
1、概述:通常在Linux中,把SoC系统中集成的独立外设单元(如:I2C、IIS、RTC、看门狗等)都被当作平台设备来处理。从Linux2.6起,引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver,来管理相应设备。Linux中大部分的设备驱动,都可以使用这套机制,设备用platform_device表示,驱动用platform_drive转载 2016-08-08 15:40:55 · 332 阅读 · 0 评论 -
Linux makefile 教程 非常详细,且易懂
最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比转载 2016-09-07 17:53:10 · 373 阅读 · 0 评论 -
浅谈 Linux 内核开发之网络设备驱动
网络设备介绍网络设备是计算机体系结构中必不可少的一部分,处理器如果想与外界通信,通常都会选择网络设备作为通信接口。众所周知,在 OSI(Open Systems Interconnection,开放网际互连)中,网络被划分为七个层次,从下到上分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。我们所讲的网络设备也包括两个层次,一层叫做 MAC(Media Access Con转载 2016-09-26 16:33:05 · 238 阅读 · 0 评论 -
DM9000A网卡驱动框架源码分析
首先分析一下Linux网络设备的结构,如下图: 网络协议接口层向网络层协议提供提供统一的数据包收发接口,不论上层协议为ARP还是IP,都通过dev_queue_xmit()函数发送数据,并通过netif_rx()函数接受数据。这一层的存在使得上层协议独立于具体的设备。 网络设备接口层向协议接口层提供统一的用于描述具体网络设备属性和操作的结构体net_device,该结构体是设备转载 2016-09-26 16:57:38 · 793 阅读 · 0 评论 -
网卡驱动·linux内核网络分层结构
Preface Linux内核对网络驱动程序使用统一的接口,并且对于网络设备采用面向对象的思想设计。 Linux内核采用分层结构处理网络数据包。分层结构与网络协议的结构匹配,既能简化数据包处理流程,又便于扩展和维护。内核网络结构 在Linux内核中,对网络部分按照网络协议层、网络设备层、设备驱动功能层和网络媒介转载 2016-09-26 17:18:48 · 220 阅读 · 0 评论 -
基于linux2.6.30.4内核的DM9000网卡驱动编译成模块成功ping通
基于linux2.6.30.4内核的DM9000网卡驱动编译成模块成功ping通最近有个学生毕业设计需要实现基于ARM的DM9000网卡通信,但是linux2.6.30.4内核已经把DM9000网卡封装好了,这样我们只能将其拿出编译成模块也就是.ko文件进行加载调试。下面讲解下编译步骤和关于DM9000网卡的一些信息。因为我们从内核中看了dm9000的驱动源代码(/driver转载 2016-10-26 16:35:51 · 559 阅读 · 0 评论 -
基于linux下的dm9000网卡移植全分析
DM9000可以直接与ISA总线相连,也可以与大多数CPU直接相连。Mini2440采用的是dm9000直接连接CPU(s3c2440)上。就像是nandflash一样直接被挂在CUP上,被挂在s3c2440的bank4上。 小插曲1:s3c2440芯片把存储系统分为了8个Bank,由nGCS0[0]~nGCS[7] 这8根引脚决定当前访问的是哪一个Bank对应的存储器。其中,前6转载 2016-10-19 16:14:02 · 449 阅读 · 0 评论 -
linux文件系统与物理文件系统
文件系统是文件的管理者,决定文件如何被操作,比如存放、打开、关闭、写入、查找。文件可以是任何格式的数据,比如音频、视频、文档、代码、图片、应用程序、快捷方式等等。因为文件各种各样,所以文件系统的存在就很必要了。比如支持新建目录,新建空白文件,显示文件大小,显示文件创建日期,这些都是文件系统提供的服务。 文件系统结合图形操作界面,就造成了我们看到了双击就可以打开,单击就可以选中这些直观上转载 2017-07-11 08:52:22 · 423 阅读 · 0 评论 -
关于linux mmc/sd驱动程序架构
关于linux mmc/sd驱动程序架构今天花了时间简单看了mmc/sd部门内容和代码,我觉得形式上,这个部分和i2c非常相似系统也是分成core层,host层(对应i2c的adapter),设备层如果这样讲,那么core层主要功能应该是提供host注册,总线注册,设备注册的几个方法以及所谓sdio总线接口的算法了。host层已经是注册一个platform设备,其中应该提供主要sd转载 2017-07-11 15:26:45 · 412 阅读 · 0 评论 -
Linux SPI总线和设备驱动架构之一:系统概述
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]SPI是"Serial Peripheral Interface" 的缩写,是一种四线制的同步串行通信接口,用来连接微控制器、传感器、存储设备,SPI设备分为主设备和从设备两种,用于通信和控制的四根线分别是:CS 片选信号SCK 时钟信号MISO 主设备的数据输入、从设转载 2017-07-03 17:32:55 · 247 阅读 · 0 评论 -
SPI驱动框架源码分析
SPI驱动框架源码分析 2013-04-12 16:13:08分类: LINUXSPI驱动框架源码分析SPI协议是一种同步的串行数据连接标准,由摩托罗拉公司命名,可工作于全双工模式。相关通讯设备可工作于m/s模式。主设备发起数据帧,允许多个从设备的存在。每个从设备有独立的片选信号,SPI一般来说是四线串行总线结构。接口:SCL转载 2016-08-04 15:19:42 · 490 阅读 · 0 评论