自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Radia的专栏

专注嵌入式Linux驱动、Python系统开发。

  • 博客(9)
  • 资源 (2)
  • 收藏
  • 关注

原创 linux驱动由浅入深系列:usb子系统之三(usb系统中的设备、配置、接口、端点概念及代码解释)

一个usb设备对应一个或多个配置一个配置包含一个或多个usb接口一个usb接口可能存在一种或多种设置一个设置会使用零个或多个usb端点设备设备就是一个usb物理设备,一个usb设备可以只包含一个简单功能的device,也可以包含一个由hub连接的多个设备,叫作复合设备。接口与端点的概念较为清晰端点端点是host或device中具有独立控制usb总线能力的最小物理

2017-09-26 20:52:04 1879

原创 linux设备驱动uevent详解,高通平台battery上报电量实例

本文以高通平台上的android系统为参照展开探讨。1,uevent是什么呢?uevent是一种linux设备模型中的一个组成部分。kseg中包含的uevent_ops结构体拥有uevent的操作函数。uevent可以在设备发生变化时主动通知应用层。是对普通先注册设备后注册驱动模式的一种补充。一般用作usb设备的自动驱动加载、电池电量上报等。2,uevent主动通知应用层的

2017-09-18 20:46:17 8925 1

原创 sys文件系统中文件、文件夹与kobject、kset、kobj_type的对应关系

网上对sys文件系统与kobject的文章很多,但对初学者的我越看越乱。几经辗转总结出如下结论,如有误恳请讨论指出,直接给出:1,kobject,kset对应sysfs里面的文件夹,目录的名字就是结构体中的 name2,kobj_type对应sysfs里面的文件,这些文件是kobject的属性的外在表现3,kobject是linux设备树的核心结构体,整个设备树都是围绕kobject建

2017-09-14 19:45:05 1137

原创 linux双向链表List结构分析

双向链表是linux内核中的一个核心数据结构,由于其运用场景众多如task列表、设备列表等等,因此内核将其操作逻辑独立了出来。下面我们以i2c的设备树列表为例来看一下List列表的使用方法。如图所示,双向链表不包含任何数据,在使用时,将其嵌入到目标结构体中使用。且第一个list_head不与数据机构体关联,作为整个链表的起始。List的实现代码在kernel\include\linux

2017-09-13 17:16:26 1035

原创 linux中i2c子系统代码结构详解

本文介绍一下linux驱动代码中i2c子系统的驱动代码结构和使用方法,示例平台文件为高通msmXXXX平台一,i2c子系统代码结构i2c-core.c1,使用bus_register进行总线注册2,提供与具体硬件无关的操作逻辑供i2c-dev.c中使用3,将操作逻辑通过EXPORT_SYMBOL导出到整个内核,供其他基于i2c的设备驱动调用i2c-dev.c

2017-09-13 15:17:39 1187

原创 linux模块(module_init)、子系统(subsys_initcall)入口函数详解

linux内核代码是以模块(module)和子系统(subsys)为单元的层次结构。在写模块代码时我们知道入口函数是module_init()或subsys_initcall(),在linux启动时会被调用,这其中更为详细的前因后果是什么呢,一起来了解一下。一,linux模块程序示例下面是一个linux模块的示例程序:#include #include MODUL

2017-09-12 11:13:55 2404

原创 c++与其他语言的语法区别总结

c++是一个具有一些c语言特性的不纯粹的面向对象语言,下面整理一些c++与其他语言的区别之处,避免混淆。c++中还是有指针概念的struct结构体也依然存在,c语言中经常用struct来模拟class的功能。c++支持多继承c++最为特色的是模板的概念,好像是c++语言独有的吧c++中没有interface关键词,使用virtual关键词构建纯虚函数实现接口特性

2017-09-06 10:43:16 1716

原创 android AP侧通过sensor_class挂载sensor的一种方案

1.引言1.1背景目前android上对sensor的处理是将其挂载到类似于sensorhub的独立处理单元上与AP分离,这样便于解决功耗问题。高通平台也类似的将sensor挂在了adsp上,但特定需求下还是希望sensor能够挂载到AP下,并且对上层隐藏这种差异,可以使用相同的处理流程。本文介绍一种使用以input设备为基础的sensor_class抽象类在AP侧挂载sensor的方法。

2017-09-05 19:38:37 3936 2

原创 android oreo 中adb shell中的ps命令需要加参数ps -A

更新了android oreo后发现在adb shell中执行ps命令只得到了很少的信息:msm8937_32:/ # psUSER PID PPID VSZ RSS WCHAN ADDR S NAMEroot 4285 1516 4632 1544 sigsuspend add6067c S sh

2017-09-05 19:29:33 11546 1

setuptools-33.1.1.zip

windows下python安装第三方模块是报错“ImportError: No module named setuptools”,发现时未安装setuptools,按网上方法下载了ez_setup.py进行安装时又报错:“使用“2”个参数调用“DownloadFile”时发生异常:“基础连接已经关闭: 发送时发生错误。”发现时网络问题,下载不了setuptools-33.1.1.zip,后经科学上网法,拿到了setuptools-33.1.1.zip特分享出来以供需要的同学。

2017-11-10

total commander 8.52a 含对应的注册Key文件

为方便版本对应,提供了total commander8.52a的主程序和相应注册key,亲测成功。 注册方法:关闭Total Commander,将下载的文件(wincmd.key)复制到Total Commander的安装文件夹下,重启Total Commander即可。 注:此文件经用于个人学习研究用,禁止商业传播!有需要请购买正版支持原开发者。

2016-05-23

空空如也

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

TA关注的人

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