Linux Driver
fengzhishang_meteor
吾生也有涯,而知也无涯
展开
-
ok6410移植全过程
SMDK6410 # SMDK6410 # dnw 50008000 OTG cable Connected!原创 2014-06-26 21:54:55 · 1119 阅读 · 0 评论 -
Linux网卡驱动--BCM53101
P1020 是powerpc的一款cpu关于BCM53101和P1020 连接示意图如下硬件上使用eTSEC3通过RGMII与BCM53101的GMAC port相连,这个连接方式的重点主要是mac到mac的连接 P1020 eTSEC简图原创 2015-10-29 17:35:39 · 3572 阅读 · 0 评论 -
Linux spi驱动--时钟频率
mark原创 2015-11-26 16:42:43 · 4396 阅读 · 0 评论 -
Linux GPIO用户空间操作
目前遇到一个问题,内核中已实现了gpio驱动,而且在内核空间可以正常使用gpio_request,gpio_direction_output,gpio_free等gpiolib中提供的函数 只是想在用户空间中对gpio进行操作,发现/dev下并没有相关的gpio设备准备写个.ko实现ioctl来间接操作,想了一下,这么常用的gpio,这么强大的linux,不应原创 2016-01-05 17:30:41 · 7558 阅读 · 1 评论 -
Linux spi字符收发细节
本文以飞思卡尔P1020 SOC(powerpc架构),Linux2.6.35内核为依据,详细内容可参考源码这篇文章是关于spi字符收发细节的描述原创 2015-11-26 15:44:30 · 5858 阅读 · 0 评论 -
Linux spi死锁问题
mark原创 2015-11-26 15:49:08 · 4679 阅读 · 2 评论 -
ubuntu下SD卡分区与挂载
本来只是想借SD卡来做一个OK6410的升级但笔记本上只装了ubuntu,一开始是可以识别sd卡的,但按照网上的教程不小心将/dev/sdb1删除了导致ubuntu不能识别sd卡了记录一下解决过程1.sd的设备节点/dev/sdb还有,说明驱动没有问题,按照网上执行了这些步骤,但并没有作用sudo modprobe usb-storagesudo modprobe sdhc原创 2016-02-02 11:23:29 · 8427 阅读 · 1 评论 -
Linux中断处理驱动程序编写
http://blog.163.com/baosongliang@126/blog/static/1949357020132585316912/本章节我们一起来探讨一下Linux中的中断中断与定时器:中断的概念:指CPU在执行过程中,出现某些突发事件急待处理,CPU暂停执行当前程序,转去处理突发事件,处理完后CPU又返回原程序被中断的位置继续执行中断的分类:内部转载 2016-04-06 14:19:28 · 1295 阅读 · 0 评论 -
uboot下gpio驱动移植
记录下uboot下gpio的移植过程原创 2016-04-01 10:56:22 · 4922 阅读 · 0 评论 -
uboot移植spi驱动
记录一下在uboot内移植spi驱动的过程原创 2016-03-14 09:33:15 · 8697 阅读 · 0 评论 -
spi速率与波形
读写各1000次MPC8308:[root@Huahuan:/home]#insmodspi_fpga.ko driver init!start:tv_sec=30,tv_usec=298126stop:tv_sec=30,tv_usec=515524buf=0x00 0x00 217398us217.398ms间距:13.8us时钟频率:6.55M原创 2016-05-13 09:14:09 · 8466 阅读 · 0 评论 -
SPI flash D.TC.S25FL064A (W25Q64FV)驱动
D.TC.S25FL064A (W25Q64FV)是一个串行的spiflash,我们用于存储fpga程序(epcs),fpga上电时通过spi从该flash读取程序进行fpga在线升级时,通过cpu的spi接口进行读写,该芯片只有一组spi接口,所以需要一个选路器OE进行选路,当cpu的gpio11拉低时,CPU的spi控制有效当gpio11拉高时,FPGA的spi有效由于原创 2016-06-30 11:41:05 · 5617 阅读 · 0 评论 -
NAND flash替换问题
原flash: SAMSUNG K9K8G08U0B新flash:SPANSION S32ML08G201TF100简单介绍:K9K8G08U0B与 S32ML08G201TF100很相似,都是8Gbits,页大小都是2048bytes但K9K8G08U0B的SPARE AREA为每页64B,S32ML08G201TF100为128B问题是这样的:1.生产了50块板,这些原创 2016-07-25 20:16:39 · 5373 阅读 · 1 评论 -
Linux内核中IO地址空间映射实例
关于IO地址映射,如中断外设的地址和映射后的地址访问下面是P1020 手册中关于PIC中断控制器的描述PIC Memory Map/Register DefinitionThe PIC programmable register map occupies 256 Kbytes of memory-mapped space.Reading undefined portions原创 2017-09-01 18:14:56 · 3423 阅读 · 0 评论 -
Mac与Phy组成原理的简单分析
1. general下图是网口结构简图.网口由CPU、MAC和PHY三部分组成.DMA控制器通常属于CPU的一部分,用虚线放在这里是为了表示DMA控制器可能会参与到网口数据传输中.对于上述的三部分,并不一定都是独立的芯片,根据组合形式,可分为下列几种类型:CPU集成MAC与PHY;CPU集成MAC,PHY采用独立芯片;CPU不集成MAC与PHY,MAC与PHY采用集转载 2015-10-10 09:51:05 · 738 阅读 · 0 评论 -
网络数据包收发流程(一):从驱动到协议栈
早就想整理网络数据包收发流程了,一直太懒没动笔。今天下决心写了一、硬件环境intel82546:PHY与MAC集成在一起的PCI网卡芯片,很强大bcm5461: PHY芯片,与之对应的MAC是TSECTSEC: Three Speed Ethernet Controller,三速以太网控制器,PowerPc 架构CPU里面的MAC模块转载 2015-10-10 09:47:00 · 741 阅读 · 0 评论 -
深入理解Linux内存映射机制
创建时间:2008-08-31文章属性:原创文章提交:wzt (wzt_at_xsec.org)深入理解Linux内存映射机制Author: wztEMail: wzt@xsec.orgSite: http://www.xsec.org & http://hi.baidu.com/wzt85Date: 2008-6-13一. 绪 论二. X86的硬件转载 2014-06-12 14:40:12 · 903 阅读 · 0 评论 -
进程地址空间
原文地址 http://blog.csdn.net/wzhwho/article/details/42497581. 进程地址空间其实内核除了管理本身的内存外,还必须管理进程的地址空间。Linux操作系统采用虚拟内存技术,因此系统中的所有进程之间以虚拟方式共享内存。进程地址空间由每个进程中的线性地址区组成,而且内核允许进程使用该空间中的地址。进程之间可以选择共享地址空间,我们称为这样的转载 2014-09-15 17:38:43 · 729 阅读 · 0 评论 -
vm_area_struct
Linux内核中,关于虚存管理的最基本的管理单元应该是struct vm_area_struct了,它描述的是一段连续的、具有相同访问属性的虚存空间,该虚存空间的大小为物理内存页面的整数倍。 下面是struct vm_area_struct结构体的定义: QUOTE:/** This struct defines a memory VMM转载 2015-01-27 17:56:44 · 802 阅读 · 0 评论 -
Linux中tty框架与uart框架之间的调用关系剖析
之前本人在"从串口驱动的移植看linux2.6内核中的驱动模型 platform device & platform driver"一文中已经写到了移植的设备是如何通过platform总线来与对应的驱动挂载。在这期间有一个问题困扰着我,那就是来自用户空间的针对uart设备的操作意图是如何通过tty框架逐层调用到uart层的core驱动,进而又是如何调用到真实对应于设备的设备驱动的,本文中的转载 2015-02-10 17:31:51 · 840 阅读 · 0 评论 -
linux 中断机制的处理过程
一、中断的概念中断是指在CPU正常运行期间,由于内外部事件或由程序预先安排的事件引起的CPU暂时停止正在运行的程序,转而为该内部或外部事件或预先安排的事件服务的程序中去,服务完毕后再返回去继续运行被暂时中断的程序。Linux中通常分为外部中断(又叫硬件中断)和内部中断(又叫异常)。在实地址模式中,CPU把内存中从0开始的1KB空间作为一个中断向量表。表中的每一项占4个字节。但是在保转载 2014-06-26 16:21:41 · 838 阅读 · 0 评论 -
linux设备驱动——scull源码编译问题
我的环境是ubuntu12.04内核版本:3.13.0-32-generic这个内核版本算是比较新的,scull源码编译会出现很多问题以下对这些问题进行归纳总结:今天对程序进行编译,结果出现make -C /lib/modules/3.3.2-6.fc16.x86_64/build M=/home/jqzeng/workSpace/ldd3/ldd3-samples-1原创 2015-06-25 17:00:29 · 3104 阅读 · 0 评论 -
详解Linux2.6内核中基于platform机制的驱动模型
详解Linux2.6内核中基于platform机制的驱动模型 Sailor_forever sailing_9806#163.com(本原创文章发表于Sailor_forever 的个人blog,未经本人许可,不得用于商业用途。任何个人、媒体、其他网站不得私自抄袭;网络媒体转载请注明出处,增加原文链接,否则属于侵权行为。如 有任何问题,请留言或者发邮件给sailing_9806#16转载 2015-06-30 16:54:09 · 788 阅读 · 0 评论 -
linux基础之spi驱动程序理解
============================================作者:yuanluluhttp://blog.csdn.net/yuanlulu版权没有,但是转载请保留此段声明============================================1.1 重要的数据结构1. spi_device虽然用转载 2015-07-14 16:43:12 · 961 阅读 · 0 评论 -
linux驱动设备在多进程打开问题
一、问题一个spi设备,单独一个进程打开就行读写没有问题,但是多进程打开却死锁了当然该设备是修改过的,并不是原生态的spi驱动原创 2015-08-07 17:51:24 · 9644 阅读 · 0 评论 -
Linux Platform总线+SPI总线分析
本文以MPC8308(powerpc架构),HX软件包为依据,详细内容可参考源码CPU: e300c3MPC8308 400MHz BOARD: Freescale MPC8308ERDBDRAM: 256MNAND: 1024M原创 2015-07-09 10:45:40 · 2709 阅读 · 1 评论 -
ubi移植与flash替换问题
我在用TI的dm368开发板,kernel是2.6.32.17,默认的flash文件系统是jffs2,但是jffs2在大分区下,mount速度很慢,而且占用ram较多,因此,我想使用ubifs看看性能是否会更好些。ubifs的原理和配置过程,很多网页都有介绍的,我给一个链接,大家可以看看,我就不转载了,我重点说我移植过程中遇到并解决的问题。http://bbs.chinaunix.net/转载 2015-08-10 16:22:45 · 3971 阅读 · 0 评论 -
Linux SPI 数据收发框架
水平有限,描述不当之处还请之处,转载请注明出处http://blog.csdn.net/vanbreaker/article/details/7737833 本节以spidev设备驱动为例,来阐述SPI数据传输的过程。spidev是内核中一个通用的设备驱动,我们注册的从设备都可以使用该驱动,只需在注册时将从设备的modalias字段设置为"spidev",这样才能和spidev转载 2015-08-27 18:30:10 · 4539 阅读 · 0 评论 -
高手进阶必读:Linux内核的同步机制
IBM2006-02-15 09:21分享到:本文导航1原子操作2信号量(semaphore)3读写信号量(rw_semaphore)4自旋锁1(spinlock)5自旋锁2(spinlock)返回分页阅读1原子操作 本文详细的介绍了Linux内核中的同步机制:原子操作、信号量、读写信号量和自旋锁的API,使用要求以及一些典型示例 一、引言 在现代操作系统转载 2015-09-08 11:43:37 · 594 阅读 · 0 评论 -
Linux proc读操作为什么会执行3次
在使用cat 命令读取proc 文件时,奇怪的发现读函数被执行了三次proc 读函数代码片断(直接读取内核模块的某个变量值)int proc_read_hello(char *page, char **start, off_t off, int count, int *eof, void *data) {原创 2015-10-08 11:29:59 · 2067 阅读 · 0 评论 -
linux网络设备—mdio总线
一.结构体[cpp] view plaincopystruct mii_bus { const char *name; //总线名 char id[MII_BUS_ID_SIZE]; //id void *priv; //私有数据 int (*read)(struct mii_bus *转载 2015-10-10 09:52:48 · 1388 阅读 · 0 评论 -
蓝牙核心技术了解(蓝牙协议、架构、硬件和软件笔记)
原文地址:http://www.cnblogs.com/zjutlitao/p/4742428.html声明:这篇文章是楼主beautifulzzzz学习网上关于蓝牙的相关知识的笔记,其中比较多的受益于xubin341719的蓝牙系列文章,同时还有其他网上作者的资料。由于有些文章只做参考或统计不足,如涉及版权请在下面留言~。同时我也在博客分类中新建一个蓝牙通信分类,用来研究分享蓝牙相关技术。 主要...转载 2018-07-10 19:48:23 · 2410 阅读 · 0 评论