Focus on the Linux kernel

Experience sharing, benefit oneself and others.技术交流qq:2448383766

排序:
默认
按更新时间
按访问量

安卓linux uevent内核上报机制实例

uevent可以实现内核通知上层的一种机制,最常见的电池状态的变化就是kernel uevent通知的,每次百分比或者其他的变化通过power_supply_changed通知上层update; 每个device下面都有kobj,找到device就可以通过kobject_uevent_env ...

2015-01-20 21:21:29

阅读数:2722

评论数:0

linux select与poll实现机制与实例分析

我们直到上层对文件操作结合select与poll可以实现阻塞操作,那么究竟是如何实现的呢? select接口:     int select(int nfds, fd_set *readset, fd_set *writeset,                fd_set *exceptset...

2015-01-20 18:09:13

阅读数:1848

评论数:0

linux内核3.4基于wakeup_source的autosleep机制分析

一:wakeup_source简介:     linux 3.4内核PM使用了wakeup_source来保持唤醒状态,也就是keep awake。之前android一直是基于Linux加入了wake_lock机制来阻止系统休眠,后来Linux 3.4内核加入了wakeup_source来管理,安...

2014-11-24 19:25:53

阅读数:4092

评论数:0

Linux音频ALSA机制学习笔记<二>

首先是dapm是什么?就是音频电源动态管理。相信电源管理大家都不会陌生。dapm设计的目的就是只有需要时才打开必要的部件 (widget),不需要时则关闭部件, 达到省电的目的。ALSA通过kcontrol来切换音频通道,当playback或者capture时会更新通道激活下 的widget po...

2014-11-04 21:28:15

阅读数:2270

评论数:0

Linux音频ALSA机制学习笔记<一>

首先宏观看内核暴露给上层的接口: root@android:/ # cat /dev/snd/ controlC0 pcmC0D10p pcmC0D13c pcmC0D15c pcmC0D2c pcmC0D3c pcmC0D5p pcmC0D8c pcmC0D0c pcmC0D11p pcmC0D...

2014-11-04 21:26:02

阅读数:6265

评论数:0

做高通平台安卓驱动感言

第二次写这类博客,之前还是求职期间写的面试之类的经历。           不知不觉做驱动再过2个月就3年了,可以说这3年学习到的很多,老大或者同事们的指教,针对性通过百度等搜索等,还有就是自己一边工作一边自己研究到的。 知识,解决问题的能力也是慢慢积累起来的。这二年多来一直在做驱动,由开始开始接...

2014-10-13 22:23:03

阅读数:4021

评论数:8

linux内核notifier机制 linux通知链

在linux内核系统中,各个模块、子系统之间是相互独立的。Linux内核可以通过通  知链机制来获取由其它模块或子系统产生的它感兴趣的某些事 件。 使用notifier由通知者可以传递给被通知者整形参数与指针,在linux中有许多地  方用到,比如reboot通知,cpu调频通知,电池低 电警报等...

2014-09-23 21:02:18

阅读数:1725

评论数:0

从linux usb bus节点来认识usb linux usb认识

首先从dmesg来认识usb: [   19.610046] msm_hsic_host msm_hsic_host: Qualcomm EHCI Host Controller using HSIC [   19.620391] msm_hsic_host msm_hsic_host: new ...

2014-09-22 21:34:35

阅读数:5813

评论数:0

安卓kernel自主唤醒系统方法—设置alarm

#include 1:定义alarm变量: struct alarm  xx_alarm; 2:alarm绑定: alarm 触发时callback: static void xx_callback(struct alarm *alarm) {      structchip *ch...

2014-09-17 22:45:18

阅读数:3039

评论数:2

linux kernel将buf保存到文件做法 很好的调试方法

linux kernel将关键信息保存到文件做法      很好的调试方法 下面有2个示例:     1:保存机器从开机到结束的VBATT;     2:保存uart接收到的数据到文件; 意义不多说了。 以下是代码: #include #include #include static ...

2014-09-05 21:46:00

阅读数:2106

评论数:0

linux网卡数据流 发送与接收

通常在驱动中看见的网卡代码很多,但是都离不开发送与接收,掌握好骨干也就好阅读网卡驱动了。 数据发送 : 发送函数:xxx_start_xmit() 上层封装好了sk_buff丢进kernel后,buf存储在skb->data中,通 过 xxx_start_xmit(),发送出去。 下面的...

2014-09-03 21:34:11

阅读数:2501

评论数:0

linux sdio card休眠处理 sdio card removed解决办法

最近调试几款sdio card suspend时都会出现sdio card removed,之后  要么死机要么模块不能正常工作,根本原因也就是休眠没有处理好。 昨天在博通网卡上终于找到了解决方法。          1:host端需要设置nonremovable,软件设置:mmc->cap...

2014-09-02 21:25:56

阅读数:3130

评论数:0

linux runtime pm机制的深入理解

一:runtime机制说明     何为runtime机制?也就是系统在非睡眠状态,设备在空闲时可以进入runtime suspend状态同时不依赖系统wake_lock机制,非空闲时执行runtime resume使得设备进入正常工作状态。     主要代码放在Runtime.c (drive...

2014-07-24 21:26:50

阅读数:6461

评论数:0

Android通过tcpdump抓包

1. 手机要有root权限 2. 下载tcpdump   http://www.strazzere.com/android/tcpdump 3. adb push c:\wherever_you_put\tcpdump /data/local/tcpdump 4. adb she...

2014-06-24 22:08:50

阅读数:995

评论数:0

高通平台串口调试 AP与模块串口通讯调试总结

1:检查AP端串口配置是否ok: a:高通平台查看DMA传输: echo 1 > /sys/kernel/debug/msm_serial_hsl/loopback.0 //打开回环开关 adb shell cat /dev/ttyHSL1 另起窗口 # adb shell # echo 1...

2014-04-22 22:05:29

阅读数:4664

评论数:0

android alarm底层理解

分享以前调试alarm关机闹钟时,写的关于alarm的总结;     alarm上层调用包括RTC唤醒和闹钟,前者使用的更频繁,接口一样;上层应用频繁调用rtc唤醒系统会增加功耗,所有有些厂家做了所谓的同步心跳技术来统一规划RTC唤醒系统;     alarm本质是底层起了timer,在系统未睡眠...

2014-03-28 21:53:46

阅读数:1848

评论数:0

linux 进程睡眠与wait_even t_interruptible()分析

驱动中最底层处理buffer通常会对该进程睡眠和唤醒操作,比如上层写入buffer时,内核buffer缓冲区是满的,那么写入进程需要阻塞住,直到内核buffer缓冲区可以容纳上层写入的buffer才唤醒该进程。 首先必须认清一个事实: 先将进程置为INTERRUPTIBLE,再调用schedul...

2014-03-19 22:38:24

阅读数:3577

评论数:0

Linux ARM Device Tree

一、ARM Device Tree起源  历史问题: 1、在过去的ARM Linux中,arch/arm/plat-xxx和arch/arm/mach-xxx中充斥着大量的垃圾代码;   相当多数的代码只是在描述板级细节,而这些板级细节对于内核来讲,不过是垃圾,   如板上的pla...

2014-03-11 21:45:31

阅读数:1454

评论数:0

针对高通BMS的研究 高通电量计

高通8064 8974 8926等pm芯片都集成了电量计,估计后续芯片都会一直存在,现在许多项目电池旁都有百分比显示,所以需要深入分析BMS有助于解决电量方面的BUG。 一: SOC(荷电状态)计算方法 名词: FCC  Full-charge capacity       UC     Rema...

2014-03-08 08:29:02

阅读数:5300

评论数:1

UART中的硬件流控RTS与CTS

转载地址:http://blog.csdn.net/zeroboundary/article/details/8966586 最近太忙了,没时间写对Ucos-II的移植,先将工作中容易搞错的一个知识点记录下来,关于CTS与RTS的。 在RS232中本来CTS 与RTS 有明确的意义,但自从贺氏...

2014-02-11 20:59:45

阅读数:1880

评论数:0

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