23 Jul, 2020
1 commit
-
This makes the driver use the irqchip template to assign
properties to the gpio_irq_chip instead of using the
explicit call to gpiochip_irqchip_add().The irqchip is instead added while adding the gpiochip.
Also move the IRQ initialization to the special .init_hw()
callback.Signed-off-by: Linus Walleij
Acked-by: William Breathitt Gray
Cc: William Breathitt Gray
Link: https://lore.kernel.org/r/20200722110649.202223-1-linus.walleij@linaro.org
05 Dec, 2019
1 commit
-
Replace verbose implementation in get_multiple/set_multiple callbacks
with for_each_set_clump8 macro to simplify code and improve clarity.Link: http://lkml.kernel.org/r/b30f131b4634caf5a70f12e01496f71631a17305.1570641097.git.vilhelm.gray@gmail.com
Signed-off-by: William Breathitt Gray
Reviewed-by: Linus Walleij
Cc: Andy Shevchenko
Cc: Arnd Bergmann
Cc: Bartosz Golaszewski
Cc: Geert Uytterhoeven
Cc: Geert Uytterhoeven
Cc: Lukas Wunner
Cc: Masahiro Yamada
Cc: Mathias Duckeck
Cc: Morten Hein Tiljeset
Cc: Phil Reid
Cc: Rasmus Villemoes
Cc: Sean Nyekjaer
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
07 Nov, 2019
1 commit
-
It's hard for occasional GPIO code reader/writer to know if values 0/1
equal to IN or OUT. Use defined GPIO_LINE_DIRECTION_IN and
GPIO_LINE_DIRECTION_OUT to help them out.NOTE - for gpio-amd-fch and gpio-bd9571mwv:
This commit also changes the return value for direction get to equal 1
for direction INPUT. Prior this commit these drivers might have
returned some other positive value but 1 for INPUT.Signed-off-by: Matti Vaittinen
Acked-by: Scott Branden
Reviewed-by: Grygorii Strashko
Reviewed-by: Michal Simek
Reviewed-by: Geert Uytterhoeven
Acked-by: Andy Shevchenko
Acked-by: William Breathitt Gray
Acked-by: Kuppuswamy Sathyanarayanan
Signed-off-by: Linus Walleij
31 May, 2019
1 commit
-
Based on 1 normalized pattern(s):
this program is free software you can redistribute it and or modify
it under the terms of the gnu general public license version 2 as
published by the free software foundation this program is
distributed in the hope that it will be useful but without any
warranty without even the implied warranty of merchantability or
fitness for a particular purpose see the gnu general public license
for more detailsextracted by the scancode license scanner the SPDX license identifier
GPL-2.0-only
has been chosen to replace the boilerplate/reference in 655 file(s).
Signed-off-by: Thomas Gleixner
Reviewed-by: Allison Randal
Reviewed-by: Kate Stewart
Reviewed-by: Richard Fontana
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190527070034.575739538@linutronix.de
Signed-off-by: Greg Kroah-Hartman
05 Nov, 2018
1 commit
-
This patch masks the read inputs with the word mask in order to ensure
only requested input states are returned in the bits array.Suggested-by: Rasmus Villemoes
Signed-off-by: William Breathitt Gray
Signed-off-by: Linus Walleij
27 Apr, 2018
1 commit
-
The ioread8 function expects a memory offset argument. This patch fixes
the ports array to provide the memory addresses of the respective device
I/O registers.Fixes: 810ebfc5efca ("gpio: pci-idio-16: Implement get_multiple callback")
Signed-off-by: William Breathitt Gray
Signed-off-by: Linus Walleij
26 Mar, 2018
1 commit
-
The ACCES I/O PCI-IDIO-16 series of devices provides 16
optically-isolated digital inputs accessed via two 8-bit ports. Since
eight input lines are acquired on a single port input read, the
PCI-IDIO-16 GPIO driver may improve multiple input reads by utilizing a
get_multiple callback. This patch implements the
idio_16_gpio_get_multiple function which serves as the respective
get_multiple callback.Signed-off-by: William Breathitt Gray
Signed-off-by: Linus Walleij
08 Nov, 2017
1 commit
-
In order to consolidate the multiple ways to associate an IRQ chip with
a GPIO chip, move more fields into the new struct gpio_irq_chip.Signed-off-by: Thierry Reding
Acked-by: Grygorii Strashko
Signed-off-by: Linus Walleij
28 Mar, 2017
1 commit
-
The pci-idio-16 gpio driver currently implements an irq_chip for handling
interrupts; due to how irq_chip handling is done, it's necessary for the
irq_chip methods to be invoked from hardirq context, even on a a
real-time kernel. Because the spinlock_t type becomes a "sleeping"
spinlock w/ RT kernels, it is not suitable to be used with irq_chips.A quick audit of the operations under the lock reveal that they do only
minimal, bounded work, and are therefore safe to do under a raw spinlock.Signed-off-by: Julia Cartwright
Acked-by: William Breathitt Gray
Signed-off-by: Linus Walleij
13 Feb, 2017
2 commits
-
The PCI BAR0 and BAR1 for the PCI-IDIO-16 hold information for the PLX
9052 bridge chip on the device. The PCI BAR2 holds the necessary base
address for I/O control of the PCI-IDIO-16. This patch corrects the PCI
BAR index mismatch for the PCI-IDIO-16 GPIO driver.Fixes: 02e74fc0401a ("gpio: Add GPIO support for the ACCES PCI-IDIO-16")
Signed-off-by: William Breathitt Gray
Signed-off-by: Linus Walleij -
The ACCES PCI-IDIO-16 has a PCI device ID code of 0x0DC8. It is
incorrect to use the PCI device ID code of the ACCES PCI-IIRO-8
(0x0F00). This patch fixes the said PCI device ID code mismatch.Fixes: 02e74fc0401a ("gpio: Add GPIO support for the ACCES PCI-IDIO-16")
Signed-off-by: William Breathitt Gray
Signed-off-by: Linus Walleij
06 Feb, 2017
1 commit
-
The ACCES PCI-IDIO-16 device provides 32 lines of digital I/O (16 lines
of optically-isolated digital inputs for AC and DC control signals, and
16 lines of solid state switch digital outputs). An interrupt is
generated when any of the inputs change state (low to high or high to
low). Input filter control is not supported by this driver, and input
filters are deactivated by this driver.Signed-off-by: William Breathitt Gray
Signed-off-by: Linus Walleij