Platform: RK3399
OS: Android 7.1
Kernel: v4.4.83
背景:
接了HDMI的副屏上的USB Touch,发现使用的时候坐标点是颠倒的,于是在驱动中根据USB的
Vendor ID来进行判断,然后更正下上报坐标点的值。
解决方法:
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index f62a9d6..7167144 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -164,6 +164,11 @@ static void mt_post_parse(struct mt_device *td);
#define MT_USB_DEVICE(v, p) HID_DEVICE(BUS_USB, HID_GROUP_MULTITOUCH, v, p)
#define MT_BT_DEVICE(v, p) HID_DEVICE(BUS_BLUETOOTH, HID_GROUP_MULTITOUCH, v, p)
+
+//Kris, use vendor id to decide if mirroring touch point or not.
+static int vendor_id;
+
+
/*
* these device-dependent functions determine what slot corresponds
* to a valid contact that was just read.
@@ -639,6 +644,17 @@ static void mt_c