Explorar o código

10 inch new tochcontroller (0x18 ReportID added)

Reinhard Russinger %!s(int64=2) %!d(string=hai) anos
pai
achega
cee38170b2

+ 1 - 1
board/GfA/Display001/DTS_4.4/Display002_10.dts

@@ -198,7 +198,7 @@
 
 &i2c2 {
         egalax_ts@2A {
-                compatible = "eeti,egalax_i2c";
+		compatible = "eeti,egalax_i2c";
                 reg = <0x2A>;
                 pinctrl-names = "default";
                 pinctrl-0 = <&edt_ft5x06_pins>;

+ 40 - 0
board/GfA/Display001/linux_4.4.94_rt19/linux-040_egalax_i2c_add_reportid_0x18.patch

@@ -0,0 +1,40 @@
+diff --git a/drivers/input/touchscreen/egalax_i2c.c b/drivers/input/touchscreen/egalax_i2c.c
+index 9ee5566..827ad1b 100644
+--- a/drivers/input/touchscreen/egalax_i2c.c
++++ b/drivers/input/touchscreen/egalax_i2c.c
+@@ -68,6 +68,7 @@
+ #define REPORTID_MOUSE		0x01
+ #define REPORTID_VENDOR		0x03
+ #define REPORTID_MTOUCH		0x06//0x04
++#define REPORTID_MTOUCH18	0x18
+ #define MAX_RESOLUTION		4095
+ 
+ // running mode
+@@ -93,6 +94,7 @@ struct _egalax_i2c {
+ 	unsigned char skip_packet;
+ 	unsigned int ioctl_cmd;
+ 	int interrupt_gpio;
++	int max_resolution;
+ };
+ 
+ struct egalax_char_dev
+@@ -415,6 +417,11 @@ static void ProcessReport(unsigned char *buf, struct _egalax_i2c *p_egalax_i2c)
+ 		contactID = buf[shift+1];
+ 		x = ((buf[shift+3]<<8) + buf[shift+2]);
+ 		y = ((buf[shift+5]<<8) + buf[shift+4]);
++		
++		if (buf[0] == REPORTID_MTOUCH18) {
++			x >>= 2;
++			y >>= 2;
++		}
+ 
+ 		if( contactID>=MAX_SUPPORT_POINT )
+ 		{
+@@ -580,6 +587,7 @@ static int egalax_i2c_measure(struct _egalax_i2c *egalax_i2c)
+ 	switch(input_report_buf[2])
+ 	{
+ 		case REPORTID_MTOUCH:
++		case REPORTID_MTOUCH18:
+ 			if( !egalax_i2c->skip_packet && egalax_i2c->work_state==MODE_WORKING )
+ 				ProcessReport(input_report_buf+2, egalax_i2c);
+ 			ret = 0;

+ 1 - 1
configs/Display001_4.4.145_bone23_Qt5.7_defconfig

@@ -37,7 +37,7 @@ BR2_LINUX_KERNEL_UIMAGE=y
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x80008000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_USE_CUSTOM_DTS=y
-BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="../GfA/board/GfA/Display001/DTS_4.4/Display001.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_4.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_7.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_10.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_15.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_rru.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_4_nopruss.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_7_gain1.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_5.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_7.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_10.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_4.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_7_rs485.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_10_30Hz.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_7_30Hz.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_4_2020.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_10_30Hz.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_cape.dts"
+BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="../GfA/board/GfA/Display001/DTS_4.4/Display001.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_4.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_7.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_10.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_15.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_rru.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_4_nopruss.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_7_gain1.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_5.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_7.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_10.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_4.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_7_rs485.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_10_30Hz.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_7_30Hz.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_4_2020.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_10_30Hz.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_cape.dts ../GfA/board/GfA/Display001/DTS_4.4/Display001_10_i2chid.dts ../GfA/board/GfA/Display001/DTS_4.4/Display002_784_rs485.dts"
 BR2_PACKAGE_BUSYBOX_CONFIG="../GfA/board/GfA/Display001/busybox.config"
 BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
 BR2_PACKAGE_FFMPEG_GPL=y