mirror of https://gitee.com/openkylin/linux.git
5e969a401a
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 <grant.likely@secretlab.ca> Cc: devicetree-discuss@lists.ozlabs.org Cc: Linus Walleij <linus.walleij@stericsson.com> Cc: linux-kernel@vger.kernel.org Acked-by: Rob Herring <rob.herring@calxeda.com> Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> |
||
---|---|---|
.. | ||
arm | ||
ata | ||
c6x | ||
clock | ||
crypto | ||
dma | ||
fb | ||
gpio | ||
hwmon | ||
i2c | ||
input | ||
iommu | ||
mfd | ||
mips/cavium | ||
misc | ||
mmc | ||
mtd | ||
net | ||
nvec | ||
pci | ||
pinctrl | ||
power_supply | ||
powerpc | ||
pwm | ||
regulator | ||
rtc | ||
serial | ||
serio | ||
sound | ||
spi | ||
staging/iio/adc | ||
thermal | ||
tty/serial | ||
usb | ||
video/backlight | ||
virtio | ||
watchdog | ||
x86 | ||
eeprom.txt | ||
marvell.txt | ||
open-pic.txt | ||
resource-names.txt | ||
vendor-prefixes.txt | ||
xilinx.txt |