Re: [PATCH 2/2] Support for Stantum multitouch panel

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

 



On Fri, Dec 11, 2009 at 10:03:18AM +1000, Peter Hutterer wrote:
> On Thu, Dec 10, 2009 at 10:28:44AM -0800, Dmitry Torokhov wrote:
> > On Thu, Dec 10, 2009 at 08:37:39AM +0100, Stéphane Chatty wrote:
> > >
> > > Le 10 déc. 09 à 00:15, Dmitry Torokhov a écrit :
> > >
> > >> Hi Stephane,
> > >>
> > >> On Wed, Dec 09, 2009 at 10:49:28PM +0100, Stephane Chatty wrote:
> > >>> +
> > >>> +	if (emulate_touchscreen) {
> > >>> +		if (sd->first) {
> > >>> +			if (!sd->activity) {
> > >>> +				input_event(input, EV_KEY, BTN_TOUCH, 1);
> > >>> +				sd->activity = 1;
> > >>> +			}
> > >>> +			input_event(input, EV_ABS, ABS_X, sd->x);
> > >>> +			input_event(input, EV_ABS, ABS_Y, sd->y);
> > >>> +		}
> > >>> +	}
> > >>
> > >> Why are you doing the above conditionally? Just report it always -  
> > >> less
> > >> setup required for the user.
> > >
> > > As regards setup, the emulate_touchscreen parameter is 1 by default so 
> > > that users don't have to care about it. But I felt compelled to have this 
> > > parameter because the ongoing work on X.org suggests that there might be 
> > > a problem in upper layers with having duplicate information flows. For 
> > > instant, if we associate a slave pointer (MPX terminology) to every 
> > > ABS_MT_X/ABS_MT_Y flow, the ABS_X/ABS_Y will come as an additional flow 
> > > and we'll need to do something to ignore it. Benjamin, Peter, what do you 
> > > think?
> > 
> > I thought Henrik's idea was that driver should use either classic or
> > multitouch events from the data stream but not both. This way users
> > could either use old, non-multitouch-aware drivers or newer ones without
> > issues.
> 
> are we talking about kernel drivers or userspace drivers here?
> 
> not handling ABS_MT_X, ABS_MT_Y properly in evdev is a bug (well,
> not-yet-implemented feature) but if the kernel hands out both ABS_X and
> ABS_MT_X that makes it difficult to determine which event is a valid one and
> which one can be ignored.
> 

No, it is pretty simple - all events are valid, otherwise it is kernel
driver bug. Now, as userspace consumer, if you know how to handle
multitouch protocol then use it, ignore ABS_X/ABS_Y. Otherwise you'd be
dropping ABS_MT_* events and naturally handling ABS_X/ABS_Y.

-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux