1. 14 1月, 2006 3 次提交
    • V
      [PATCH] spi: use linked lists rather than an array · 8275c642
      Vitaly Wool 提交于
      This makes the SPI core and its users access transfers in the SPI message
      structure as linked list not as an array, as discussed on LKML.
      
      From: David Brownell <dbrownell@users.sourceforge.net>
      
        Updates including doc, bugfixes to the list code, add
        spi_message_add_tail().  Plus, initialize things _before_ grabbing the
        locks in some cases (in case it grows more expensive).  This also merges
        some bitbang updates of mine that didn't yet make it into the mm tree.
      Signed-off-by: NVitaly Wool <vwool@ru.mvista.com>
      Signed-off-by: NDmitry Pervushin <dpervushin@gmail.com>
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      8275c642
    • D
      [PATCH] spi: ads7836 uses spi_driver · 2e5a7bd9
      David Brownell 提交于
      This updates the ads7864 driver to use the new "spi_driver" struct, and
      includes some minor unrelated cleanup.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      2e5a7bd9
    • D
      [PATCH] spi: ads7846 driver · ffa458c1
      David Brownell 提交于
      This is a driver for the ADS7846 touchscreen sensor, derived from
      the corgi_ts and omap_ts drivers.  Key differences from those two:
      
        - Uses the new SPI framework (minimalist version)
        - <linux/spi/ads7846.h> abstracts board-specific touchscreen info
        - Sysfs attributes for the temperature and voltage sensors
        - Uses fewer ARM-specific IRQ primitives
      
      The temperature and voltage sensors show up in sysfs like this:
      
        $ pwd
        /sys/devices/platform/omap-uwire/spi2.0
        $ ls
        bus@          input:event0@ power/        temp1         vbatt
        driver@       modalias      temp0         vaux
        $ cat modalias
        ads7846
        $ cat temp0
        991
        $ cat temp1
        1177
        $
      
      So far only basic testing has been done.  There's a fair amount of hardware
      that uses this sensor, and which also runs Linux, which should eventually
      be able to use this driver.
      
      One portability note may be of special interest.  It turns out that not all
      SPI controllers are happy issuing requests that do things like "write 8 bit
      command, read 12 bit response".  Most of them seem happy to handle various
      word sizes, so the issue isn't "12 bit response" but rather "different rx
      and tx write sizes", despite that being a common MicroWire convention.  So
      this version of the driver no longer reads 12 bit native-endian words; it
      reads 16-bit big-endian responses, then byteswaps them and shifts the
      results to discard the noise.
      Signed-off-by: NDavid Brownell <david-b@pacbell.net>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      ffa458c1