MTK 驱动
文章平均质量分 85
zhangbijun1230
这个作者很懒,什么都没留下…
展开
-
MTK 驱动开发(48)---ARM 看门狗机制
ARM 看门狗机制 [包括MTK] SYS_LAST_KMSG里的hw_status和fiq step的含义阅读数:559[DESCRIPTION]SYS_LAST_KMSG这支文件是记录上次重启前最后的kernel console log,不过除了kernel console log还有hw_status和fiq step两个值。这两个值很重要,可以看出异常的类型和可能的卡死的范围。以下一一介绍...转载 2018-05-20 08:41:23 · 1369 阅读 · 0 评论 -
MTK 驱动(63)---MTK TP驱动移植
MTK TP驱动移植对于MTK TP驱动移植一般分为六部分:1、硬件IO口配置;2、TP驱动移植;3、I2C通信;4、中断触发;5、数据上报;6、虚拟按键;硬件电路:1、GPIO配置打开 vendor\mediatek\proprietary\scripts\DrvGen.exe 选择 cendor\mediatek\proprietary\bootable\bootloader\lk\targe...转载 2018-06-23 11:25:50 · 1557 阅读 · 0 评论 -
MTK 驱动(49)---TP测试规范
TP测试规范1.两指最小距离:用相邻两手指触摸屏幕划线,两条线之间最小距离<12mm。2.边缘测试:人手触摸TP四周,从边往内画,或是从内往边画,沿TP四周进行画线,上下坐标不到边的解析度<1.5mm,左右坐标不到边的解析度<1mm。3.防水测试:距离TP表面20cm喷雾,TP表面有一层薄雾,单指画圆,不能有跳线或断线,TP表面擦干不能有残留点。4.大面积触摸:使用手掌大面积触摸...转载 2018-06-16 14:10:23 · 1741 阅读 · 0 评论 -
MTK 驱动(51)---TP 驱动移植
对于MTK TP驱动移植一般分为六部分:1、硬件IO口配置;2、TP驱动移植;3、I2C通信;4、中断触发;5、数据上报;6、虚拟按键;硬件电路:1、GPIO配置打开 mediatek\dct\DrvGen.exe 选择 mediatek\custom\xiaoxi\kernel\dct\dct\codegen.dws 配置文件配置EINT7_CTP引脚、CTP_RST复位引脚2、TP驱动移植(以...转载 2018-06-16 14:12:29 · 794 阅读 · 0 评论 -
MTK驱动(52)----TP 问题汇总
Android 触摸屏(TP)问题现象分析和解决方法汇总 .No.1现象描述:进入浏览器,网页放大和缩小效果差原因分析:由于TP抖动导致该问题。解决方法:有抖动导致放大缩小不稳定,需要开启防抖功能,在最后主动丢掉2~3个点。 开启防抖会降低报点率,需要结合用户效果体验测试来决定防抖功能舍弃几个点。 No.2现象描述:TP下边缘划线测试80%几率出现断线原因分析:由于LCD显示区域和TP贴合的问题...转载 2018-06-16 14:30:26 · 1124 阅读 · 0 评论 -
MTK 驱动(64)---Mtk touch panel驱动/TP驱动详解
Mtk touch panel驱动/TP驱动详解TP还算是比LCM好理解的多。在启动过程中,先注册/mediatek/custom/command/kernel/touchpanel目录下的具体驱动(如focaltech_driver.c),init函数里实现i2c_register_board_info后把该tp加入到一个数组tpd_driver_list[i]中。之后注册mtk_tpd.c,该...转载 2018-06-25 08:42:36 · 2688 阅读 · 0 评论 -
MTK 驱动(65)---Android 多点触摸协议(Multi-touch Protocol)
Android 多点触摸协议(Multi-touch Protocol)Android 多点触摸协议Multi-touch ProtocolA协议B协议代码编写Protocol AProtocol B关于Linux多点触摸协议大家可以参考kernel中的文档:https://www.kernel.org/doc/Documentation/input/multi-touch-protocol.tx...转载 2018-06-25 08:46:36 · 1713 阅读 · 1 评论 -
mtk 驱动开发(71)---Android getevent,sendevent,input keyevent
Android getevent,sendevent,input keyevent前言getevent和sendevent是Android系统自带的获取设备的收发事件和模拟设备事件进行自动话测试。而input keyevent也在自动话测试中有很大的作用,用于模拟常用按键等。接下来就一一是实践角度分析此三个工具的使用方法。getevent进入android手机,然后输入getevent --hel...转载 2018-06-25 08:47:22 · 817 阅读 · 0 评论 -
MTK 驱动(72)---mtk Android如何调试recovery模块
mtk Android如何调试recovery模块通用的调试程序的步骤:找到调试模块在系统代码中的路径;知道代码在哪里之后就是编译代码了,即如何编译调试模块;编译出目标文件后就要将目标文件放到机器中运行,即如何刷到机器中;目标文件刷到机器中后就是怎么调试代码了,即如何查看调试日志。弄明白上面四个步骤后我们就可以开始定制或者优化模块之路了,当然前提是还得有相应的编程语言基本功和逻辑分析能力才行!mt...转载 2018-06-25 08:52:56 · 1010 阅读 · 0 评论 -
MTK 驱动(66)---Android recovery UI实现分析
Android recovery UI实现分析Android recovery模式为何物?关于这个问题, baidu上已经有无数的答案,不理解的朋友先补习一下。从纯技术角度来讲, recovery和android本质上是两个独立的rootfs, 只是recovery这个rootfs存在的意义就是为android这个rootfs服务,因此被解释为Android系统的一部分。 recovery作为...转载 2018-06-25 08:54:24 · 582 阅读 · 0 评论 -
MTK 驱动(62)---eMMC RPMB分区介绍
eMMC RPMB分区介绍Partitions OvervieweMMC标准中,将内部的 Flash Memory 划分为 4 类区域,最多可以支持 8 个硬件分区,如下图所示:一般情况下,Boot Area Partitions 和 RPMB Partition 的容量大小通常都为 4MB,部分芯片厂家也会提供配置的机会。General Purpose Partitions (GPP) 则在出厂...转载 2018-06-23 09:54:45 · 2390 阅读 · 0 评论 -
MTK 驱动(61)---MT6737 Android N 平台 ----ALSA Driver
MT6737 Android N 平台 ----ALSA Driver1、ALSA简述 ALSA是Advanced Linux Sound Architecture 的缩写,目前已经成为了linux的主流音频体系结构,在内核设备驱动层,ALSA提供了alsa-driver,同时在应用层,ALSA为我们提供了alsa-lib,应用程序只要调用alsa-lib提供的API,即可以完成对底层音频硬件的控...转载 2018-06-23 08:44:20 · 4325 阅读 · 0 评论 -
MTK 驱动(60)---Audio驱动开发之音频链路
Audio驱动开发之音频链路【元器件说明】 本文中使用的 Codec 芯片为 ALC5677。【音频链路模型】 一个常见的音频链路如 图1 所示,包含 音频输入、ADC、DSP、DAC、音频输出 5 大部分。图1 音频链路模型 【音频输入部分】 在 图1 中,DSP 的音频数据来源,也即音频输入部分只有麦克风。而实际上,这部分音频数据也可以从文件中读取,比...转载 2018-06-23 08:41:26 · 4240 阅读 · 0 评论 -
MTK驱动(46)---- Android CPU频率设置(MTK平台)
Android CPU频率设置(MTK平台)1.CPU 频率设置主要设置CPU的最大和最小频率mPerfServiceWrapper.userReg 注册mPerfServiceWrapper.userRegScnConfig 参数设定mPerfServiceWrapper.userEnable 激活设置mPerfServiceWrapper.userDisable 反激活设置mPerfServi...转载 2018-04-28 08:43:41 · 2160 阅读 · 0 评论 -
手机快充芯片及其技术标准和设计原理详解
手机快充芯片及其技术标准和设计原理详解智能手机对于宽带无线通信、图像处理等多方面的需求导致实际耗电呈指数增长。未来5G通信带宽将比4G增加10倍,4K/8K等高清视频技术逐渐应用,CPU、GPU等运算电路处理能力不断增强,这一切都将导致智能手机整体能耗需求将成指数增长。电池容量呈线性缓慢增长,能耗需求缺口逐渐拉大。电池技术迟迟无法突破,成为终端使用的最大瓶颈。电池容量增长缓慢,每年线性提升约15%...转载 2018-05-28 09:00:51 · 2573 阅读 · 0 评论 -
mtk 驱动(55)---mtk指纹移植
mtk指纹移植1. 硬件连接看原理图可知,指纹芯片有六个只要功能引脚,POWER, RST, MI, MO,CLK, EINT,再dws中将spi的四个引脚和中断脚配置好,mt6753只有一组spi即spi0,65-68脚。2.软件代码(1) 拿到代码后将代码放在alps\kernel-3.18\drivers\input\fingerprint文件夹,如果没有此文件夹,新建fin...转载 2018-06-21 08:45:57 · 3147 阅读 · 0 评论 -
MTK 驱动(56)---memory(emmc)移植常见问题总结
MTK 平台memory(emmc)移植常见问题总结2018年02月02日 20:12:01阅读数:42memory移植常见问题有:1、无法下载;2、下载后无法开机;一、无法下载MTK平台会有以下几种情况:在下载过程中经常出现enable Dram fail的错错误,遇到这种情况第一反应先format 一下memory,然后再down,如果format不行过着还是没法dwon的话,那么再做如下分析...转载 2018-06-21 21:47:50 · 1023 阅读 · 0 评论 -
MTK 驱动(58)---MTK G-sensor
MTK G-sensor2015年08月27日 11:14:07阅读数:1379G-sensorG-sensor是加速度传感器,可以通过其来获得分别来自三个不同轴向上的加速度用以通知上层应用做出相应处理。 由于地球的引力作用,gsensor平放时,Z轴方向能感应到1g的重力加速度,如果移动或倾斜,此时垂直的重力加速度会分解到X,Y,Z轴上。所以旋转手机时,X,Y,Z轴的值不断变化,可以理解为手机处...转载 2018-06-22 08:36:22 · 2183 阅读 · 0 评论 -
MTKI 驱动(57)---音频参数含义
1、 音频参数:vendor\mediatek\proprietary\custom\common\cgen\cfgdefault audio_ver1_volume_custom_default.h 修改外放增益VER1_AUD_SPEAKER_VOLUME_DEFAULT ,修改第一个参数即可起作用 对应工程模式audio下面的四种模式...转载 2018-06-23 08:37:05 · 1007 阅读 · 0 评论 -
MTK 驱动(59)---音频基础知识
手机音频接口老王身边经常有同事遇到新买的耳机线无法兼容自己的手机情况,诸如听音乐时只拥有伴奏,麦克风不能使用的问题(当然这种需求催生了某宝上的耳机转换头的生意,真是哪里有需求哪里就有市场啊。。。),还有我们做安卓开发的码农经常遇到headset, headphone,受话器,送话器等等名词,真的是搞得一头雾水。所以基于此,老王决定本节课聊聊手机音频接口那点事儿,普及下Android手机涉及到的音频...转载 2018-06-23 08:38:51 · 5463 阅读 · 0 评论 -
MTK驱动(53)---平台DTS文件匹配过程
MTK平台DTS文件匹配过程1. lk中platform paramter lk阶段会从boot image 解析出dtb数据,然后通过atag方式将dtb数据传递给了内核。 在mtk平台lk在向内核传递dtb数据前会修改部分dtb数据,具体如下: a. 修改model数据,根据获取到的hw code (芯片ID)及 devinfo(mtk平台来自mtk lib库中) ...转载 2018-06-18 11:51:20 · 4083 阅读 · 0 评论 -
MTK 驱动(73)---MTK 6761平台 android O bootloader启动之 Pre-loader -&gt; Lk
MTK 6761平台 android O bootloader启动之 Pre-loader -> Lk1、bootloader到kernel启动总逻辑流程图ARM架构中,EL0/EL1是必须实现,EL2/EL3是选配,ELx跟层级对应关系:EL0 -- appEL1 -- Linux kernel 、lkEL2 -- hypervisor(虚拟化)EL3 -- ARM trust firmw...转载 2018-06-26 09:04:27 · 4517 阅读 · 0 评论 -
MTK 驱动(67)---深入MTK平台bootloader启动之【 lk -&gt; kernel】分析笔记
Pre-loader 运行在ISRAM,待完成 DRAM 的初始化后,再将lk载入DRAM中,最后通过特殊sys call手段实现跳转到lk的执行入口,正式进入lk初始化阶段.一、lk执行入口:位于.text.boot 这个section(段),具体定义位置为:./lk/arch/arm/system-onesegment.ld:10: .text.boot : { *(.text.boot) }...转载 2018-06-26 09:04:58 · 1038 阅读 · 0 评论 -
MTK驱动(77)---Android getevent用法
Android getevent用法getevent命令用法如下:Usage: getevent [-t] [-n] [-s switchmask] [-S] [-v [mask]] [-d] [-p] [-i] [-l] [-q] [-c count] [-r] [device] -t: show time stamps -n: don't print newlines ...转载 2018-07-03 08:44:11 · 497 阅读 · 0 评论 -
MTK 驱动(78)----MTK 平台查看eMMC和DDR的工作频率
eMMC和DDR的工作clk确认MTK 平台查看eMMC和DDR的工作频率 eMMC: adb shell cat /sys/kernel/debug/mmc0/clock DDR: adb shell cat /sys/bus/platform/drivers/emi_clk_test/read_dram_data_rate...原创 2018-07-04 13:40:05 · 5269 阅读 · 0 评论 -
MTK 驱动(80)---MTK平台User版本开机异常/无法开机,如何抓取log
User版本开机异常/无法开机,如何抓取log内容 (2018-07-02)[Description]User版本出现开机异常, 无法开机,如何抓取log 资讯 [Keyword]User版本 开机 log logcat uart main [Solution]首先需要确认开机异常发生在哪个阶段。1. 没有任何LOGO 显示; 在 LK 或者以前就出现异常,此时直接拉出uart 抓取u...转载 2018-07-04 13:42:58 · 1175 阅读 · 0 评论 -
MTK 驱动(79)---如何调整CPU corenum, freq, policy
如何调整CPU corenum, freq, policy 设置平台CPUfreq 与以及core cpufreq控制结点位于 /sys/devices/system/cpu/cpu0/cpufreq/C:\Users\mtk71247>adb shellroot@NOBLEX:/ # cd sys/devices/system/cpu/cpu0/cpufreqcd sys/device...转载 2018-07-04 20:25:42 · 1345 阅读 · 0 评论 -
MTK 驱动(81)----不开机问题快速分析
不开机问题快速分析一、不开机问题首先需要抓串口log(要带kernel的log),根据需要也可能要抓logcat 1、抓份不能开机的串口log 2、抓份正常开机的串口log用来对比 二、检查关键字或者关键log 1、"Preparing for EL3 exit to normal world, LK" 如果串口log里面没有走到这里,说...原创 2018-07-05 13:56:38 · 1369 阅读 · 0 评论 -
MTK 驱动(82)---ABD 调试命令
一、通用 adb root // user版本adb root之后就可以cat节点 adb shell adb reboot // 重启 reboot reboot -p // 关机 adb remount adb pull /data/media/0/mtklog e:mtklog/ adb push e:mtklog/ /data/media/0/mtklog ...转载 2018-07-05 21:13:10 · 2189 阅读 · 0 评论 -
MTK 驱动(83)---mtklog相关知识
一、mtklog抓取: 1. 从windos系统进入到手机/sdcard/mtklog/,复制出来 2. adb pull /data/media/0/mtklog/ e:mtklog/ // 不知道什么目录就find 3. 用工具抓 4. user版本如何打卡mtklog: *#*#。。。 #*#* -> Log and Debugging -> MTKLogger -> o...转载 2018-07-05 21:15:49 · 1782 阅读 · 0 评论 -
MTK驱动(84)---GPS 配置
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 { pins_cm...转载 2018-07-06 16:51:38 · 2212 阅读 · 0 评论 -
MTK 驱动(85)----RPMB key introduction
RPMB key introduction 介绍RPMB的相关功能,RPMB key的写入方法,以及一些常见问题 1. what is RPMB Key?RPMB全称Replay Protected Memory Block, 重放保护存储块,用于存放一些重要的安全信息,eMMC和UFS都有这一区域.RPMB防重放攻击的原理:有两个条件决定了这一块内容具有这样的特性, 一是访问这一区域的数据...转载 2018-07-08 11:14:05 · 6590 阅读 · 0 评论 -
MTK 驱动(76)---如何用adb控制MTKLogger
如何用adb控制MTKLogger内容 (2017-07-17) [DESCRIPTION] 如何通过adb command去控制MTKLogger 开关,设定log路径等等。 [KEYWORD] MTKLogger adb控制 路径 大小 [SOLUTION]1. 开启/关闭adb shell am broadcast -a com.mediatek.mtklogger.ADB_CMD -e ...原创 2018-07-03 08:37:18 · 1298 阅读 · 0 评论 -
MTK驱动(75)--- MT6739平台的thermal高温充电机制调整
MTK MT6739平台的thermal高温充电机制调整2018年06月07日 18:04:29阅读数:123MTK平台的thermal机制是一种高温保护主板机制。主要用于手机在充电过程中,温度太高对手机主板造成损坏。thermal主要由thermal配置文件和thermal的驱动代码进行控制。从一个充电温度高电流降到0的bug开始讲解:首先从log中看到:[plain] view plain c...转载 2018-07-02 08:54:43 · 3303 阅读 · 0 评论 -
MTK 驱动(69)---MTK平台 电池驱动相关
MTK平台 电池驱动相关2017年06月05日 19:03:50阅读数:790MTK平台 电池驱动一、相关代码路径(mt6755/Android6.0)alps/kernel-3.18/drivers/misc/mediatek/include/mt-plat/mt6755/include/mach/mt_battery_meter.h alps/kernel-3.18/drivers/misc/...转载 2018-06-26 09:09:40 · 1395 阅读 · 0 评论 -
MTK 驱动 (70)---MTK Projiectconfig.mk文件详细解释
MTK Projiectconfig.mk文件详细解释AUTO_ADD_GLOBAL_DEFINE_BY_NAMEAUTO_ADD_GLOBAL_DEFINE_BY_VALUEAUTO_ADD_GLOBAL_DEFINE_BY_NAME_VALUE是编译系统开出的3个可以将ProjectConfig.mk中的宏(注意添加的宏必须大写)添加到C/C++源文件的接口AUTO_ADD_GLOBAL_DE...转载 2018-07-01 10:50:23 · 928 阅读 · 0 评论 -
MTK 驱动(71)---DDR进行bitflip压力测试
DDR进行bitflip压力测试 1 DDR 压力测试时常有ddr的bitflip问题,需要一些方法对ddr进行压测 2. 方法 1. 使用MTK flashtool的memorytest功能,目前只支持6755(含)之后的平台,如果不支持的话,flashtool会自动隐藏test选项。 使用说明: 默认是Auto, 可以手动选择到Manual. 参数范围: ...原创 2018-07-01 12:55:16 · 5076 阅读 · 1 评论 -
MTK 驱动(86)---更换CPU后,RPMB无法访问,必须同时更换eMMC
更换CPU后,RPMB无法访问,必须同时更换eMMC内容 (2016-11-15)[DESCRIPTION] MTK平台的RPMB(Replay Protected Memory Block) solution中,rpmb key的生成是和CPU ID相绑定,如果遇到fail IC,或HW交叉实验中需要更换CPU(BB chip),那么就需要把eMMC一同做更换。原因是rpmb key具有OT...转载 2018-07-08 11:32:15 · 5955 阅读 · 0 评论 -
MTK 驱动开发(54)---MTK-thermal.conf温度参数修改的方法
MTK-thermal.conf温度参数修改的方法2018年03月21日 13:55:04阅读数:241thermal.conf设计CPU、PMIC、BATTERY等的温度参数,其路径一般在device/目录下,但是这是个加密文件,直接打开的话就是一堆看不懂的字符,需要使用对应的工具来解密,即thermal_config_tool。1、把需要解密的conf文件放在thermal_config_to...转载 2018-06-20 08:35:43 · 3010 阅读 · 0 评论 -
MTK 驱动(72)---如何初步定位异常关机问题
如何初步定位异常关机问题由于异常关机问题可能存在多种可能性(异常重启,异常关机,hang机,掉电),请务必厘清复现过程和手法,保留问题现场,以下信息请在提case的时候一起提供:1、确认是亮屏关机还是灭屏关机?关机时是否有播放关机动画?如果有播放关机动画可以检查关机流程的调用是否有异常。 2、是直接关机还是关机后会自动重启?可以检查log中是否有走ShutdownThread或者reboot流程,...转载 2018-07-01 19:44:11 · 1163 阅读 · 0 评论