1. 22 10月, 2008 1 次提交
    • D
      mfd: twl4030 IRQ handling update · a30d46c0
      David Brownell 提交于
      - Move it into a separate file; clean and streamline it
       - Restructure the init code for reuse during secondary dispatch
       - Support both levels (primary, secondary) of IRQ dispatch
       - Use a workqueue for irq mask/unmask and trigger configuration
      
      Code for two subchips currently share that secondary handler code.
      One is the power subchip; its IRQs are now handled by this core,
      courtesy of this patch.  The other is the GPIO module, which will
      be supported through a later patch.
      
      There are also minor changes to the header file, mostly related
      to GPIO support; nothing yet in mainline cares about those.  A
      few references to OMAP-specific symbols are disabled; when they
      can all be removed, the TWL4030 support ceases being OMAP-specific.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      Signed-off-by: NSamuel Ortiz <sameo@openedhand.com>
      a30d46c0
  2. 20 10月, 2008 1 次提交
    • D
      mfd: TWL4030 core driver · a603a7fa
      David Brownell 提交于
      This patch adds the core of the TWL4030 driver, which supports
      chips including the TPS65950.  These chips are multi-function; see
      
        http://focus.ti.com/docs/prod/folders/print/tps65950.html
      
      Public specs are in the works.  For now, the block diagram on
      the second page of the datasheet is fairly informative.
      
      There are some known issues with this core code.  Most notably,
      the IRQ dispatching needs simplification (to use more of genirq),
      generalization (integrating support for secondary IRQ dispatch
      as well as primary, and removing the build dependency on OMAP),
      and then probably updating to leverage threaded IRQ support
      (expected to arrive in mainline "soon").
      
      Once the core is in mainline, drivers for other parts of this
      chip can follow its lead and start swimming upstream too.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NSamuel Ortiz <sameo@openedhand.com>
      a603a7fa
  3. 26 7月, 2008 1 次提交
  4. 15 7月, 2008 1 次提交
  5. 19 5月, 2008 1 次提交
  6. 15 4月, 2008 1 次提交
  7. 07 2月, 2008 2 次提交
  8. 06 2月, 2008 2 次提交
    • E
      gpiolib: pca9539 i2c gpio expander support · 9e60fdcf
      eric miao 提交于
      This adds a new-style I2C driver with basic support for the sixteen bit
      PCA9539 GPIO expanders.  These chips have multiple registers, push-pull output
      drivers, and (not supported in this patch) pin change interrupts.
      
      Board-specific code must provide "pca9539_platform_data" with each chip's
      "i2c_board_info".  That provides the GPIO numbers to be used by that chip, and
      callbacks for board-specific setup/teardown logic.
      
      Derived from drivers/i2c/chips/pca9539.c (which has no current known users).
      This is faster and simpler; it uses 16-bit register access, and cache the
      OUTPUT and DIRECTION registers for fast access
      Signed-off-by: Neric miao <eric.miao@marvell.com>
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Acked-by: NJean Delvare <khali@linux-fr.org>
      Cc: Sam Ravnborg <sam@ravnborg.org>
      Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
      Cc: Philipp Zabel <philipp.zabel@gmail.com>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Ben Gardner <bgardner@wabtec.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9e60fdcf
    • D
      gpiolib: pcf857x i2c gpio expander support · 15fae37d
      David Brownell 提交于
      This is a new-style I2C driver for most common 8 and 16 bit I2C based
      "quasi-bidirectional" GPIO expanders: pcf8574 or pcf8575, and several
      compatible models (mostly faster, supporting I2C at up to 1 MHz).
      
      The driver exposes the GPIO signals using the platform-neutral GPIO
      programming interface, so they are easily accessed by other kernel code.  The
      lack of such a flexible kernel API has been a big factor in the proliferation
      of board-specific drivers for these chips...  stuff that rarely makes it
      upstream since it's so ugly.  This driver will let such boards use standard
      calls.
      
      Since it's a new-style driver, these devices must be configured as part of
      board-specific init.  That eliminates the need for error-prone manual
      configuration of module parameters, and makes compatibility with legacy
      drivers (pcf8574.c, pc8575.c) for these chips easier (there's a clear
      either/or disjunction).
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Acked-by: NJean Delvare <khali@linux-fr.org>
      Cc: Eric Miao <eric.miao@marvell.com>
      Cc: Sam Ravnborg <sam@ravnborg.org>
      Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
      Cc: Philipp Zabel <philipp.zabel@gmail.com>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Ben Gardner <bgardner@wabtec.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      15fae37d
  9. 28 1月, 2008 1 次提交