On Wednesday 15 July 2009, Alessandro Rubini wrote: > From: Alessandro Rubini <rubini@xxxxxxxxx> > > Since the SPI master might use DMA, tx and rx buffers must live on > different cache lines. Not true. Full duplex tranfsers using a single buffer are explicitly allowed. > Here one cache line is used for all tx and > another for all rx. This will work whether the SPI master maps/unmaps > one buffer at a time or all together. The patch only fixes the analog > inputs, as touch screen operation is not affected, although I didn't > check why. I tested on at91sam9263, where buffers are all mapped > initially and unmapped individually at irq time. If that spi_master driver mis-handles this, it's a bug in that driver. (And I hope you were using a version of the '9263 chip which fixed its SPI bugs. Initial silicon had a SPI controller which was essentially unusuable in a multitasking environment.) > The issue was discussed with Russell King on linux-arm-kernel. Gee, but not with the author of that driver or the maintainer of the SPI framework. Who could have pointed out instantly where the true bug resides. > > Signed-off-by: Alessandro Rubini <rubini@xxxxxxxxx> > Cc: Russell King <linux@xxxxxxxxxxxxxxxx> > Cc: David Brownell <dbrownell@xxxxxxxxxxxxxxxxxxxxx> > --- > drivers/input/touchscreen/ads7846.c | 53 +++++++++++++++++++++++++---------- > 1 files changed, 38 insertions(+), 15 deletions(-) > -- 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