[PATCH v5 1/2] pxa/hx4700: Add Synaptics NavPoint (PXA27x SSP/SPI) driver
Paul Parsons
lost.distance at yahoo.com
Wed Jan 4 11:21:33 EST 2012
Hi Shubhrajyoti,
--- On Mon, 2/1/12, Shubhrajyoti <shubhrajyoti at ti.com> wrote:
> > + int
>
> pressed; /* 1 = pressed, 0 = released */
> Could this be bool ?
OK.
> > +config MOUSE_NAVPOINT_PXA27x
> > + tristate "Synaptics NavPoint
> (PXA27x SSP/SPI)"
> > + depends on PXA27x &&
> PXA_SSP
> > + help
> > + This option enables support
> for the Synaptics NavPoint connected to
> > + a PXA27x SSP port in SPI
> slave mode. The driver implements a simple
> > + navigation pad. The four
> raised dots are mapped to UP/DOWN/LEFT/RIGHT
> > + buttons and the centre of
> the touchpad is mapped to the ENTER button.
> Maybe some help on module building as tristate.
OK.
> > + ret = request_irq(ssp->irq,
> navpoint_int, 0, pdev->name, &pdev->dev);
> Could this be a threadded irq?
The reading of the SSDR could not, because that is needed to clear the
interrupt.
The initial processing of navpoint_packet() could, but would require a new FIFO between the hard irq and threaded irq handlers to buffer the 16-bit data from the SSDR. Since most of the data is ultimately discarded I can avoid the FIFO by keeping this initial processing in the hard irq handler.
The final processing of navpoint_packet(), the calls to input_report_key() and input_sync(), could and should. I presume this was your main concern.
> navpoint_resume(&pdev->dev);
> Could this be pushed to open instead?
It could. In practice the navpoint device would only be opened by the X server, and thus would remain open for the duration of the system anyway.
But I'm happy to add a new open function.
More information about the linux-arm-kernel
mailing list