MTK 转屏180°

首先要知道,转屏180°,不仅意味着LCM改变180°,同样的TP触摸感应,G-sensor旋转重力感应也需要改变180°。(在改完后发现,摄像头也要改,指南针也得改)
LCM的改变可以找LCM供应商提供
TP的改变需要找到上报函数,在上报函数中改变参数值
G-sensor的改变则是选择或新建一个数组,重新确定X,Y,Z轴的位置,在设备树中选择该数组。
Camera的改变只需要修改公共配置文件就行了。
指南针类似于G-sensor,该对应方向配置表就行了。

第一步:通过配置文件找到机器对应的硬件驱动
配置文件路径:
mt8735_android8.1\kernel-3.18(对应)\arch\arm64\configs\(对应)configs

LCM:
CONFIG_CUSTOM_KERNEL_LCM=“starry2081101CH8028004_dsi_wsvga_vdo_t18”
TP:
CONFIG_TOUCHSCREEN_MTK_GT9XXTB_HOTKNOT=y
camera:
CONFIG_CUSTOM_KERNEL_IMGSENSOR=“imx219_mipi_raw gc2755mipi_raw”

mt8735_android8.1\kernel-3.18\drivers\misc\mediatek\sensors-1.0\hwmon\hwmsen

第二步:找到对应驱动文件并修改
LCM:(分为kernel与lk,都需要修改)
根据厂商给的文件进行修改。
路径:
mt8735_android8.1\kernel-3.18\drivers\misc\mediatek\lcm\starry2081101CH8028004_dsi_wsvga_vdo_t18\starry2081101CH8028004_dsi_wsvga_vdo_t18.c
{0xB1 ,2 , {0x68, 0x01}} ------>{0xB1 ,2 , {0x68, 0x07}}
mt8735_android8.1\vendor\mediatek\proprietary\bootable\bootloader\lk\dev\lcm\starry2081101CH8028004_dsi_wsvga_vdo_t18\starry2081101CH8028004_dsi_wsvga_vdo_t18.c
{0xB1 ,2 , {0x68, 0x01}} ------>{0xB1 ,2 , {0x68, 0x07}}

TP:
打开该路径下的Kconfig文件
mt8735_android8.1\kernel-3.18\drivers\input\touchscreen\mediatek
在这里插入图片描述

查找并进入对应的TP所在路径
然后输入grep -nr “input_report_abs”搜索含有上报函数的文件,进入,进行更改。

G-sensor:
进入该文件
kernel-3.18/drivers/misc/mediatek/sensors-1.0/hwmon/hwmsen/hwmsen_helper.c
搜索struct hwmsen_convert map[]
看是否有满足要求的X,Y,Z配置,没有就自己添加一个。
kernel-3.18\arch\arm64\boot\dts\t16_8735a_64_bsp.dts
然后在该文件中搜索driection 找到对应sensor 改变选择的配置数组。

Camera
vendor\mediatek\proprietary\custom\mt6735\hal\D1\imgsensor_metadata\common\config_static_metadata_common.h

case 0:(0为前摄,1为后摄)
    //======================================================================

CONFIG_METADATA_BEGIN(MTK_SENSOR_INFO_ORIENTATION)
CONFIG_ENTRY_VALUE(270, MINT32)------> CONFIG_ENTRY_VALUE(90, MINT32)
CONFIG_METADATA_END()
//======================================================================
CONFIG_METADATA_BEGIN(MTK_SENSOR_INFO_WANTED_ORIENTATION)
CONFIG_ENTRY_VALUE(270, MINT32)------>CONFIG_ENTRY_VALUE(90, MINT32)
case 1:(0为前摄,1为后摄)
//======================================================================
CONFIG_METADATA_BEGIN(MTK_SENSOR_INFO_ORIENTATION)
CONFIG_ENTRY_VALUE(270, MINT32)------> CONFIG_ENTRY_VALUE(90, MINT32)
CONFIG_METADATA_END()
//======================================================================
CONFIG_METADATA_BEGIN(MTK_SENSOR_INFO_WANTED_ORIENTATION)
CONFIG_ENTRY_VALUE(270, MINT32)------>CONFIG_ENTRY_VALUE(90, MINT32)

指南针:
进入该文件
kernel-3.18\drivers\misc\mediatek\sensors-1.0\magnetometer\mmc3630\mmc3630x.c
搜索direction 找到对应的方向选择节点。
看是否有满足要求的X,Y,Z配置,没有就自己添加一个。
如果没有选择方向,则会默认为dts的方向
kernel-3.18\arch\arm64\boot\dts\t16_8735a_64_bsp.dts
然后在该文件中搜索driection 找到对应sensor 改变选择的配置数组。
kernel-3.18/drivers/misc/mediatek/sensors-1.0/hwmon/hwmsen/hwmsen_helper.c
(他们共用一个表)

若不知道路径,可以问别人,不过建议先git log查看之前类似驱动文件改动的路径。

知识点:LCM,TP,G-sensor驱动内容,启动时LK->LERNEL的流程。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值