1. 17 1月, 2014 1 次提交
    • L
      gpio: mcp23s08: Add irq functionality for i2c chips · 4e47f91b
      Lars Poeschel 提交于
      This adds interrupt functionality for i2c chips to the driver.
      They can act as a interrupt-controller and generate interrupts, if
      the inputs change.
      This is tested with a mcp23017 chip on an arm based platform.
      
      v3:
      - be a bit more clear that the irq functionality is also available
        on spi versions of the chips, but the linux driver does not support
        this yet
      
      v2:
      - some more word about irq-mirror property in binding doc
      - use of_read_bool instead of of_find_property for
        "interrupt-contrller" and "irq-mirror"
      - cache the "interrupt-controller" for remove function
      - do set the irq-mirror bit only if device is marked as
        interrupt-controller
      - do create the irq mapping and setup of irq_desc of all possible
        interrupts in probe path instead of in gpio_to_irq
      - mark gpios as in use as interrupts in irq in irq_startup and
        unlock it in irq_shutdown
      - rename virq to child_irq
      - remove dev argument from mcp23s08_irq_setup function
      - move gpiochip_add before mcp23s08_irq_setup in probe path
      Signed-off-by: NLars Poeschel <poeschel@lemonage.de>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      4e47f91b
  2. 15 1月, 2014 2 次提交
  3. 14 1月, 2014 2 次提交
  4. 08 1月, 2014 13 次提交
  5. 02 1月, 2014 5 次提交
  6. 24 12月, 2013 1 次提交
  7. 21 12月, 2013 2 次提交
    • L
      ARM: s3c64xx: get rid of custom <mach/gpio.h> · 41c3548e
      Linus Walleij 提交于
      This isolates the custom S3C64xx GPIO definition table to
      <linux/platform_data/gpio-samsung-s3x64xx.h> as this is
      used in a few different places in the kernel, removing the
      need to depend on the implicit inclusion of <mach/gpio.h>
      from <linux/gpio.h> and thus getting rid of a few nasty
      cross-dependencies.
      
      Also delete the CONFIG_SAMSUNG_GPIO_EXTRA stuff. Instead
      roof the number of GPIOs for this platform:
      First sum up all the GPIO banks from A to Q: 187 GPIOs.
      Add the 16 "board GPIOs" and the roof for SAMSUNG_GPIO_EXTRA,
      128, so in total maximum 187+16+128 = 331 GPIOs, so let's
      take the same roof as for S3C24XX: 512. This way we can do
      away with the GPIO calculation macros for GPIO_BOARD_START,
      BOARD_NR_GPIOS and the definition of ARCH_NR_GPIOS.
      
      Cc: Mark Brown <broonie@kernel.org>
      [on Mini6410 board]
      Tested-by: NTomasz Figa <t.figa@samsung.com>
      [for changes in mach-s3c64xx]
      Acked-by: NTomasz Figa <t.figa@samsung.com>
      Tested-by: NMark Brown <broonie@linaro.org>
      Acked-by: NKukjin Kim <kgene.kim@samsung.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      41c3548e
    • L
      ARM: s3c24xx: get rid of custom <mach/gpio.h> · c67d0f29
      Linus Walleij 提交于
      This isolates the custom S3C24xx GPIO definition table to
      <linux/platform_data/gpio-samsung-s3x24xx.h> as this is
      used in a few different places in the kernel, removing the
      need to depend on the implicit inclusion of <mach/gpio.h>
      from <linux/gpio.h> and thus getting rid of a few nasty
      cross-dependencies.
      
      We also delete the nifty CONFIG_S3C24XX_GPIO_EXTRA stuff.
      The biggest this can ever be for the S3C24XX is
      CONFIG_S3C24XX_GPIO_EXTRA = 128, and then for CPU_S3C2443 or
      CPU_S3C2416 32*12 GPIOs are added, so 32*12+128 = 512
      is the absolute roof value on this platform. So we set
      the size of ARCH_NR_GPIO to this and the GPIOs array will
      fit any S3C24XX platform, as per pattern from other archs.
      
      ChangeLog v2->v3:
      - Move the movement of the S3C64XX gpio.h file out of
        this patch and into the follow-up patch where it belongs.
      ChangeLog v1->v2:
      - Added an #ifdef ARCH_S3C24XX around the header inclusion
        in drivers/gpio/gpio-samsung.c as we would otherwise
        have colliding definitions when compiling S3C64XX.
      - Rename inclusion guard in the header file.
      
      Cc: Tomasz Figa <tomasz.figa@gmail.com>
      Cc: Sylwester Nawrocki <sylvester.nawrocki@gmail.com>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: linux-samsung-soc@vger.kernel.org
      Acked-by: NKukjin Kim <kgene.kim@samsung.com>
      Acked-by: NHeiko Stuebner <heiko@sntech.de>
      Tested-by: NHeiko Stuebner <heiko@sntech.de>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      c67d0f29
  8. 20 12月, 2013 4 次提交
  9. 13 12月, 2013 3 次提交
  10. 12 12月, 2013 3 次提交
  11. 11 12月, 2013 2 次提交
  12. 09 12月, 2013 2 次提交