From 1c4fe3aa98aebdcc7406dbf6e54b7b1b125dbbf3 Mon Sep 17 00:00:00 2001 From: Axel Lin Date: Wed, 29 Aug 2012 14:57:46 +0800 Subject: gpio: Remove broken mark for da9052 gpio driver The fix for MFD part is merged so remove the broken mark for da9052 gpio driver. Signed-off-by: Axel Lin Signed-off-by: Linus Walleij --- drivers/gpio/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/gpio/Kconfig') diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index b16c8a72a2e2..2f2a3b86b985 100644 --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig @@ -82,7 +82,7 @@ config GPIO_GENERIC config GPIO_DA9052 tristate "Dialog DA9052 GPIO" - depends on PMIC_DA9052 && BROKEN + depends on PMIC_DA9052 help Say yes here to enable the GPIO driver for the DA9052 chip. -- cgit v1.2.1 From 5e969a401a0126806cc2a358800b5b52d6c0a246 Mon Sep 17 00:00:00 2001 From: Thierry Reding Date: Tue, 18 Sep 2012 10:57:10 +0200 Subject: gpio: Add Avionic Design N-bit GPIO expander support This commit adds a driver for the Avionic Design N-bit GPIO expander. The expander provides a variable number of GPIO pins with interrupt support. Changes in v2: - allow building the driver as a module - assign of_node unconditionally - use linear mapping IRQ domain - properly cleanup IRQ domain - add OF device table and annotate device tables - emulate rising and falling edge triggers - increase #gpio-cells to 2 - drop support for !OF - use IS_ENABLED to conditionalize DEBUG_FS code Changes in v3: - make IRQ support runtime configurable (interrupt-controller property) - drop interrupt-controller and #interrupt-cells from DT binding - add inline to_adnp() function to wrap container_of() macro - consistently use adnp as name for struct adnp variables - remove irq_mask_cur and rename irq_mask to irq_enable - fix a subtle deadlock in adnp_gpio_direction_output() - remove dynamic allocations from debugfs code - rename regs to num_regs to avoid confusion - annotate non-trivial code with comments - don't acquire mutex in adnp_gpio_get() - assume NO_IRQ == 0 Cc: Grant Likely Cc: devicetree-discuss@lists.ozlabs.org Cc: Linus Walleij Cc: linux-kernel@vger.kernel.org Acked-by: Rob Herring Signed-off-by: Thierry Reding Signed-off-by: Linus Walleij --- drivers/gpio/Kconfig | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'drivers/gpio/Kconfig') diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index 2f2a3b86b985..bf48c74ba4a0 100644 --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig @@ -444,6 +444,17 @@ config GPIO_ADP5588_IRQ Say yes here to enable the adp5588 to be used as an interrupt controller. It requires the driver to be built in the kernel. +config GPIO_ADNP + tristate "Avionic Design N-bit GPIO expander" + depends on I2C && OF + help + This option enables support for N GPIOs found on Avionic Design + I2C GPIO expanders. The register space will be extended by powers + of two, so the controller will need to accomodate for that. For + example: if a controller provides 48 pins, 6 registers will be + enough to represent all pins, but the driver will assume a + register layout for 64 pins (8 registers). + comment "PCI GPIO expanders:" config GPIO_CS5535 -- cgit v1.2.1 From 901acf5b2910434501c221a363bb3486b647b5c4 Mon Sep 17 00:00:00 2001 From: Arnd Bergmann Date: Fri, 28 Sep 2012 23:36:15 +0200 Subject: gpio: pcf857x: select IRQ_DOMAIN Patch 6e20a0a4 "gpio: pcf857x: enable gpio_to_irq() support" added IRQ domain support to the pcf857x driver, but some configurations (e.g. davinci_all_defconfig) don't already enable CONFIG_IRQ_DOMAIN. Always selecting it from the Kconfig in this case is what other such drivers do as well, and avoids these build errors: Without this patch, building davinci_all_defconfig results in: drivers/gpio/gpio-pcf857x.c: In function 'pcf857x_to_irq': drivers/gpio/gpio-pcf857x.c:167:2: error: implicit declaration of function 'irq_create_mapping' drivers/gpio/gpio-pcf857x.c: In function 'pcf857x_irq_demux_work': drivers/gpio/gpio-pcf857x.c:183:3: error: implicit declaration of function 'irq_find_mapping' drivers/gpio/gpio-pcf857x.c: In function 'pcf857x_irq_domain_cleanup': drivers/gpio/gpio-pcf857x.c:218:3: error: implicit declaration of function 'irq_domain_remove' drivers/gpio/gpio-pcf857x.c: In function 'pcf857x_irq_domain_init': drivers/gpio/gpio-pcf857x.c:230:2: error: implicit declaration of function 'irq_domain_add_linear' Signed-off-by: Arnd Bergmann Cc: Kuninori Morimoto Cc: Linus Walleij Signed-off-by: Linus Walleij --- drivers/gpio/Kconfig | 1 + 1 file changed, 1 insertion(+) (limited to 'drivers/gpio/Kconfig') diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index bf48c74ba4a0..4f31f6d32e41 100644 --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig @@ -324,6 +324,7 @@ config GPIO_PCA953X_IRQ config GPIO_PCF857X tristate "PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders" depends on I2C + select IRQ_DOMAIN help Say yes here to provide access to most "quasi-bidirectional" I2C GPIO expanders used for additional digital outputs or inputs. -- cgit v1.2.1