自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

原创 插入DC开机

8321:#define AUXADC_BASE0x11003000

2022-06-18 17:54:34 313

原创 插入USB开机

客户要求:1. 3.45以下lk充电2. 3.45 - 3.6 kernel充电3. 3.6以上自动开机

2022-06-18 17:51:28 589 1

原创 8168高分屏画面卡顿

(200730_19:48:00.994)[1146] [DISP]read from lcm 0x0A: 0(200730_19:48:00.994)[1146] [DISP]lcm is not connected

2022-06-18 17:40:07 703

原创 netlink应用编程例子

C Code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 ..

2022-05-31 08:18:50 241

原创 netlink接口

1、netlink及相关接口说明 说到驱动和应用层进行数据通信,很多人就会想到使用传统的ioctl,诚然,很多时候应用层调用驱动进行参数配置和参数获取使用的也正是ioctl的方式,但这种方式有一种局限性,那就是只适合于数据量较小且操作不频繁的情况。否则,频繁操作io将大大影响设备的性能,甚至造成设备宕机。 最近在做一个关于wifi诊断需求时,需要记录wifi连接过程中的控制帧和管理帧,以及STA断开及断开原因。由于wifi驱动不断在进行数据帧和控制帧的交互,如果直接在驱动...

2022-05-31 08:18:41 630

原创 Netlink通信机制

linux用户空间与内核空间通信——Netlink通信机制一般来说用户空间和内核空间的通信方式有三种:/proc、ioctl、Netlink。而前两种都是单向的,但是Netlink可以实现双工通信。1、Netlink socket的作用:  Netlink socket 是一种Linux特有的socket,用于实现用户进程与内核进程之间通信的一种特殊的进程间通信方式(IPC) ,也是网络应用程序与内核通信的最常用的接口。  Netlink 是一种在内核和用户应用间进行双向数据传输的非常好的方

2022-05-31 08:18:36 792

原创 system设置ro_boot_属性

将kernel cmdline的属性,设置为"ro.boot."/"ro.kernel."我们在cmdline自定义的属性也可以通过这种方式传递给上层,我们看一下源码是如何实现的:Android8.1/9.0:staticcharqemu[32];intmain(intargc,char**argv) ->process_kernel_cmdline();  ->import_kernel_cmdline(false,import_kernel_...

2022-05-30 03:17:08 724

原创 00.lk->kernel(mtk)

mtk平台没有跑app/aboot/aboot.c 跑的是app/mt_boot/mt_boot.c/ { model = "MT8167"; compatible = "mediatek,mt8167"; interrupt-parent = <&sysirq>; #address-cells = <2>; #size-cells = <2>; ...

2022-05-30 03:16:45 405

原创 08.MT8175框架图

2022-05-30 03:16:19 394

原创 [email protected]

find -iname "[email protected]"./vendor/lib/hw/[email protected]./obj/SHARED_LIBRARIES/[email protected]_intermediates/LINKED/[email protected]./obj/SHARED_LIBRARIES/android.hardware.

2022-05-30 03:16:01 140

原创 06.hidl参考文档

SEAndroid相关总结https://www.2cto.com/kf/201611/562711.htmlAndroid SELinux avc dennied权限问题解决方法https://blog.csdn.net/tung214/article/details/72734086解决avc-denied之设置SELinux策略https://blog.csdn.net/eliot_shao/article/details/51859083Android 8.0 工

2022-05-30 03:15:49 93

原创 05.HIDL_SELINUX权限

\device\mediateksample\tb8163p3_bsp\device.mkPRODUCT_PACKAGES += [email protected]   //hidl主文件PRODUCT_PACKAGES += [email protected]  //hidl服务文件PRODUCT_PACKAGES += [email protected]  //hidl服务自启动..

2022-05-30 03:15:24 540

原创 04.service执行sh脚本

Android init.rc如何启动service去执行sh脚本2016年06月02日 10:29:41 帅不过三秒的码农 阅读数:4825 标签: Androidinit.rc 更多个人分类: Android版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bukker/article/details/51564432在Android开发中经常会遇到,在应用层想去执行一个脚本来完成某些底层相关的操作,但在应用层又没有roo...

2022-05-30 03:15:00 431

原创 03.init.rc文件规则和解析

Android系统启动之init.rc文件解析过程目录第一篇:Android系统启动之bootloader第二篇:Android系统启动之Init流程(上)第三篇:Android系统启动之Init流程(下)第四篇:Android系统启动之init.rc文件解析过程第五篇:Android系统启动之zyogte进程第六篇:Android系统启动之zyogte进程java(上)第七篇:Android系统启动之zyogte进程java(下)第八篇:Android系统启动之SystemServe

2022-05-30 03:14:53 237

原创 02.HIDL绑定式和直通式区别

Android P HIDL服务绑定模式与直通模式的分析HIDL绑定式和直通式区别以前Adnroid版本的hal和framwork的代码紧密联系起来的,Google为了framework升级的方便在Android 8.0 上对 Android 操作系统底层进行了重新架构。新的架构已经了解一部分,但仍需要不断学习,加上最近需要将一些项目升级到Android O,所以决定该好好看看了,阅读代码过程中发现存在一种后缀为.hal的文件,该文件改变了我的一些久的思想。该文件具体的作用和语法后续

2022-05-30 03:14:46 1341

原创 01.HIDL新手入门

Android 架构 - HIDLAndroid的安全机制(SEANDROID)linux IO 几种穿透模式解析AndroidO Treble架构分析1JNI详解---从不懂到理解JNI实战(一):JNI HelloWorldandroid 自定义驱动(第三篇:HIDL服务端)HIDL 使用方式ANDROID P HAL层添加HIDL实例ANDROID SEPOLICY简要记/system/hwservicemanag

2022-05-30 03:14:38 144

原创 00.SELINUX

Android SELinux avc dennied权限问题解决方法这篇文字本人原创于2015年,并作为原厂发布文档release,当时并未上传博客,估计已经被很多网友发表了。1.概述SELinux是Google从android 5.0开始,强制引入的一套非常严格的权限管理机制,主要用于增强系统的安全性。然而,在开发中,我们经常会遇到由于SELinux造成的各种权限不足,即使拥有“万能的root权限”,也不能获取全部的权限。本文旨在结合具体案例,讲解如何根据log来快速解决90%.

2022-05-29 20:45:32 282

原创 14.mtk假横屏

将 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43

2022-05-29 20:45:24 716

原创 13.mtk lcm gamma调试

R255 G0 B0 纯红R255 G255 B0 纯黄R255 G255 B255 纯白R0 G0 B0 纯黑R0 G255 B255 天蓝R0 G0 B255 深蓝R255 G0 B255 洋红亮度:亮度就是各种图像色彩模式下,图形原色的明暗程度。亮度的调整就是明暗程度的调整。亮度的范围是从0——255,共256种色调。色相:色相就是从物体反射或透过物体传播的颜色。简单的说色相就是色彩颜色,对色相的调整就是在多种颜色之间的变化,例如光油红、橙、黄、绿、晴青、蓝、紫七色

2022-05-29 20:45:15 1062 3

原创 12.nvram_lcm_兼容

根据NVRAM固定地址的值,加载不同分辨率的屏驱动和logoif(LVDS_SELECT_FLAG == 0x31)  B116XAN023_LVDS  1366x768}else{  KD116N5_40NV_B12_MIPI1368x768}相关文件:M frameworks/base/data/sounds/AllAudio.mkM frameworks/base/data/sounds/AudioPackageGo.mkM ...

2022-05-29 20:45:02 278

原创 11.ISINK充电呼吸灯

\kernel-4.14\drivers\misc\mediatek\include\mt-plat\mtk_boot.h 1 2 3 4 5 6 7 //liwyaddforisink1start #defineSUPPORT_ISINK1_BREATH_MODE #ifdefSUPPORT_ISINK1_BREATH_MODE //externintg_battery_capacity; ext...

2022-05-29 20:44:52 505

原创 10.sprd背光流程

Android 背光流程小结现在使用aidl方式:/hardware/interfaces/light/aidl/android/hardware/light/ILights.aidl 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27.

2022-05-29 20:44:40 1219

原创 09.mtk背光流程

基于 Light 介绍安卓 8.0 HAL 变化/frameworks/base/services/core/java/com/android/server/lights/LightsService.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 .

2022-05-29 20:44:31 1026

原创 08.mtk背光等级和背光流程_KERNEL

基于led框架的驱动分析Led驱动架构理解史上最详细Linux 虚拟文件系统sysfs之属性文件attribute 整理(一)史上最详细Linux 虚拟文件系统sysfs之属性文件attribute 整理(二)一、介绍一下lk和kernel的默认亮度修改位置:/vendor/mediatek/proprietary/bootable/bootloader/lk/platform/mt8168/include/platform/mt_leds.h 1 2 .

2022-05-29 20:43:44 1910 1

原创 07.external_charger_common_cpp

/vendor/mediatek/proprietary/external/charger/common.cpp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 .

2022-05-29 20:43:36 97

原创 06.MTK关机充电动画显示

关机充电的第一张logo:/vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo/rules.mkRESOURCE_OBJ_LIST += \ $(BOOT_LOGO_DIR)/$(1)/$(1)_uboot.raw \ $(BOOT_LOGO_DIR)/$(1)/$(1)_battery.raw \ $(BOOT_LOGO_DIR)/$(1)/$...

2022-05-29 20:43:29 1292

原创 05.lcm_suspend/lcm_resume

(220415_20:32:12.936)[ 107.145152] <2>.(1)[507:HwBinder:441_1][Kernel/LCM]lcm_suspend() enter(220415_20:32:12.936)[ 107.145385] <2>.(2)[443:[email protected]]mt635x-auxadc mt635x-auxadc: name:BAT_TEMP, channel=3, adc_out=0x5db, adc_result=...

2022-05-28 22:14:34 408

原创 04.lcm兼容

C Code \kernel-4.9-lc\drivers\misc\mediatek\lcm\FX_K101_IM2BA02_MIPI\FX_K101_IM2BA02_MIPI.c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 .

2022-05-28 22:13:16 715

原创 03.lcm数据传输

在读/写指令时,Generic指令是不区分Index和parameter的,而DCS会默认把data0作为Index然后计算parameter数目。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29...

2022-05-28 22:12:05 536

原创 02.8321lcm简单配置

706m:D14 - GPIO83 - VLCD_AVDD_EN -LCM_STBYAA25 - GPIO70 - LCM_RESETVGP1 - VGP1_PMU -LCM_VDD863:AA3 - GPIO17 - LCM_VDD_EN -LCM_VDD33AA4 - GPIO18 -GPIO_LCM_PWR_ENAA24 - GPIO68 - LPTE - LCM_STBYAA25 - GPIO70 - LCM_RESETVGP1 - VGP1_PMU ...

2022-05-28 22:11:14 1223

原创 01.mipi时序

Video模式又分三种子模式:1 Non-burst Mode Sync pulses: 在这种模式下,DSI基于各种不同的同步数据包来做数据同步。这种数据包括:重构,时间校准等。更具体的请参考DSI协议标准。2 Non-burst Mode Sync event: 这种模式和第一种模式很像,但是这种模式不会发重构和时间校准的数据包,它们只发送一种叫做”Sync event”的包。3 Burst mode: 在horizontal 的时序是一样的情况下DSI会把连接的速度提升到Panel支持的最

2022-05-28 22:09:39 2060

原创 00.mipi协议

mipi差分信号原理理解mipi协议MIPI-DSI LP mode命令及格式详解MIPI信号的分析--结合示波器实际测试波形MIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写。MIPI(移动行业处理器接口)是MIPI联盟发起的为移动应用处理器制定的开放标准总结:对应于同步信号完成并串转换;*HS 状态为高速低压差分信号,传输高速连续串行数据;*LP 状态为低速低功耗信号,传输控制信号和状态信号;*

2022-05-28 22:06:35 2356

原创 MIPI长包短包

接芯片长包,短包的命令不一样,这点最容易忽略,导致平初始化失败。主要看这几种,问清楚是哪种,或自己试:          DCS   GEN#define LPDT_LPK 0x39  //0x29#define LPDT_SPK 0x15  //0x23#define Norm_SPK  0x05  //0x13 /*dcsread/write */#define DTYPE_DCS_WRITE  0X05  /* short wirt...

2022-05-28 21:54:31 2372

原创 BatteryCapacityCtrl电量控制(GM3.0)

diff --git a/alps/device/mediatek/mt6765/thermal.conf b/alps/device/mediatek/mt6765/thermal.confindex 0d50d6f2ebc..ab59c49b606 100755--- a/alps/device/mediatek/mt6765/thermal.conf+++ b/alps/device/mediatek/mt6765/thermal.conf@@ -49,7 +49,7 @@ PVRbV%9@8

2022-05-28 21:50:57 2149

原创 BatteryCapacityCtrl电量控制

在Settings->Battery新增选项,以控制电量保持在设定的百分比:Otimização da vida útil da bateria  #电池寿命的优化Carga Completa ativada          #满载启动 ->Otimização da vida útil da bateria   #电池寿命的优化  ->Carga Completa          #满载   Carregue seu dispositivo até 10...

2022-05-28 21:50:48 755

原创 08.netlink_kernel_create

(210919_11:15:55.975)[ 206.398032] <1>-(1)[511:fuelgauged] bmd_ctrl_cmd_from_user+0x1bd0/0x1d5c(210919_11:15:55.975)[ 206.398036] <1>-(1)[511:fuelgauged]nl_data_handler+0x158/0x184(210919_11:15:55.975)[ 206.398041] <1>-(1)[511:fue...

2022-05-28 21:50:33 810

原创 07.power_supply_register

这里介绍power_supply_register注册的几个结构体/kernel-4.14/include/linux/power_supply.h 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31.

2022-05-26 08:06:46 838

原创 06.chrdet_int_handler

#define __SPIN_LOCK_UNLOCKED(lockname) \ (spinlock_t ) __SPIN_LOCK_INITIALIZER(lockname)#define ATOMIC_NOTIFIER_INIT(name) { \ .lock = __SPIN_LOCK_UNLOCKED(name.lock), \ .head = NULL }#define ATOMIC_NOTIFIER_HEAD(name) \ struct ...

2022-05-26 08:06:37 477

原创 05.“power_misc_thread“线程

异常处理线程:/kernel-4.19/drivers/power/supply/mtk_battery.cvoid mtk_power_misc_init(struct mtk_battery *gm){ mutex_init(&gm->sdc.lock); alarm_init(&gm->sdc.kthread_fgtimer, ALARM_BOOTTIME, power_misc_kthr...

2022-05-26 08:06:29 164

原创 04.“battery_thread“线程

/kernel-4.14/drivers/power/supply/mediatek/battery/mtk_battery_core.c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 structmtk_batterygm; voidmtk_battery_init(structplatf...

2022-05-26 08:06:22 461

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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