• Jean-Christophe Lallemand's avatar
    atmel_spi: work-around required for new HW bug in AT91SAM9263 Rev.B SPI controller · 50d7d5bf
    Jean-Christophe Lallemand authored
    We're working with an AT91SAM9263 Rev B in our design and I experienced
    some inconsistency in spi-based touchscreen usage between our board and
    the Atmel evaluation kit we have that runs on a Rev A chip.
    
    The data was apparently delayed by 1 byte and got ridiculous data out of
    the touchscreen driver, very strange.  As everything looked normal in
    the spi, touchscreen and dma logs, I contacted the Atmel support and
    they triggered me on a new HW bug that appeared in the Rev B SPI
    controller.
    
    The problem is that the SPI controller on the Rev B needs that the
    software reset is performed two times so that it's performed correctly.
    
    Applying the patch below solves the issue on my Rev B board.  I've tested
    it as well on my Rev A evaluation kit and it has apparently no unwanted
    side effect, things continue to work as expected.
    Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
    Cc: David Brownell <david-b@pacbell.net>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    50d7d5bf
atmel_spi.c 22.4 KB