自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

chqsy

android/linux

  • 博客(7)
  • 资源 (15)
  • 收藏
  • 关注

原创 设备驱动中的regmap

regmap 机制是在 Linux 3.1 加入进来的特性。主要目的是减少慢速 I/O 驱动上的重复逻辑,提供一种通用的接口来操作底层硬件上的寄存器。其实这就是内核做的一次重构。regmap 除了能做到统一的 I/O 接口,还可以在驱动和硬件 IC 之间做一层缓存,从而能减少底层 I/O 的操作次数。以一个 I2C 设备为例。读写一个寄存器,肯定需要用到i2c_transfer这样的 I2C ...

2018-07-27 14:31:58 3186

转载 Linux设备驱动模型框架分析(六)——LDDM的设备管理:uevent,mdev

ueventuevent是kobject的一部分,用于在kobject状态发生改变时,例如增加、移除等,通知用户空间程序。用户空间程序收到这样的事件后,会做相应的处理。该机制通常是用来支持热拔插设备的,例如U盘插入后,USB相关的驱动软件会动态创建用于表示该U盘的device结构(相应的也包括其中的kobject),并告知用户空间程序,为该U盘动态的创建/dev/目录下的设备节点,更进一步...

2018-07-24 16:16:34 757

转载 Linux设备驱动模型框架分析(五)——LDDM的展现:sysfs

sysfs是一个基于RAM的文件系统,它和kobject一起,可以将Kernel的数据结构导出到用户空间,以文件目录结构的形式,提供对这些数据结构(以及数据结构的属性)的访问支持。1.sysfs 所包含的所有内容2.这是内核对系统中所有设备的分层次表达模型,也是 /sys 文件系统管理设备的最重要的目录结构3.这个目录下维护一个按字符设备和块设备的主次号码(major:minor)链接到真实的设备...

2018-07-11 16:28:36 880

转载 Linux设备驱动模型框架分析(四)——LDDM的高层视图class

类是一个设备的高层视图,抽象出了底层的实现细节。类允许用户空间使用设备所提供的功能,而不关心设备是如何连接的,和它们是如何工作的。类子系统是向用户空间导出信息的最好方法。类的核心数据结构是class,在分析device中介绍过,这个class不如bus,device,driver好理解,我理解它的主要功能是一是设备管理,二是抽象出一类设备的公共属性。前面分析subsys_private时说过,cl...

2018-07-05 20:09:22 655

转载 Linux设备驱动模型框架分析(三)——LDDM的实体bus_type、device和device_driver

  在Linux设备模型中,Bus(总线)是一类特殊的设备,它是连接处理器和其它设备之间的通道(channel)。为了方便设备模型的实现,内核规定,系统中的每个设备都要连接在一个Bus上,这个Bus可以是一个内部Bus、虚拟Bus或者Platform Bus。device和device driver是Linux驱动开发的基本概念。Linux kernel的思路很简单:驱动开发,就是要开发指定的软件...

2018-07-05 19:38:39 795

转载 linux设备驱动模型架构分析(二)——LDDM的底层实现kobject

Linux设备驱动模型体系十分庞大,在不涉及细节的情况下建立顶层图景比较困难,我们采用自底向上的分析方法,首先分析关键的数据结构,然后再建立关键数据结构的关系。在阅读Linux内核源代码时(不仅仅对linux源码适用),通过核心数据结构,即可理解某个模块大部分逻辑,使用面向对象思想的设备模型部分尤为明显。这种思维方法值得刻意地锻炼LDDM的底层实现:kobject,kset和kobj_typeLi...

2018-07-04 16:13:56 1197 1

转载 linux设备驱动模型架构分析 一

概述LDD3中说:“Linux内核需要一个对系统结构的一般性描述。”这个描述就是linux设备驱动模型(下面简称为LDDM)。LDDM不是独立存在,其体系如下图所示:对架构的每一部分本文都会开辟独立的章节进行描述。暂且抛开这个架构,首先从总体上了解一下LDDM。LDDM与驱动程序密切相关,而驱动程序处于linux系统中的什么位置呢?我们自顶向下一步步来说,先看下图[以下内容以http://www....

2018-07-04 15:14:49 10682 1

stm32f2x固件库手册

这是stm32f20x固件库手册,英文版

2012-06-28

k9f1g08u中文数据手册

k9f1g08u的中文数据手册,pdf文档类型

2011-11-04

stm322xx固件库

这是stm32f2xx的固件库,内含相关代码例程,使用非常方便

2011-10-24

ucOSII中文手册

详细介绍ucOSII原理和实验的中文手册

2011-09-18

SD卡的详细相关资料

资料中包含了多个SD卡的资料,资料详尽,几乎包含了所有的SD卡知识。

2011-09-18

stm3210x 固件库说明

stm32官网提供了固件库,使开发非常的方便,本文档是固件库的中文说明。。。。

2011-08-12

stm32f103 ds18b20

本程序是在stm32f103上控制ds18b20进行温度采集的例子

2011-07-25

ucgui在嵌入式linux下的移植

本文讲述了,如何将ucgui系统移植到arm上,在linux系统下进行的。

2011-04-26

v4l2 摄像头抓取图片

利用v4l2进行采集一副静止的图片。源码下载

2011-01-08

v4l摄像头抓取程序

利用v4l进行摄像头抓取一副静止的图片。

2011-01-08

blackfiin opencv移植

本文详细介绍了opencv在blackfin上的移植过程。

2010-12-11

adsp 的详细资料

adsp561是一款音视频处理的dsp芯片,也是目前业界比较先进的dsp

2010-09-02

adsp561处理器

如果想用adsp561首先要阅读此资料。bf561是一款音视频处理的理想处理器

2010-09-02

blackfin处理器资料

详细介绍了blackfin561平台的外围设备

2010-03-30

神经网络的人脸识别算法

可以用于程序的参考,特别是让初学者更容易理解。

2009-03-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除