From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Dmitry Torokhov" Subject: Re: [PATCH] touchscreen: Fujitsu touchscreen driver Date: Tue, 22 May 2007 09:24:20 -0400 Message-ID: References: <20070221221629.59088fed@localhost> <200704040116.58366.dtor@insightbb.com> <20070405133615.6536eea5@localhost> <200704052227.19831.dtor@insightbb.com> <20070501103916.4580a674@localhost.localdomain> <20070521120229.3ab484ca@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20070521120229.3ab484ca@localhost> Content-Disposition: inline Sender: owner-linux-input@atrey.karlin.mff.cuni.cz List-Help: List-Owner: List-Post: List-Unsubscribe: To: Stephen Hemminger Cc: Andrew Morton , linux-input@atrey.karlin.mff.cuni.cz List-Id: linux-input@vger.kernel.org Hi Stephen, Thank you for looking at the patch and working out quirks... On 5/21/07, Stephen Hemminger wrote: > + > +#define X_AXIS_MIN 90 > +#define X_AXIS_MAX 4000 > +#define Y_AXIS_MIN 185 > +#define Y_AXIS_MAX 4000 I am not sure that we want to use data from one particular laptop here. Since we don't know a way to query the thouchscreen on a particular box I'd stick with physical protocol limits (0 - 4095) and have user calibrate the screen. Have you tried going through the calibration procedure with evtouch driver? Does it not work or works incorrectly (I have no idea since I don't have the hardware)? > +static irqreturn_t fujitsu_interrupt(struct serio *serio, > + unsigned char data, unsigned int flags) > +{ > + struct fujitsu *fujitsu = serio_get_drvdata(serio); > + struct input_dev *dev = fujitsu->dev; > + > + if (fujitsu->idx == 0) { > + /* resync skip until start of frame */ > + if (!(data & 0x80)) > + return IRQ_HANDLED; The data sheet that I have shows the following for the first byte: 1 C 0 0 R S S S Where C is 1 while in calibration mode (which we don't use) and R is 1 when no coordinate corection was done. My original patch had the check "(data & 0xf8) != 80", did it give you issues with the data stream coming out of the touchscreen? Or the missing fujitsu->idx = 0 is all that is really needed? Thanks. -- Dmitry