1. 16 12月, 2009 1 次提交
    • H
      Input: ep93xx_keypad - update driver to new core support · 60214f05
      H Hartley Sweeten 提交于
      This driver was merged before the ep93xx core support was added
      for the keypad clock and acquiring/releasing the necessary gpio's.
      Now that the proper support is in the ep93xx core this driver
      needs to be updated to work correctly.
      
      Summary of changes:
        1) Remove some unused members from the platform data.
        2) Remove the custom KEY macro and use the ones available in
           <linux/input/matrix_keypad.h>
        3) Remove the keypad_{readl/writel} macros and just use
           __raw_{readl/writel} directly.
        4) Update the clk_set_rate() call to work with the core support.
        5) Cleanup the probe routine and remove some unneeded messages.
        6) Use the ep93xx core functions to acquire and release the gpio's.
        7) Fix the clk_get() call to get the keypad clock.
      Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
      Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
      60214f05
  2. 24 11月, 2009 3 次提交
  3. 06 11月, 2009 1 次提交
  4. 21 10月, 2009 2 次提交
  5. 14 10月, 2009 1 次提交
  6. 10 10月, 2009 3 次提交
  7. 07 10月, 2009 6 次提交
  8. 23 9月, 2009 1 次提交
  9. 03 8月, 2009 1 次提交
  10. 31 7月, 2009 1 次提交
  11. 23 7月, 2009 1 次提交
  12. 22 7月, 2009 1 次提交
  13. 17 7月, 2009 4 次提交
  14. 12 7月, 2009 1 次提交
  15. 09 7月, 2009 5 次提交
    • H
      [ARM] 5593/1: ep93xx: clock.c __iomem pointer · c3e3badd
      Hartley Sweeten 提交于
      To ensure typesafe io, the enable_reg variable should be a
      void __iomem pointer not u32.
      Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      c3e3badd
    • H
      [ARM] 5592/1: ep93xx: cleanup platform header includes · 583ddafe
      Hartley Sweeten 提交于
      arch/arm/mach-ep93xx/include/mach/hardware.h
        1. Properly name the include files so that they are loaded
           from the <mach/*> directory and not the local directory.
        2. Remove including the ts72xx.h header.  This header is not
           generic to the ep93xx platform.  It should only be included
           by the ts72xx specific files that require it.  The only
           two users in the tree are arch/arm/mach-ep93xx/ts72xx.c
           and drivers/mtd/nand/ts7250.c.
      
      arch/arm/mach-ep93xx/include/mach/ts72xx.h
        1. <linux/io.h> should already be included by any user of this
           header.  Doing the include here hides it from being needed
           by the calling source file.
      
      arch/arm/mach-ep93xx/core.c
        1. Remove unnecessary headers.  They were probably included
           originally due to cut-and-paste from other files.
        2. <linux/io.h> should be included not <mach/gpio.h>
      
      arch/arm/mach-ep93xx/adsphere.c
      arch/arm/mach-ep93xx/edb93xx.c
      arch/arm/mach-ep93xx/gesbc9312.c
      arch/arm/mach-ep93xx/micro9.c
      arch/arm/mach-ep93xx/ts72xx.c
        1. Remove unnecessary headers.
      
      arch/arm/mach-ep93xx/ts72xx.c
        1. Remove unnecessary headers.
        2. Add platform specific header <mach/ts72xx.h>.
      
      drivers/mtd/nand/ts7250.c
        1. <linux/io.h> should be included not <asm/io.h>.
        2. Add platform specific header <mach/ts72xx.h>.
      
      Cc: Ryan Mallon <ryan@bluewatersys.com>
      Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      583ddafe
    • H
      [ARM] 5595/1: ep93xx: missing header in dma-m2p.c · a0b98ec8
      Hartley Sweeten 提交于
      <linux/io.h> was getting included by <mach/ts72xx.h>, is should be
      included by this file.
      Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      a0b98ec8
    • H
      [ARM] 5578/1: ep93xx: add ep93xx-keypad clock · 701fac82
      Hartley Sweeten 提交于
      Add clkdev support for the ep93xx_keypad driver.
      
      A matrix keypad driver for the ep93xx just got merged via the
      input subsystem group.  For this driver to work the keypad clock
      needs to be added to the ep93xx clkdev support.  In order to
      accomplish this the following changes are implemented:
      
        1) Move the EP93XX_EXT_*_RATE defines to mach/include/hardware.h.
        2) Add EP93XX_KEYTCHCLK_DIV{4/16} for the keypad driver.
        3) Add support for programmable clocks (set_rate() callback).
        4) Add clk_keypad for the keypad driver.
        5) tab indent the clk_lookup table for easier reading.
        6) Add the set_rate() callback to program the keypad clock.
           This callback is generalized since the ADC clock (touchscreen)
           can use the same callback.
        7) Use the ep93xx_syscon_swlocked_write() core function for updating
           the software locked register.
      Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
      Acked-by: NRyan Mallon <ryan@bluewatersys.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      701fac82
    • H
      [ARM] 5577/2: ep93xx: syscon locked register functions · 02239f0a
      Hartley Sweeten 提交于
      Add core functions to handle writes to the ep93xx software locked
      registers.
      
      There are a number of registers in the EP93xx System Controller
      that require a write to the software lock register before they
      can be updated. This patch adds a number of exported functions
      to the ep93xx core that handle this access.
      
      The software locked clock divider registers, VidClkDiv, MIRClkDiv,
      I2SClkDiv and KeyTchClkDiv would typically involve writing a
      specific value to the register. To support this the
      ep93xx_syscon_swlocked_write() function is provided.
      
      For the DeviceCfg register it's more typical to only need to
      set or clear a single bit. A generic ep93xx_devcfg_set_clear()
      function is provided to handle both operations. Two inline
      functions, ep93xx_devcfg_set_bits() and ep93xx_devcfg_clear_bits()
      are also provided to improve code readability.
      
      In addition, the remaining bits in the System Controller Device
      Config Register have been documented and the previously defined
      names shortened.
      
      All code paths that use this functionality have been updated
      except for arch/arm/kernel/crunch.c. That code is in a context
      switch path, which is not reentrant, so it is safe against itself.
      
      Cc: Lennert Buytenhek <buytenh@wantstofly.org>
      Cc: Matthias Kaehlcke <matthias@kaehlcke.net>
      Signed-off-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
      Acked-by: NRyan Mallon <ryan@bluewatersys.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      02239f0a
  16. 27 6月, 2009 3 次提交
  17. 12 6月, 2009 1 次提交
  18. 30 5月, 2009 3 次提交
  19. 25 5月, 2009 1 次提交