Re: [PATCH] to drivers/input/evdev.c to add mixer device "/dev/input/events"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 15, 2005 at 11:27:56AM -0600, Joe Peterson wrote:

> I, and a growing number of others, have been having trouble with using
> touch screen devices in Linux, particularly the motorized ones that fit
> into car dashboards.  The problem is that these devices, which have a
> USB touchscreen (often the eGalax brand), turn off when the screen is
> retracted, causing Linux to remove and/or disconnect the event device
> in /dev/input.
> 
> Using udev to assign a persistent symlink to the device was the first
> thing I tried, but it does not solve the problem, since X windows does
> not see the device when it turns back on, even if it's the same name.  I
> (and others) have tried hacks like changing virtual terminals, etc. to
> get it back, but these are not elegant solutions are are problematic.
> 
> Anyway, I finally decided the thing I needed was something like
> /dev/input/mice, since it is always there for X to see, even if the
> device is off during boot.  But the mousedev devices are not the
> right data format for use with the touch screens (you need "event"
> ones).  So I hacked evdev.c and added "/dev/input/events", which is a
> mixer as well and catches all events from event0, event1, etc.

> Anyway, I hope my change is valuable.  I (and others) would love to see
> it appear in the official kernel source.  I attached the patch.

I really think this is the wrong way to go. Much better would be to fix
the X driver (are you using evtouch or something else?) to notice the
disconnect of the device (it'll get -ENODEV) and connect of the device
(a hotplug event is issued, a select() on /proc/bus/input/devices
returns as readable) and re-open the device.

It's not really possible to mix the events from all devices together,
namely touchscreens, since mixing of ABS_* events is undefined.

-- 
Vojtech Pavlik
SuSE Labs, SuSE CR
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux