diff mbox

ET1602 Touchscreen doesn't work

Message ID BANLkTin1YhxCE5J9suR93eWcWEtviFNLtg@mail.gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Chih-Wei Huang June 8, 2011, 2:56 p.m. UTC
Thanks, Benjamin and Cascardo.

2011/6/8 Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>:
> Thanks, Benjamin. That clarifies a lot and points what the real fix
> should be for this device.
> Chih-Wei, could you send us the results of your tests? I don't have the
> device available right now. I could get it next week, perhaps, if my
> client still gets it.

I'm glad to do so.
But what test results did you want me to show exactly?

Let me clarify my situation:
* Device under test: ASUS ET1602, touchscreen id (1bfd:1688).
* Kernel: 2.6.38, with android patches (from Google)
* Android version: 2.2.2 (froyo)

By the previous observation from getevent, I added
the following patch to android framework:

     }

Then the touch device (event7) is correctly recognized by
the android framework and works fine.

Without this patch, event7 is ignored and only event6 is detected,
but no touch event generated from it.

Let me know if you need more details.

I'll try Benjamin's suggestion tomorrow.

Regards,

Comments

Thadeu Lima de Souza Cascardo June 8, 2011, 3:31 p.m. UTC | #1
On Wed, Jun 08, 2011 at 10:56:29PM +0800, Chih-Wei Huang wrote:
> Thanks, Benjamin and Cascardo.
> 
> 2011/6/8 Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>:
> > Thanks, Benjamin. That clarifies a lot and points what the real fix
> > should be for this device.
> > Chih-Wei, could you send us the results of your tests? I don't have the
> > device available right now. I could get it next week, perhaps, if my
> > client still gets it.
> 
> I'm glad to do so.
> But what test results did you want me to show exactly?
> 
> Let me clarify my situation:
> * Device under test: ASUS ET1602, touchscreen id (1bfd:1688).
> * Kernel: 2.6.38, with android patches (from Google)
> * Android version: 2.2.2 (froyo)
> 
> By the previous observation from getevent, I added
> the following patch to android framework:
> 
> diff --git a/libs/ui/EventHub.cpp b/libs/ui/EventHub.cpp
> index 0e11823..6ef9da1 100755
> --- a/libs/ui/EventHub.cpp
> +++ b/libs/ui/EventHub.cpp
> @@ -670,7 +671,7 @@ int EventHub::open_device(const char *deviceName)
>          device->classes |= CLASS_TOUCHSCREEN | CLASS_TOUCHSCREEN_MT;
> 
>      // Is this an old style single-touch driver?
> -    } else if (test_bit(BTN_TOUCH, key_bitmask)
> +    } else if ((test_bit(BTN_TOUCH, key_bitmask) ||
> test_bit(BTN_MOUSE, key_bitmask))
>              && test_bit(ABS_X, abs_bitmask) && test_bit(ABS_Y, abs_bitmask)) {
>          device->classes |= CLASS_TOUCHSCREEN;
>      }
> 
> Then the touch device (event7) is correctly recognized by
> the android framework and works fine.
> 
> Without this patch, event7 is ignored and only event6 is detected,
> but no touch event generated from it.
> 
> Let me know if you need more details.
> 
> I'll try Benjamin's suggestion tomorrow.
> 
> Regards,
> -- 
> Chih-Wei
> Android-x86 project
> http://www.android-x86.org

I was referring to Benjamin's multi-touch solution, perhaps, reverting
the multi-device patch already. By the way, did you test it without the
multi-device patch and did it work, or did you test it only with 2.6.32?

Regards,
Cascardo.
diff mbox

Patch

diff --git a/libs/ui/EventHub.cpp b/libs/ui/EventHub.cpp
index 0e11823..6ef9da1 100755
--- a/libs/ui/EventHub.cpp
+++ b/libs/ui/EventHub.cpp
@@ -670,7 +671,7 @@  int EventHub::open_device(const char *deviceName)
         device->classes |= CLASS_TOUCHSCREEN | CLASS_TOUCHSCREEN_MT;

     // Is this an old style single-touch driver?
-    } else if (test_bit(BTN_TOUCH, key_bitmask)
+    } else if ((test_bit(BTN_TOUCH, key_bitmask) ||
test_bit(BTN_MOUSE, key_bitmask))
             && test_bit(ABS_X, abs_bitmask) && test_bit(ABS_Y, abs_bitmask)) {
         device->classes |= CLASS_TOUCHSCREEN;