- 博客(68)
- 收藏
- 关注
转载 【转载】MTK Sensor 传感器驱动及系统框架 1. 【非常好】【mtk sensor 驱动框架】hwmsen_dev.c
/* MTK sensor 经过了一个中间层,数据上报数据为: 应用层: /dev/input/xxx ---------------------------------------------------------------------------------- 内核: [Input 子系统] /\ || [MTK 添加的 hwmsen 层] [...
2018-05-30 16:10:01
3653
转载 【转载】【非常好】耳机中断驱动检测代码流程.c
/*【背景知识】: 国标耳机插头信号定义: <<<【左声道】【右声道】【麦克】【地】 美标耳机插入信号定义: <<<【左声道】【右声道】【地】 【麦克】 【micbias】: 是用来在耳机有 Mic 的情况下,给 Mic 提供直流偏置,让其正常工作的。 他使用 PWM 控制,用于降低麦克的功耗, 在不用麦克的情况下,可以降低...
2018-05-30 16:09:38
2083
转载 【转载】【非常好】MTK 电池流程.c
/* 概念: ZCV:开路电压 OCV: 开路电压 VC:闭路电压 CAR:库伦计 DOD: 放电深度,100-DOD 即电容容量 Cmax/Qmax: 电池容量相关文件关系: Battery_common.c (s:\i841\mediatek\kernel\drivers\po...
2018-05-30 16:09:21
2737
原创 34. lcm ESD
MTK 平台LCM ESD客制化及代码分析和案例参考文档:[FAQ14251]如何配置LCM ESD Check——读寄存器方式https://onlinesso.mediatek.com/FAQ/SW/FAQ14251[FAQ14273]MT6735/MT6753/MT6580 ESD问题攻略——外部TE方式https://onlinesso.mediatek.com/FAQ/SW/F...
2018-05-30 16:04:21
2659
原创 32. mtk平台androidN cts步骤及调试日志
新增1.判断前摄还是后摄failgrep "camera 0 | camera 1" 后摄failed: camera 0 is opened 前摄failed: camera 0 is opened camera 1 is openedgrep "openID" 后摄failed: openID:0 openID:1 openID:0 openID:0...
2018-05-30 16:03:49
2925
原创 36. gps配置.txt
1. 查看原理图: GPS xLNA --GPIO_GPS_LNA_EN // 据此查到对应GPIO79(AL27)2. 修改dws:3. 修改dts:/* CONSYS GPIO standardization */&pio { consys_pins_default: default { }; gpslna_pins_init: gpslna@0 { ...
2018-05-30 16:00:57
979
原创 led子系统分析:源码driver层2. kernel-3.18\drivers\misc\mediatek\leds\mt6735\leds.c
/* leds.c 分析: */#include <linux/module.h>#include <linux/platform_device.h>#include <linux/delay.h>#include <linux/string.h>#include <linux/ctype.h>#include &...
2018-05-25 11:29:32
674
原创 led子系统分析:源码driver层1. kernel-3.18\drivers\misc\mediatek\leds\led_drv.c
/* led_drv.c分析: 1.mt65xx_leds_init() // 模块入口 platform_driver_register(&mt65xx_leds_driver); 2.static struct platform_driver mt65xx_leds_driver = { .probe = mt65xx_leds_probe, 3.st...
2018-05-25 11:28:38
646
原创 led子系统分析:源码核心层4. kernel-3.18\drivers\leds\trigger\ledtrig-timer.c
/*应用层控制led的方法: 读: cat /sys/class/leds/xxx/delay_on 写: echo 255 > /sys/class/leds/xxx/delay_off读 cat:static ssize_t led_delay_on_show(struct device *dev, struct device_attribute *attr, char *b...
2018-05-25 11:26:54
741
原创 led子系统分析:源码核心层3. kernel-3.18\drivers\leds\led-triggers.c
/* led-triggers.c 分析: 1. 导出13个接口: led_trigger_register() // 用于注册一个trigger led_trigger_unregister() // 用于注销一个trigger led_trigger_register_simple() // 用于注册一个trigger led_trigger_unregister_si...
2018-05-25 11:25:50
1761
原创 led子系统分析:源码核心层2. kernel-3.18\drivers\leds\led-core.c
/* led-core.c 分析: 1. 导出5个接口: led_blink_set() // 用来控制led的闪烁的,以及闪烁的时间 led_set_brightness() // 用来直接设置led的亮灭的 led_blink_set_oneshot // 闪烁一次 led_update_brightness // 更新亮度 led_stop_software...
2018-05-25 11:24:54
789
原创 led子系统分析:源码核心层1. kernel-3.18\drivers\leds\led-class.c
/* led-class.c分析: 1.leds_init() // 模块入口 leds_class = class_create(THIS_MODULE, "leds"); leds_class->pm = &leds_class_dev_pm_ops; leds_class->dev_groups = led_groups;*//* SI...
2018-05-25 11:24:01
1257
原创 i2c子系统分析:源码3. kernel-3.18\drivers\i2c\busses\i2c-s3c2410.c
/* linux/drivers/i2c/busses/i2c-s3c2410.c * * Copyright (C) 2004,2005,2009 Simtec Electronics * Ben Dooks <ben@simtec.co.uk> * * S3C2410 I2C Controller * * This program is free software; ...
2018-05-25 11:19:23
791
原创 i2c子系统分析:源码2. kernel-3.18\drivers\i2c\i2c-core.c
/*i2c_core.c 分析 postcore_initcall(i2c_init);module_exit(i2c_exit);#ifdef CONFIG_I2C_COMPAT // 此宏为关重要的数据结构:struct i2c_driver { // 描述一个从设备驱动对象 int (*probe)(struct i2c_client *, const struc...
2018-05-25 11:14:46
1688
原创 i2c子系统分析:源码1. kernel-3.18\drivers\misc\mediatek\i2c\mt6735\i2c.c
/* i2c.c分析 1. mt_i2c_init() // module_init | platform_driver_register(&mt_i2c_driver) 2. static struct platform_driver mt_i2c_driver = { .probe = mt_i2c_probe, .remove = mt_i2c_re...
2018-05-25 11:13:02
1867
原创 input子系统分析:源码2. kernel-3.18\drivers\input\evdev.c
/* * Event char devices, giving access to raw input device events. * * Copyright (c) 1999-2002 Vojtech Pavlik * * This program is free software; you can redistribute it and/or modify it * under ...
2018-05-25 11:09:08
534
原创 input子系统分析:源码1. kernel-3.18\drivers\input\input.c
/* * The input core * * Copyright (c) 1999-2002 Vojtech Pavlik *//* * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public Licens...
2018-05-25 11:07:54
1092
原创 input子系统分析:3. 应用层获取数据,及驱动数据上报流程
==============================================1. 应用程序调用open() 以androidM Gsensor为例hal层中acceleration.cpp中FindDataFd() fd = open("/sys/class/misc/m_acc_misc/accdevnum", O_RDONLY); len = read(fd, ...
2018-05-25 11:05:44
2361
原创 input子系统分析:2. 开机注册流程
=============================================input 核心层: input.c 【注册流程】static LIST_HEAD(input_dev_list); // 定义全局链表 : input devicestatic LIST_HEAD(input_handler_list); // 定义全局链表 : input handl...
2018-05-25 11:05:39
481
原创 input子系统分析:1. 概述及主要数据结构分析
一、概述1. input子系统是什么? input子系统是linux用来管理不同类型、不同原理、不同的输入信息的众多输入设备的系统 这边要注意,input子系统只支持字符流的输入设备,并不支持如lcm、camera等非字符流的设备 input子系统支持的常见设备有:键盘、鼠标、触摸屏、游戏手柄、sensor、按键 linux中有很多个子系统:平台总线,inp...
2018-05-25 11:05:29
391
原创 33. Vibrator调试日志
1.dts中 len6737m_35_m0.dts /{ vibrator0:vibrator@0 { compatible = "mediatek,vibrator"; vib_timer = <25>; vib_limit = <9>; vib_vol= <5>; // 这里等级对应关系,电压越高震动越强 /* ...
2018-04-10 16:58:04
597
原创 Unbalanced enable for IRQ 298问题的解决.txt
案例一 : tp(gsl915)驱动中大量打印警告log 现象 : 项目无法完整跑完cts,mtk怀疑是tp大量警告log导致 平台 : androidN,MTK6737 排查过程: 1. 以下log井喷: [ 77.574558] -(1)[160:mtk-tpd]------------[ cut here ]------------ [ 77.574586] ...
2018-04-10 16:51:57
2795
转载 3. MTK 底层耳机中断上报流程
转载自:http://blog.youkuaiyun.com/wangjun7121/article/details/62114085?locationNum=12&fps=1【背景知识】:国标耳机插头信号定义: <<<【左声道】【右声道】【麦克】【地】美标耳机插入信号定义: <<<【左声道】【右声道】【地】【麦克】 123
2017-12-18 11:55:07
1972
转载 2. MTK6737 7.0 Accdet驱动分析总结
MTK6737 Accdet驱动分析总结注:本文多处转载,已难以找到出处一、相关概念介绍1、EINT+ACCDET检测中断 EINT中断:主要用来检测耳机的插入和拔出,即plug in 和plug out ACCDET中断:主要用来检测耳机的事件类型,包括PLUG_OUT、PLUG_IN、MIC_BIAS(耳机上的mic)和HOOK_SWITCH
2017-12-18 11:52:15
3789
原创 31. 开机时间慢调试
一、常用调试方法: 1. adb 2. 查看log mtklog : bootprof 3. 4. 案例一 : 开机时间慢 - tp(gsl680)下发固件时间过长 现象 : 平台 : androidN,MTK6337 排查过程: 1. 导出mtklog,查看 bootprof Line 1079: [ 8.801582] (1)[1...
2017-12-08 17:37:29
1751
原创 30. accdet调试日志
一、常用调试方法: 1. adb DCC模式:查看中断计数 magc6737t_65_n:/ $ cat /proc/interrupts | grep "pmic" 494: 6 mt-eint 206 pmic-eint magc6737t_65_n:/ $ cat /proc/interrupts | grep "pmic" 494: ...
2017-12-08 17:36:47
2184
原创 29. 各层如何添加宏控制
1. lk & preloader2. kernel kernel-3.18/arch/arm64/configs/xxx_debug_defconfig、xxx_defconfig CONFIG_KST_SUB_STROBE_SUPPORT=y kernel-3.18/kst/Kconfig // 在任意一个Kconfig 中定义即可,此步易落 config...
2017-12-08 17:36:22
1105
1
原创 28. OTG调试
1. mk 配otg KST_OTG_USB = yes2. dws配中断脚和使能脚 (根据原理图中“09_POWER_MT6328”页中, "MARK"部分"PSC5425"充电ic中的【OTG】引脚所连接 - 使能脚64) (根据原理图中“09_POWER_MT6328”页中, "MARK"部分"PSC5425"充电ic中的【STAT】引脚所连接 - 中断脚0) v618_m550
2017-12-08 17:35:53
1892
原创 27. hall霍尔传感器
零、2. dws配中断脚和使能脚 (根据原理图中“09_CAMERA_SENSOR”页中, "HALL"部分【OUT】引脚所连接 - 使能脚GPIO12) v666为例 dws配置pin脚: - 由于硬件上拉->dws也要配成上拉 EintMode|Def.Mode M0|M1|M2|M3|M4|M5|M6|M7|InPull En|InPull SelHigh|Def.Dir...
2017-10-10 10:29:39
3653
原创 26. 常见i2c地址_修改i2c速率
一、 如何修改i2c 速率 1. 在设备驱动代码中i2c_probe(),添加: spin_lock(&kdsensor_drv_lock); g_pstI2Cclient->timing = i2cSpeed; // 遇到过摄像头读不到id: 300 -> 100 spin_unlock(&kdsensor...
2017-10-10 10:29:20
6218
原创 23. 中断配置_dws_dts
一、以计步器为例平台: androidN,MTK6737芯片: qma69811. 查看硬件连接或excel表格,确定中断脚 :GPIO602. 配置dws: GPIO60: M0 Def.Dir:IN In GPIO_GSE_1_EINT_PIN EINT60: GSE_1 Debounce:0 Polarity:Low Sensitive_Level:Level
2017-10-10 10:28:06
3407
原创 22. 编译报错分析
常见编译报错汇总关键字: error: make[ FAILED: multiple definition1. 摄像头兼容个数超过16个 - 增大为18个 alps\kernel-3.18\drivers\misc\mediatek\imgsensor\src\mt6735m\kd_sensorlist.h #define MAX_NUM_OF_SUPPORT_SENSOR 1...
2017-10-10 10:27:34
3034
原创 21. 重启log分析
案例一 : kernel重启 - mt6580.dtsi 现象 : 平台 : androidN,MTK6580 排查过程: 1. 打串口log,发现如下: [ 1.607970] <2>.(2)[1:swapper/0]musb-hdrc musb-hdrc.0.auto: Cannot find usb pinctrl iddig_irq_init [ ...
2017-09-04 11:58:45
6776
2
原创 20. FlashLight调试日志
零、闪光灯配置步骤(以真闪IC:DIO5151为例):1. 查看硬件原理图,得知闪关灯IC接在cpu的哪两个GPIO上: main_flashlight:(后闪) enable : GPIO43 mode : GPIO80(H-flashlight模式 L-torch手电筒模式) sub_flashlight:(前摄) enable : GPIO422. dws配置pin脚...
2017-09-04 11:55:55
2666
1
原创 18. 功耗问题调试日志
mh公司功耗要求:整机(包括所有外设)在飞行模式灭屏下,待机电流在5ma以内一、功耗问题一般调试办法 - 【逐个去掉】 1. 外接精确电源(实验室有),电脑端有一个连接电源的软件(龙旗电流检测工具),可以查看实时电流与平均电流 2. 切换为飞行模式 - 排查modem的影响 10ma 以上 -> 查看mtklog中的kernel_log看是否有休眠"suspend" 10ma...
2017-07-13 21:06:27
1636
原创 17. 权限添加-解决运行报错(te文件)
1. 报权限错误 1.1 main.log: 01-01 00:23:19.017539 960 995 E sensord : [99452248851][ERR](vendor/mediatek/proprietary/hardware/sensor/sensord/sensord_hwcntl_implement.cpp Ln1688) can not open /sys/bu...
2017-06-30 15:59:45
1883
原创 16. dual_speaker调试
1.修改mk文件 - KST_KERNEL_BOARD_CUSTOM03 = + KST_KERNEL_BOARD_CUSTOM03 = KST_TWO_SPEAKER - KST_MISC_CUSTOM= KST_SUB_FLASH_SUPPORT + KST_MISC_CUSTOM= KST_SUB_FLASH_SUPPORT KST_AUDIO_SUPPORT_2IN1_SP
2017-06-30 15:59:08
1180
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人