
kernel
文章平均质量分 60
melo_fang
与自己能力相等的才叫机会
展开
-
I2C SPI的区别
I2C和SPI是两种不同的通信协议。一。 IIC 简介它是由数据线 SDA 和时钟 SCL 构成的串行总线, 可发送和接收数据。在 CPU 与被控 IC 之间、IC 与 IC 之间进行双向传送,高速 IIC 总线一般可达 400kbps 以上。用I2C通信的芯片最常用的就是EEPROM芯片,如Atmel的AT24CXX系列,此外,还有一些其它功能的芯片。(这是EEPROM芯片的接转载 2017-10-27 09:48:09 · 3880 阅读 · 1 评论 -
request_threaded_irq中enable_irq的流程
在很多驱动文件中可以发现,在request_thread_irq调用以后,probe函数里并没有显示的调用enable_irq。对于我们来说,要确认的一点的是,没有enable_irq的话,中断函数是不会被调用的。细细看下代码,只有request_thread_irq即在申请中断的时候,中断核心是不是会帮忙做了这件事呢? 从 request_thread_irq追到__setup_...原创 2018-09-14 16:49:48 · 1945 阅读 · 0 评论 -
边沿触发与电平触发的区别
1、边沿触发边沿触发包括上升沿触发和下降沿触发,边沿触发检测的是电平变化,高电平转低电平或低电平转高电平时,触发一次中断。边沿沿触发是锁存中断信号的,由D触发器记忆,即:若CPU来不及响应中断,外部中断信号撤消后,由于D触发器的记忆作用,消失的中断信号仍然有效,直到中断被响应并进入中断ISR,记忆的中断信号才会由硬件自动清除。 2、电平触发电平触发分为高电平触发和低电平触发;电...原创 2018-09-14 17:54:34 · 18748 阅读 · 0 评论 -
Battery Charging Specification 1.2 中文详解
转自: http://blog.youkuaiyun.com/liglei/article/details/22852755 1. Introduction 1.1 Scope 规范定义了设备通过USB端口充电的检测、控制和报告机制,这些机制是USB2.0规范的扩展,用于专用 充电器(DCP)、主机(SDP)...转载 2018-07-18 16:35:14 · 2402 阅读 · 0 评论 -
OHCI,UHCI,EHCI,xHCI
OHCI、UHCI都是USB1.1的接口标准,而EHCI是对应USB2.0的接口标准,最新的xHCI是USB3.0的接口标准。1. OHCI(Open Host Controller Interface)是支持USB1.1的标准,但它不仅仅是针对USB,还支持其他的一些接口,比如它还支持Apple的火线(Firewire,IEEE 1394)接口。与UHCI相比,OHCI的硬件复杂,硬件做的事情更...转载 2018-06-11 14:42:17 · 641 阅读 · 0 评论 -
linux内核 中断相关
IRQF_TRIGGER_MASK:IRQF_TRIGGER_RISING 0X1IRQF_TRIGGER_FALLING 0X2IRQF_TRIGGER_HIGH 0X4IRQF_TRIGGER_LOW 0X8 1) 如果设备具有唤醒系统的功能,请在probe函数中调用device_init_wakeup()和dev_pm_set_wake_...原创 2018-02-06 17:38:17 · 1083 阅读 · 0 评论 -
android 输入系统 映射文件kl
android kl(key layout)文件是一个映射文件,是标准linux与anroid的键值映射文件,kl文件可以有很多个,但是它有一个使用优先级:[plain] view plain copy/system/usr/keylayout/Vendor_XXXX_Product_XXXX_Version_XXXX.kl /system/usr/keylayout/Vendor_XXXX_P...原创 2018-02-11 20:51:09 · 1505 阅读 · 0 评论 -
TSC2007 移植到android 6.0内核 (使用设备树)
最近接手了一块电阻屏,用了TI的TSC2007进行信号转换。 接口是 I2C, 还有一个中断屏,工作原理比较简单:发送一个8BIT命令(例如读X),然后接收16BIT的返回值。 整个驱动参考了TI的源码 以及 TI社区的讨论。/* * drivers/input/touchscreen/tsc2007.c * * Copyright (c) 2018 Melo * Me...原创 2018-02-09 17:28:55 · 2184 阅读 · 0 评论 -
KERNEL 驱动阻止suspend
在suspend的过程中,发生了一个唤醒事件(例如USB插入)预期效果应该是:suspend被阻止 伪代码实现如下:Usb_probe()//一般在probe函数中,{device_init_wakeup(usb->dev,1)//初始化一个wake up source……enable_irq_wake(usb_irq);//调用该接口enable的irq在susp原创 2018-02-05 13:27:46 · 572 阅读 · 0 评论 -
android bootloader以及kernel调用driver流程
1.手机上电后,硬件会从固定的地址(固化在ROM中)加载bootloader到RAM,然后跳转到bootloader的入口函数开始执行bootloader入口函数bootable/bootloader/lk/arch/arm/crt0.S在_start中先主要完成CPU初始化,禁用mmu,禁用cache,初始化异常向量表等操作,最后将直接跳转到函数kmain中2.kmain在b原创 2018-01-26 11:10:40 · 1232 阅读 · 1 评论 -
unbuntu下切换JAVA HOME
项目用到的JAVA环境有新有旧,记录下加强记忆root下 .bashrc文件 export JAVA_HOME的值原创 2018-01-25 18:07:49 · 245 阅读 · 0 评论 -
request_threaded_irq及IRQF_ONESHOT的简单研究
最近有对request_threaded_irq以及IRQF_ONESHOT进行了一下研究, 首先是通过TP驱动的IRQ来做实验,中断为低有效,gpio默认状态为输入高电平,驱动内部代码为:ret =request_threaded_irq(touchdev->irq,NULL,zinitix_touch_work,IRQF_TRIGGER_FALLING| IRQF_ON原创 2017-10-13 11:46:13 · 18280 阅读 · 2 评论 -
TP sequence(msm zinitix)
1. TP1.1 In zt7554ic,0x0080 is STATUS_REG.0x0082-0x00a5 per three ADDR is a point info.1.2 eg.Hera SUPPORTED_FINGER_NUM 5While three points down , there will be point 0,1,2.Then the poi原创 2017-10-27 11:16:26 · 657 阅读 · 0 评论 -
suspend通过console debug
转自:https://blog.youkuaiyun.com/tiantao2012/article/details/56278585当在传递给kernel的cmdline 添加no_console_suspend的时候static int __init console_suspend_disable(char *str){ console_suspend_enabled = false; ...转载 2018-10-09 09:46:48 · 1035 阅读 · 0 评论