forked from luck/tmp_suning_uos_patched
GPIO fixes for v4.8:
This fixes a Kconfig issue with UM: when I made GPIOLIB available to all archs, that included UM, but the OF part of GPIOLIB requires HAS_IOMEM, so we add HAS_IOMEM as a dependency to OF_GPIO. This in turn exposed the fact that a few GPIO drivers were implicitly assuming OF_GPIO as their dependency but instead depended on OF alone (the typical problem being a pointer inside gpio_chip not existing unless OF_GPIO is selected) and then UM would fail to compile with these drivers instead. Then I lost patience and made any GPIO driver depending on just OF depend on OF_GPIO instead, that is certainly what they meant and the only thing that makes sense anyway. GPIO with just OF but !OF_GPIO does not make sense. Also a fix for the max730x driver data pointer, and a minor comment fix for the GPIO tools. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJXurpEAAoJEEEQszewGV1zOEgP/2I4hI8eojOeMC7U89EWl3HG 0sa3NGw8c+Vrdh37NDZsia24mQs2ntixFFW/sHYSkTJcTXSDD+QeN0IilnRKOmvw XRIJakdZy9+903crZ8GP2SU0juSNjUyVf7eq83M4DEVeu/lmUOgrlc12CqR7eUxR NnJdx8l8H7LZQXJO+F64SLFmc2P+wmWSWZtYHP4Jt3fwlEBRbHqcSB70P67IIOdM LvhVB4TcOoYwALzyqY2wrQtfQ37wmfUYTuT7Mnw5PHPk7FhktwrObHdMdENusHCn 0BanmpCGqCZ0z9vWisaVWd+j8k1M3X0ObsTfyGmO+YVmYxdneNCjZdaFvH3LqCBL k6kcKFKfIu9sl3qFZr/3jHpN4QgZeLhdu3P3gllNtiLcPba7d2gDprjGiCCMtw6c 5nYmfN1bTqWB7a2wlRZLMUE57lvsgLJtJ2dNx6HwcUyBLY7YDB5IVYh40fRwpEvH 5gs6NuBDEJOGbEAYZ1lvo9LfRlogHUlYkkw+/G2FKOUCscf4Os2qEaLkirCPAaP/ q4tkZPWxjt27Hw0bvANCVG5wkAJfbsX12iQMd8KU9RKwAFw6Q2e2iPGzH3M5Tdaw T35uYiWrPA6S+gLBMuT5UhUfQ5o+sc2zFi3Qq3aak86GAQYwSYTaoWHN/7EbpDZ/ cssmpMpfL7hPYCzAo6sv =isIb -----END PGP SIGNATURE----- Merge tag 'gpio-v4.8-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio Pull GPIO fixes from Linus Walleij: "Here are a few GPIO fixes for v4.8. I was expecting some fallout from the new chardev rework but nothing like that turned up att all. Instead a Kconfig confusion that I think I have finally nailed, then some ordinary driver noise and trivia. This fixes a Kconfig issue with UM: when I made GPIOLIB available to all archs, that included UM, but the OF part of GPIOLIB requires HAS_IOMEM, so we add HAS_IOMEM as a dependency to OF_GPIO. This in turn exposed the fact that a few GPIO drivers were implicitly assuming OF_GPIO as their dependency but instead depended on OF alone (the typical problem being a pointer inside gpio_chip not existing unless OF_GPIO is selected) and then UM would fail to compile with these drivers instead. Then I lost patience and made any GPIO driver depending on just OF depend on OF_GPIO instead, that is certainly what they meant and the only thing that makes sense anyway. GPIO with just OF but !OF_GPIO does not make sense. Also a fix for the max730x driver data pointer, and a minor comment fix for the GPIO tools" * tag 'gpio-v4.8-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: gpio: make any OF dependent driver depend on OF_GPIO gpio: Fix OF build problem on UM gpio: max730x: set gpiochip data pointer before using it tools/gpio: fix gpio-event-mon header comment
This commit is contained in:
commit
37c669b237
|
@ -50,6 +50,7 @@ config GPIO_DEVRES
|
|||
config OF_GPIO
|
||||
def_bool y
|
||||
depends on OF
|
||||
depends on HAS_IOMEM
|
||||
|
||||
config GPIO_ACPI
|
||||
def_bool y
|
||||
|
@ -188,7 +189,7 @@ config GPIO_EP93XX
|
|||
config GPIO_ETRAXFS
|
||||
bool "Axis ETRAX FS General I/O"
|
||||
depends on CRIS || COMPILE_TEST
|
||||
depends on OF
|
||||
depends on OF_GPIO
|
||||
select GPIO_GENERIC
|
||||
select GPIOLIB_IRQCHIP
|
||||
help
|
||||
|
@ -214,7 +215,7 @@ config GPIO_GENERIC_PLATFORM
|
|||
|
||||
config GPIO_GRGPIO
|
||||
tristate "Aeroflex Gaisler GRGPIO support"
|
||||
depends on OF
|
||||
depends on OF_GPIO
|
||||
select GPIO_GENERIC
|
||||
select IRQ_DOMAIN
|
||||
help
|
||||
|
@ -312,7 +313,7 @@ config GPIO_MPC8XXX
|
|||
config GPIO_MVEBU
|
||||
def_bool y
|
||||
depends on PLAT_ORION
|
||||
depends on OF
|
||||
depends on OF_GPIO
|
||||
select GENERIC_IRQ_CHIP
|
||||
|
||||
config GPIO_MXC
|
||||
|
@ -405,7 +406,7 @@ config GPIO_TEGRA
|
|||
bool "NVIDIA Tegra GPIO support"
|
||||
default ARCH_TEGRA
|
||||
depends on ARCH_TEGRA || COMPILE_TEST
|
||||
depends on OF
|
||||
depends on OF_GPIO
|
||||
help
|
||||
Say yes here to support GPIO pins on NVIDIA Tegra SoCs.
|
||||
|
||||
|
@ -1099,7 +1100,7 @@ menu "SPI GPIO expanders"
|
|||
|
||||
config GPIO_74X164
|
||||
tristate "74x164 serial-in/parallel-out 8-bits shift register"
|
||||
depends on OF
|
||||
depends on OF_GPIO
|
||||
help
|
||||
Driver for 74x164 compatible serial-in/parallel-out 8-outputs
|
||||
shift registers. This driver can be used to provide access
|
||||
|
|
|
@ -192,6 +192,10 @@ int __max730x_probe(struct max7301 *ts)
|
|||
ts->chip.parent = dev;
|
||||
ts->chip.owner = THIS_MODULE;
|
||||
|
||||
ret = gpiochip_add_data(&ts->chip, ts);
|
||||
if (ret)
|
||||
goto exit_destroy;
|
||||
|
||||
/*
|
||||
* initialize pullups according to platform data and cache the
|
||||
* register values for later use.
|
||||
|
@ -213,10 +217,6 @@ int __max730x_probe(struct max7301 *ts)
|
|||
}
|
||||
}
|
||||
|
||||
ret = gpiochip_add_data(&ts->chip, ts);
|
||||
if (ret)
|
||||
goto exit_destroy;
|
||||
|
||||
return ret;
|
||||
|
||||
exit_destroy:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* gpio-hammer - example swiss army knife to shake GPIO lines on a system
|
||||
* gpio-event-mon - monitor GPIO line events from userspace
|
||||
*
|
||||
* Copyright (C) 2016 Linus Walleij
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue
Block a user