Android驱动
设备驱动程序的作用在于提供机制,而不是提供策略。
John_chaos
这个作者很懒,什么都没留下…
展开
-
【Android驱动】块设备---笔记
linux驱动块设备原创 2022-03-04 13:30:52 · 565 阅读 · 0 评论 -
gpio_set_value
.....原创 2019-07-20 22:30:27 · 1403 阅读 · 0 评论 -
[Android app] Linux串口驱动配置,可执行程序测试,App串口通信程序
本文背景: 是真的不喜欢脑子记这些引脚,串口节点,动不动忘记了。 1.首先记录一下硬件引脚----tty节点对应关系 2.找一组/dev/ttyHSL1,先测试一下自环,然后写个app,从app里面读写这个节点 3.后续,通过串口和单片机通信,和esp8266通信,实现一个android app控制单片机硬件平台配置:平台:msm8909默认log串口:Board_KERNEL_CMDLINE.原创 2021-11-08 17:27:33 · 4085 阅读 · 4 评论 -
[Android驱动] 高通 Q PNP Flash LED驱动 及上层调用的流程
直白的记录一下,翻译的文件来自kernel:kernel/documentation/devicetree/bindings/leds/leds-qpnp-flash.txt---------------QPNP (Qualcomm Technologies Plug N Play) Flash LED,用于在相机sensor拍照时,背景比较暗时能拍出更好的图片。它是高通平台上PMIC的一部分。PMIC通过SPMI连接到主机处理器。(也就是说,这玩意就是高通平台的闪光灯和手电筒驱动)原创 2021-08-25 15:29:16 · 1987 阅读 · 0 评论 -
[Android驱动] sd卡的记录
博客: sd 卡驱动--基于高通平台_kinbo88的专栏-CSDN博客--------------------------目录:kernel/driver/mmc下三个子目录 card/、core/、host/如上面博客所说:card:块设备的驱动程序。这部分就是实现了将SD卡如何实现为块设备的core:总线驱动程序。这是整个MMC的核心层,这部分完成了不同协议和规范的实现, 并且为HOST层的驱动提供接口函数host:通讯接口驱动。针对不同主机的驱...原创 2021-08-20 17:35:35 · 337 阅读 · 0 评论 -
【android驱动】i2c_detect的写法
static int chao_i2c_detect(struct i2c_client *client, struct i2c_board_info *info){ u8 chao_chip_id; struct i2c_adapter *adapter = client->adapter; chao_i2c_read(SENSOR_I2C_ADDRESS_REGISTER, &chao_chip_id, client); printk(KERN.原创 2021-07-20 10:56:04 · 657 阅读 · 0 评论 -
[android驱动] Ftrace使用记录
Linux内核工具 ftrace的使用说明原创 2021-07-13 14:10:56 · 731 阅读 · 0 评论 -
【Android驱动】SPI具体例子的一个代码框架
//连接到socaliases { spi1 = &spi_1};&spi_1 { aaaa_spi@0 { compatible = "AAAAAAAA"; reg = <0>; spi-max-frequency = <4000000>; spi-cpha = <0>; spi-cpol = <0>; ...原创 2021-05-27 16:28:39 · 774 阅读 · 0 评论 -
【Android驱动】电池博客收藏
鄙人不才哈哈哈,电池里面看不太懂。收藏看过的一些博客 写成博文便于点击,浏览器de收藏夹感觉很鸡肋啊高通电池曲线,dtsi里面的节点说明: (网上基本都是转载翻译的,内容都一样。。。) 高通平台电池曲线_笔记-CSDN博客_电池曲线 高通batterydata电池曲线数据学习_Change-CSDN博客 高通电池曲线 - yooooooo ...原创 2021-05-20 09:18:49 · 180 阅读 · 0 评论 -
【Android驱动】创建proc文件节点的例子
#include <linux/init.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/proc_fs.h>#include <linux/miscdevice.h>#include <asm/uaccess.h>#include <linux/module.h>struct proc_dir_entry *chao_proc.原创 2021-04-29 14:48:15 · 791 阅读 · 0 评论 -
【Android驱动】module_init 和 module_exit
linux驱动入口函数module_init详解_xinyuan510214的专栏-CSDN博客__init和__exit宏的作用_zhenwenxian的专栏-CSDN博客module_init: // kernel/include/linux/init.h #define module_init(x).原创 2021-04-27 17:21:11 · 373 阅读 · 0 评论 -
【Android驱动】字符设备驱动程序 关注点
看肯定是能看懂,经常忘记,若能背下来,那是更好。看书又要从头看,肯定是要总结一个云笔记那就是这篇博客struct cdev { struct kobject kobj; struct model *owner; struct file_operations *ops; struct list_head list; dev_t dev; //设备号 unsigned int count;};----.原创 2021-04-23 15:10:37 · 268 阅读 · 0 评论 -
【Android系统】【博客收藏】Binder
看了好几本书上的binder章节,上来就是直接框架,贴实现代码和binder驱动代码,讲的云里雾里,感觉好难理解,可能是自己智商不够吧...偶然看到一篇介绍binder的博客,前因后果写的很清楚,觉得是写的最好的,值得一看 https://blog.csdn.net/lzverygood/article/details/103078490...原创 2021-04-21 16:03:39 · 139 阅读 · 0 评论 -
【Android系统】Android开机时间分析
博客: https://www.jianshu.com/p/30fdf86c3462?from=singlemessage Android开机时间系统优化 https://blog.csdn.net/a04081122/article/details/52314709 ...原创 2021-04-16 14:39:53 · 2315 阅读 · 0 评论 -
【驱动】【问题记录】一个userdebug编译OK, user编译报堆栈错误的问题
问题背景:PC LR指示了出问题的函数是snd_soc_register_codec我注释掉驱动的编译开关,确实是codec驱动导致的。但是我编译ud版本的boot可以正常启动,编译user版本的boot,启动不了,报堆栈错误。--------------2021.04.15 不知道什么原因。...原创 2021-04-15 17:15:48 · 318 阅读 · 0 评论 -
【Linux内核】内核中的延时函数
延时分为:忙等待延时,睡眠延时。 //针对cpu忙等待延时: //原理类似while进行变量减减计数 void ndelay(unsigned long ns); //纳秒 void udelay(unsigned long us); //微妙 void mdelay(unsigned long ms); //毫秒.原创 2021-04-01 12:00:38 · 690 阅读 · 0 评论 -
【Linux内核】中断上下部在TP驱动 代码中的简单理解
背景知识食用:create_singlethread_workqueue: https://blog.csdn.net/liushuimpc/article/details/105198429//驱动里面的中断一般都是这样流程ts_probe() | ----- ts->goodix_wq = create_singlethread_workqueue("goodix_wq"); ...原创 2021-04-01 11:15:20 · 719 阅读 · 0 评论 -
【Android驱动】驱动中regulator_get解析和regulator_set_voltage设置电源脚电压的一个问题
背景: 延续上一篇写的从app控制gpio电平,想从app通过framework--jni--driver来控制ldo,也就是pm8909_l8这种电源脚。代码:diff --git a/kernel/drivers/misc/chaoDriver/gpio_control.c b/kernel/drivers/misc/chaoDriver/gpio_control.cindex a93f6c1..df33b71 100755--- a/kernel/drivers/misc.原创 2021-03-17 11:36:43 · 3477 阅读 · 0 评论 -
音频的总结
Audio Codec: Audio Codec - 简书 (jianshu.com)原创 2020-11-27 16:49:00 · 262 阅读 · 0 评论 -
【Android驱动】pinctrl控制gpio写法
自己也简单总结下,方便下次写1.头文件 #include <linux/pinctrl/consumer.h>2.四个指针 struct pinctrl* pintrl; struct pinctrl_state *pins_default; //"default"标签的gpio,在驱动probe之前会设置成default对应的gpio状态 ..原创 2020-10-26 17:04:30 · 953 阅读 · 0 评论 -
【Android驱动】闪光灯flashlight的记录
拿来主义~mt6580,mt6739闪光灯调试日记: https://blog.csdn.net/zhigouliu/article/details/77836000?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-Bl...原创 2020-09-30 15:55:04 · 1192 阅读 · 0 评论 -
mtk6739 thermal的一次修改
网上的相关的博客太少了,很多都是转发的,实际百度搜到的都是同一篇内容。。。真是太难了能找到点相关的内容也不错啊,感谢原博客的思路: https://blog.csdn.net/stoic163/article/details/80611626------------------------------------------------------------------------------------问题背景: 我这有机器,灭屏休眠状态能充电,and...原创 2020-09-21 15:02:33 · 1765 阅读 · 2 评论 -
【Android系统】开机logo显示
关键词 display_image_on_screen() //aboot.c | | if (fetch_image_from_partition() < 0) { display_default_image_on_screen(); } | | display_default_image_on_scree...原创 2020-09-09 17:23:41 · 591 阅读 · 0 评论 -
【Android驱动】focaltech_touch一次移植经历
1.原始sdk里面有一份focaltech_touch,大致看了下IC配置的是ft5446,dsti那些都对过了,编译boot,dtbo下载进去不通,看起来就是说没检测到IC,读id校验失败2.我用墩泰的Generator.exe生成了一份高通ft5446的驱动,对一下dsti,再次编译读到id了,但是也是校验失败,说不是墩泰的IC,我这是还没有明白啥回事3.我有看了一遍芯片,看到上面小字写的确实是FT5446DQS,然后这时不经意看到下面还写了个P03,重要...原创 2020-09-04 17:06:24 · 1876 阅读 · 3 评论 -
【Android驱动】aw9106驱动代码流程
代码流程: 1.构建struct aw9106设备结构体 2.创建struct i2c_driver aw9106_i2c_driver结构体 3.i2c_add_driver(&aw9106_i2c_driver)注册i2c设备 4.主要的probe函数 probe: 1.创建aw9106结构体指针 2.i2c_check_functionality(i2c->adapter, I2C_FUNC_I2C); 3.申请aw9106结.原创 2020-09-03 14:06:17 · 909 阅读 · 0 评论 -
【Android驱动】i2c驱动的简单总结
简单理解下驱动中的i2c,主要是两个方面一个方面是i2c设备的添加,另一方面是i2c读写数据一.设备驱动中,i2c设备驱动的注册i2c_add_driver(&i2c_driver) i2c_driver //struct i2c_driver ├── .probe ├── .remove ├── .id_table..原创 2020-08-24 17:33:40 · 1315 阅读 · 0 评论 -
【Android驱动】屏和TP的· 原理简单总结
看了博客,别人讲得很详细,但实际工作中可能用不到那么多,太多了也记不下来~ ~别人写的是真的好,参看博客: https://www.cnblogs.com/big-devil/p/982c07ae-c79e-478d-b23e-225c34db1a2d.html TFT LCD原理 https://baike.baidu.com/item/LCD/361823?fr=aladdin#3...原创 2020-07-27 11:03:15 · 1975 阅读 · 0 评论 -
【Android驱动】屏和TP谁先休眠的问题
我确实没回答好这个问题,但是实际工作中只用5分钟就能得到答案。休眠时,屏先休眠;唤醒时,屏先唤醒。实际也是这样。但是为什么屏先休眠呢?屏休眠是display off(0x28) , sleep in(0x10) 这两个动作在suspend里面是一起的。也就是实际中说屏灭了,然后进入休眠状态。反回来想,如果TP先休眠,那么屏必然是没有灭的,这是后看起来就是触摸屏出现无触摸的问题。所以这个是错误的。----------------------换一个角度想,TP实际...原创 2020-07-17 17:22:52 · 1465 阅读 · 6 评论 -
【Android驱动】gt1x TP流程
事出有因,思考一下触发方式的问题gt1x_ts_probe ├── ret = gt1x_request_io_port(); ├ ├── gt1x_init(); ├ ├── INIT_WORK(>1x_work, gt1x_ts_work_func); ├ ├── ret = gt1x_request_input_dev(); ├─ ├── ret = gt1x_request_irq(); ├── ├── 其他宏定义功能 gt1x_init:..原创 2020-07-17 16:22:07 · 1102 阅读 · 0 评论 -
【Android驱动】gt1X TP电压记录
待机vcc 2.8vsda 1.8vscl 1.8virq 1.2v /触摸0vreset 1.8v休眠vcc 2.8vsda 1.8vscl 1.8virq 0vreset 1.8v原创 2020-08-28 12:03:14 · 231 阅读 · 0 评论 -
【Android驱动】高通屏驱动中的panel_read_cmds与read_ddb_start_cmd
都是屏里面读id,看了我们这个android7和android9的,其实是几乎一个东西,用两种代码方式表述都是在mdss_dsi_read_panel_signature里面读id /bootable/bootloader/lk/platform/msm_shared/mipi_dsi.c------------------android7里面是这样的: static char read_id_a1h_cmd[4] = { 0xA1, 0x00, 0x06, 0xA0 }; s.原创 2020-07-14 10:33:33 · 696 阅读 · 0 评论 -
【Android驱动】gt1x 正常启动时的log,用于驱动异常时进行log对比
<4>[ 0.820400] <<GTP-INF>>[gt1x_ts_init:770] GTP driver installing...<4>[ 0.820678] <<GTP-INF>>[gt1x_ts_probe:541] GTP Driver Version: V1.4<2015/07/10><4>[ 0.820688] <<GTP-INF>>[gt1x_t.原创 2020-06-28 13:50:52 · 844 阅读 · 0 评论 -
【Android驱动】高通串口驱动,串口驱动中的msm_serial.c
A.串行子系统层次: /dev/tty* , /dev/ir*, /dev/ppp* ______________________________ | 线路规程 | tty核心层 | tty驱动程序 | 底层驱动程序 B.设备驱动匹配:.原创 2020-06-04 16:10:57 · 3891 阅读 · 0 评论 -
【Android驱动】一个i2c问题 ,TIMEOUT_ERROR(val:510msec) misconfigured GPIO or slave pulling bus line(s) low
[ 1.921325] i2c-msm-v2 78b9000.i2c: msm_bus_scale_register_client(mstr-id:86):0x8 (ok)[ 1.923189] [<c073bedc>] (himax_chip_common_probe) from [<c074c8e8>] (i2c_device_probe+0xcc/0x110)[ 1.923236] [<c074c8e8>] (i2c_devi...原创 2020-05-21 14:08:29 · 1561 阅读 · 1 评论 -
【Android驱动】hxchipset tp log与一个小问题
msm8953_64:/ $ dmesg |grep HXTP[ 5.787139] [HXTP] Himax common touch panel driver init[ 5.787168] [HXTP] himax_common_init_async:Enter[ 5.787337] [HXTP] DT-himax_parse_dt:panel-coords = 0, 720, 0, 1280[ 5.787363] [HXTP] DT-himax_parse_dt.原创 2020-05-09 10:43:11 · 1708 阅读 · 1 评论 -
【Android驱动】LCD代码读ID流程想法
https://blog.csdn.net/jxhln/article/details/89090216把这个博客,mipi读lcd ID寄存器的代码敲了一遍,原排版不太好,强迫症看了不舒服,顺便熟悉一下static char to_page1[] = {0x04, 0x00, 0x39, 0xc0, 0xff, 0x98, 0x81, 0x01};static char read_...原创 2020-04-25 12:04:19 · 2412 阅读 · 2 评论 -
高通lcd优秀博客
哈哈 他山之石 可以攻玉大佬们的博客写得好 mark一波我是没有这么好的排版的 羡慕~~~~~~~------------------------------------------------------------------------分割--------------------------------------------------------------------...原创 2020-04-23 17:56:48 · 721 阅读 · 0 评论 -
【Android驱动】lcd驱动
https://blog.csdn.net/skyxiaojt/article/details/79174427// lcd compatible---1. dectect lcd_id level------------------------- static int init_panel_data(struct panel_struct *panelstruct, ...原创 2019-12-13 16:08:14 · 641 阅读 · 0 评论 -
【Android驱动】高通lcd 代码追踪
frame rate和porch的改动 ---> excel计算 ----> dsi phy registers value ---> .h or dtsicode:dsi-panel-ic-video.dtsi: qcom,mdss-dsi-panel-timings = [76 18 10 00 3c 40 14 1c 12 03 04 00];kerne...原创 2019-10-28 10:09:47 · 676 阅读 · 0 评论 -
【linux驱动】高通gt9xx TP固件升级
高通tp gt9xx固件升级的一次个记录理解: 固件一般是.h和bin文件,配置参数是cfg-data,要分开理解吗... 大概是固件是一次下发,后面配置固件参数这样,以前都是直接更新固件.h或者bin文件...in gtp_init_panel:{ //读出到opr_buf[0],与0xBE比较,判断固件是否有问题 ret = gtp_i2c_r...原创 2019-10-16 15:03:17 · 1369 阅读 · 0 评论