linux/drivers/staging
Mika Westerberg 2956b5d94a pinctrl / gpio: Introduce .set_config() callback for GPIO chips
Currently we already have two pin configuration related callbacks
available for GPIO chips .set_single_ended() and .set_debounce(). In
future we expect to have even more, which does not scale well if we need
to add yet another callback to the GPIO chip structure for each possible
configuration parameter.

Better solution is to reuse what we already have available in the
generic pinconf.

To support this, we introduce a new .set_config() callback for GPIO
chips. The callback takes a single packed pin configuration value as
parameter. This can then be extended easily beyond what is currently
supported by just adding new types to the generic pinconf enum.

If the GPIO driver is backed up by a pinctrl driver the GPIO driver can
just assign gpiochip_generic_config() (introduced in this patch) to
.set_config and that will take care configuration requests are directed
to the pinctrl driver.

We then convert the existing drivers over .set_config() and finally
remove the .set_single_ended() and .set_debounce() callbacks.

Suggested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2017-01-26 15:27:37 +01:00
..
android mm: use vmf->address instead of of vmf->virtual_address 2016-12-14 16:04:09 -08:00
board
clocking-wizard
comedi staging: comedi: comedidev.h: Document usage of 'detach' handler 2016-12-08 21:01:23 +01:00
dgnc staging: dgnc: Fix lines longer than 80 characters 2016-12-07 11:41:17 +01:00
emxx_udc
fbtft
fsl-mc staging: fsl-mc: remove unnecessary info prints from bus driver 2016-12-08 21:00:08 +01:00
fwserial
gdm724x
goldfish
greybus pinctrl / gpio: Introduce .set_config() callback for GPIO chips 2017-01-26 15:27:37 +01:00
gs_fpgaboot
i4l
iio
ks7010 Staging: ks7010: ks7010_stio.h: fixed coding style error 2016-12-06 10:20:03 +01:00
lustre staging/lustre/libcfs: Convert to hotplug state machine 2016-12-25 10:47:43 +01:00
media media updates for v4.10-rc1 2016-12-16 09:39:16 -08:00
most
mt29f_spinand
netlogic
nvec
octeon
octeon-usb
olpc_dcon
rtl8188eu Makefile: drop -D__CHECK_ENDIAN__ from cflags 2016-12-16 00:13:43 +02:00
rtl8192e Makefile: drop -D__CHECK_ENDIAN__ from cflags 2016-12-16 00:13:43 +02:00
rtl8192u Staging/IIO patches for 4.10-rc1 2016-12-13 11:35:00 -08:00
rtl8712
rts5208
skein
sm750fb
speakup
unisys Staging/IIO patches for 4.10-rc1 2016-12-13 11:35:00 -08:00
vc04_services
vme Staging/IIO patches for 4.10-rc1 2016-12-13 11:35:00 -08:00
vt6655
vt6656
wilc1000 Staging/IIO patches for 4.10-rc1 2016-12-13 11:35:00 -08:00
wlan-ng Staging/IIO patches for 4.10-rc1 2016-12-13 11:35:00 -08:00
xgifb
Kconfig staging: slicoss: remove the staging driver 2016-12-06 18:18:30 +01:00
Makefile staging: slicoss: remove the staging driver 2016-12-06 18:18:30 +01:00