[AndroidO] [RK3399] -- 适配新的usb touch Panal

前言:

    在适配新的Touch Panal之前,并没有接触过此类的驱动, 所有现简单的阅读了一下驱动代码, 代码路径为:

kernel/drivers/hid/hid_multitouch.c

适配修改代码如下:

diff --git a/kernel/drivers/hid/hid-multitouch.c b/kernel/drivers/hid/hid-multitouch.c
index 2ddb50b..c37d327 100644
--- a/kernel/drivers/hid/hid-multitouch.c
+++ b/kernel/drivers/hid/hid-multitouch.c
@@ -158,6 +158,8 @@ static void mt_post_parse(struct mt_device *td);
 #define MT_CLS_GENERALTOUCH_PWT_TENFINGERS     0x0109
 #define MT_CLS_VTL                             0x0110
 
+#define MT_CLS_QINHENG      0x0111
+
 #define MT_DEFAULT_MAXCONTACT  10
 #define MT_MAX_MAXCONTACT      250
 
@@ -731,7 +733,7 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *fie
                case HID_GD_Y:
 //             printk("kelland HID_GD_Y value:%d\n",value);
 //                     if(value)
-                       value = (32767 - value);
+                       value = (4096 - value);
                        //value = (9481 - value)*16450/9481;
 //             printk("kelland change HID_GD_Y value:%d\n",value);
                        if (usage->code == ABS_MT_TOOL_Y)
@@ -1093,6 +1095,8 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id
                        break;
                }
        }

总结:

  1. 适配的主要任务是进行坐标的正确映射, 可设置设备进入开发者模式 -- 输入 选项 进行触摸位置的辅助判断;
  2. Touch Panal 驱动使用input子系统进行事件管理.
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值