gpiolib: Pass array info to get/set array functions
authorJanusz Krzysztofik <jmkrzyszt@gmail.com>
Wed, 5 Sep 2018 21:50:07 +0000 (23:50 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 13 Sep 2018 09:16:54 +0000 (11:16 +0200)
commit77588c14ac868caece82fddbfae7de03b2cec941
treea3a12bd5ee612c4ca5143f744cc6de1449221a03
parentbf9346f5d47b4506aafbc384dfb5796b0adc3f8d
gpiolib: Pass array info to get/set array functions

In order to make use of array info obtained from gpiod_get_array() and
speed up processing of arrays matching single GPIO chip layout, that
information must be passed to get/set array functions.  Extend the
functions' API with that additional parameter and update all users.
Pass NULL if a user builds an array itself from single GPIOs.

Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Miguel Ojeda Sandonis <miguel.ojeda.sandonis@gmail.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
Cc: Lukas Wunner <lukas@wunner.de>
Cc: Peter Korsgaard <peter.korsgaard@barco.com>
Cc: Peter Rosin <peda@axentia.se>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Rojhalat Ibrahim <imr@rtschenk.de>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Cc: Russell King <rmk+kernel@armlinux.org.uk>
Cc: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Lars-Peter Clausen <lars@metafoo.de>
Cc: Michael Hennerich <Michael.Hennerich@analog.com>
Cc: Jonathan Cameron <jic23@kernel.org>
Cc: Hartmut Knaack <knaack.h@gmx.de>
Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Jiri Slaby <jslaby@suse.com>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
Cc: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Janusz Krzysztofik <jmkrzyszt@gmail.com>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
15 files changed:
Documentation/driver-api/gpio/consumer.rst
drivers/auxdisplay/hd44780.c
drivers/bus/ts-nbus.c
drivers/gpio/gpio-max3191x.c
drivers/gpio/gpiolib.c
drivers/gpio/gpiolib.h
drivers/i2c/muxes/i2c-mux-gpio.c
drivers/mmc/core/pwrseq_simple.c
drivers/mux/gpio.c
drivers/net/phy/mdio-mux-gpio.c
drivers/pcmcia/soc_common.c
drivers/phy/motorola/phy-mapphone-mdm6600.c
drivers/staging/iio/adc/ad7606.c
drivers/tty/serial/serial_mctrl_gpio.c
include/linux/gpio/consumer.h