15 Sep, 2016
2 commits
-
This file is currently getting module.h from a global gpio header
and it will faii to build once we remove module.h from that.However, the driver is controlled with the following Kconfig:
drivers/gpio/Kconfig:config GPIO_SX150X
drivers/gpio/Kconfig: bool "Semtech SX150x I2C GPIO expander"and hence the two lines of MODULE_DEVICE_TABLE are no-ops that
can simply be deleted.Cc: Linus Walleij
Cc: Alexandre Courbot
Cc: linux-gpio@vger.kernel.org
Signed-off-by: Paul Gortmaker
Signed-off-by: Linus Walleij -
This file is currently getting module.h from a global gpio header
and it will fail to build once we remove module.h from that.However, the driver is controlled with the following Kconfig:
drivers/gpio/Kconfig:config GPIO_PALMAS
drivers/gpio/Kconfig: bool "TI PALMAS series PMICs GPIO"and hence the line of MODULE_DEVICE_TABLE is a no-op that can simply
be deleted. In fact it should have been removed in an earlier commit
that did demodularization, however the unseen include prevented my
build testing from detecting it.Cc: Linus Walleij
Cc: Alexandre Courbot
Cc: linux-gpio@vger.kernel.org
Signed-off-by: Paul Gortmaker
Signed-off-by: Linus Walleij
13 Sep, 2016
7 commits
-
This reverts commit 313b9a9938bf4076425741121d5d766826793e5d.
This was already fixed by
commit bf62efeb164343916ebb89dca6dfe5e6b6751700
"gpio: pca954x: fix undefined error code from remove"The latter is a better fix since it makes it easier to detect
erronous code by not assigning a default error code.Reported-by: Arnd Bergmann
Signed-off-by: Linus Walleij -
The build complains about missing MODULE_LICENSE() in
the Aspeed GPIO driver. The license is evident from the
file header, put in "GPL".Reported-by: Stephen Rothwell
Cc: Alistair Popple
Cc: Jeremy Kerr
Cc: Andrew Jeffery
Acked-by: Joel Stanley
Signed-off-by: Linus Walleij -
Follow DT and forbid default trigger if the GPIO irqchip device is
enumerated from ACPI. Triggering for these devices will be configured
automatically from ACPI interrupt resources provided by the BIOS.Suggested-by: Linus Walleij
Signed-off-by: Mika Westerberg
Signed-off-by: Linus Walleij -
These structures are only used to copy into other structures, so declare
them as const.The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)//
@r disable optional_qualifier@
identifier i;
position p;
@@
static struct gpio_chip i@p = { ... };@ok@
identifier r.i;
expression e;
position p;
@@
e = i@p;@bad@
position p != {r.p,ok.p};
identifier r.i;
struct gpio_chip e;
@@
e@i@p@depends on !bad disable optional_qualifier@
identifier r.i;
@@
static
+const
struct gpio_chip i = { ... };
//Signed-off-by: Julia Lawall
Acked-by: Joachim Eastwood
Signed-off-by: Linus Walleij -
Use devm_gpiochip_add_data() for GPIO registration and remove the need
of driver callback .remove.Signed-off-by: Wei Yongjun
Signed-off-by: Linus Walleij -
…nel/git/lee/mfd into devel
Immutable branch between MFD, GPIO and Regulator due for the v4.9 merge window
-
Linux 4.8-rc2
12 Sep, 2016
10 commits
-
ret is not initialized so it contains garbage. Ensure garbage
is not returned in the case that pdata && pdata->teardown is false
by initializing ret to 0.Signed-off-by: Colin Ian King
Signed-off-by: Linus Walleij -
This patch switches the driver to use the generic GPIO MMIO functions
that removes a bit of redundant and duplicate code.Signed-off-by: Linus Walleij
-
Both gpio_export and gpio_free APIs are obsolete now.
Signed-off-by: Amitesh Singh
Signed-off-by: Linus Walleij -
pca953x_gpio_set_multiple() has some coding style issues that make it
harder to read. Tweak the code a bit.Signed-off-by: Bartosz Golaszewski
Reviewed-by: Andy Shevchenko
Signed-off-by: Linus Walleij -
The chip_type variable in struct pca953x_chip is no longer required.
Remove it.
Signed-off-by: Bartosz Golaszewski
Reviewed-by: Andy Shevchenko
Signed-off-by: Linus Walleij -
Avoid the unnecessary if-else in pca953x_read_regs() by spltting the
routine into smaller, specialized functions and calling the right one
via a function pointer held in struct pca953x.Signed-off-by: Bartosz Golaszewski
Reviewed-by: Andy Shevchenko
Signed-off-by: Linus Walleij -
Avoid the unnecessary if-else in pca953x_write_regs() by splitting
the routine into smaller, specialized functions and calling the right
one via a function pointer held in struct pca953x_chip.Signed-off-by: Bartosz Golaszewski
Reviewed-by: Andy Shevchenko
Signed-off-by: Linus Walleij -
There are multiple places in the driver code where a
switch (chip->chip_type) is used to determine the proper register
offset.Unduplicate the code by adding a simple structure holding the possible
offsets that differ between the pca953x and pca957x chip families and
use it to avoid the checks.Signed-off-by: Bartosz Golaszewski
Reviewed-by: Andy Shevchenko
Signed-off-by: Linus Walleij -
ARM LPC32xx platform is device-tree only, there is no need to keep
a file with GPIO platform data structures, however some of macro
definitions should be moved to the driver code, which is the only user
of the removed header file.Signed-off-by: Vladimir Zapolskiy
Signed-off-by: Linus Walleij -
Using a default trigger is a bad idea if using DT to configure
interrupts, as the device's interrupt specifier will always contain
the trigger configuration.Let's warn about that particular situation, and revert to not
having a default. Hopefully, the couple of drivers still using
this feature will quickly be fixed.Signed-off-by: Marc Zyngier
Signed-off-by: Linus Walleij
08 Sep, 2016
2 commits
-
R-Car Gen3's GPIO blocks are identical to Gen2's in every respect.
Based on work for the r8a7795 (R-Car H3) by Ulrich Hecht.
Cc: Ulrich Hecht
Signed-off-by: Simon Horman
Reviewed-by: Geert Uytterhoeven
Reviewed-by: Laurent Pinchart
Tested-by: Laurent Pinchart
Signed-off-by: Linus Walleij -
The Orion GPIO controller binding description in mrvl-gpio.txt is obsolete, and
duplicates the description in gpio-mvebu.txt.Signed-off-by: Baruch Siach
Reviewed-by: Andrew Lunn
Signed-off-by: Linus Walleij
07 Sep, 2016
3 commits
-
The Aspeed SoCs contain GPIOs banked by letter, where each bank contains
8 pins. The GPIO banks are then grouped in sets of four in the register
layout.The implementation exposes multiple banks through the one driver and
requests and releases pins via the pinctrl subsystem. The hardware
supports generation of interrupts from all GPIO-capable pins.A number of hardware features are not yet supported: Configuration of
interrupt direction (ARM or LPC), debouncing, and WDT reset tolerance
for output ports.Signed-off-by: Joel Stanley
Signed-off-by: Alistair Popple
Signed-off-by: Jeremy Kerr
Signed-off-by: Andrew Jeffery
Signed-off-by: Linus Walleij -
Signed-off-by: Andrew Jeffery
Acked-by: Joel Stanley
Acked-by: Rob Herring
Signed-off-by: Linus Walleij -
The recent addition of the regulator support has led to the pca953x_remove
function returning uninitialized data when no platform data pointer is
provided, as gcc warns when using -Wmaybe-uninitialized:drivers/gpio/gpio-pca953x.c: In function 'pca953x_remove':
drivers/gpio/gpio-pca953x.c:860:9: error: 'ret' may be used uninitialized in this function [-Werror=maybe-uninitialized]This restores the previous behavior, returning 0 on success.
Signed-off-by: Arnd Bergmann
Fixes: e23efa311110 ("gpio: pca954x: Add vcc regulator and enable it")
Acked-by: Phil Reid
Signed-off-by: Linus Walleij
31 Aug, 2016
3 commits
-
Change the MFD config option as per latest naming
Signed-off-by: Keerthy
Acked-by: Mark Brown
Signed-off-by: Lee Jones -
Add driver for lp873x PMIC family GPOs. Two GPOs are supported
and can be configured in Open-drain output or Push-pull output.Signed-off-by: Keerthy
Acked-by: Linus Walleij
Signed-off-by: Lee Jones -
The LP873X chip is a power management IC for Portable Navigation Systems
and Tablet Computing devices. It contains the following components:- Regulators.
- Configurable General Purpose Output Signals (GPO).PMIC interacts with the main processor through i2c. PMIC has
couple of LDOs (Linear Regulators), couple of BUCKs (Step-Down DC-DC
Converter Cores) and GPOs (General Purpose Output Signals).Signed-off-by: Keerthy
Signed-off-by: Lee Jones
24 Aug, 2016
1 commit
-
Add binding for TPIC2810 GPO device.
Signed-off-by: Andrew F. Davis
Signed-off-by: Roger Quadros
Signed-off-by: Linus Walleij
23 Aug, 2016
4 commits
-
The Kconfig currently controlling compilation of this code is:
drivers/gpio/Kconfig:config GPIO_VF610
drivers/gpio/Kconfig: def_bool y...meaning that it currently is not being built as a module by anyone.
Lets remove the couple traces of modular infrastructure use, so that
when reading the driver there is no doubt it is builtin-only.We delete the MODULE_LICENSE tag etc. since all that information
is now contained at the top of the file in the comments.We don't replace module.h with init.h since the file already has that.
Cc: Alexandre Courbot
Cc: Stefan Agner
Cc: linux-gpio@vger.kernel.org
Signed-off-by: Paul Gortmaker
Signed-off-by: Linus Walleij -
The Kconfig currently controlling compilation of this code is:
drivers/gpio/Kconfig:config GPIO_SPEAR_SPICS
drivers/gpio/Kconfig: bool "ST SPEAr13xx SPI Chip Select as GPIO support"...meaning that it currently is not being built as a module by anyone.
Lets remove the couple traces of modular infrastructure use, so that
when reading the driver there is no doubt it is builtin-only.We delete the MODULE_LICENSE tag etc. since all that information
is now contained at the top of the file in the comments.Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
Cc: Alexandre Courbot
Cc: Shiraz Hashim
Cc: linux-gpio@vger.kernel.org
Signed-off-by: Paul Gortmaker
Signed-off-by: Linus Walleij -
The Kconfig currently controlling compilation of this code is:
drivers/gpio/Kconfig:config GPIO_MXC
drivers/gpio/Kconfig: def_bool y...meaning that it currently is not being built as a module by anyone.
Lets remove the couple traces of modular infrastructure use, so that
when reading the driver there is no doubt it is builtin-only.We delete the MODULE_LICENSE tag etc. since all that information
was (or is now) contained at the top of the file in the comments.
Note the original e-mail had a missing/typo'd @ symbol anyway.We don't replace module.h with init.h since the file already has that.
Cc: Alexandre Courbot
Cc: Daniel Mack
Cc: Juergen Beisert
Cc: linux-gpio@vger.kernel.org
Signed-off-by: Paul Gortmaker
Signed-off-by: Linus Walleij -
The Kconfig currently controlling compilation of this code is:
drivers/gpio/Kconfig:config GPIO_MSIC
drivers/gpio/Kconfig: bool "Intel MSIC mixed signal gpio support"...meaning that it currently is not being built as a module by anyone.
Lets remove the couple traces of modular infrastructure use, so that
when reading the driver there is no doubt it is builtin-only.We delete the MODULE_LICENSE tag etc. since all that information
is already contained at the top of the file in the comments.We don't replace module.h with init.h since the file already has that.
Cc: Alexandre Courbot
Cc: Mathias Nyman
Cc: linux-gpio@vger.kernel.org
Signed-off-by: Paul Gortmaker
Signed-off-by: Linus Walleij
19 Aug, 2016
5 commits
-
This patch adds .get_direction method for the gpio_chip structure
of the wcove_gpio driver.Signed-off-by: Bin Gao
Signed-off-by: Linus Walleij -
This driver is generic and aims to support all Technologic Systems's
boards embedding FPGA GPIOs with an I2C interface.This driver supports TS-4900, TS-7970, TS-7990 and TS-4100 series.
Signed-off-by: Lucile Quirion
Signed-off-by: Linus Walleij -
Device tree binding documentation for Technologic's I2C-FPGA GPIO
controller.Signed-off-by: Lucile Quirion
[Quirked in a reference to gpio.txt]
Signed-off-by: Linus Walleij -
This binding is no longer correct, the GPIO information can should be
added to the parent node and not into this child node. See
Documentation/devicetree/bindings/mfd/tps65086.txt for the correct usage.Signed-off-by: Andrew F. Davis
Signed-off-by: Linus Walleij -
The if...else... block after the loop can be dropped with
a slight refactoring.Signed-off-by: Masahiro Yamada
Signed-off-by: Linus Walleij
15 Aug, 2016
3 commits
-
Pull thermal updates from Zhang Rui:
- Fix a race condition when updating cooling device, which may lead to
a situation where a thermal governor never updates the cooling
device. From Michele Di Giorgio.- Fix a zero division error when disabling the forced idle injection
from the intel powerclamp. From Petr Mladek.- Add suspend/resume callback for intel_pch_thermal thermal driver.
From Srinivas Pandruvada.- Another two fixes for clocking cooling driver and hwmon sysfs I/F.
From Michele Di Giorgio and Kuninori Morimoto.[ Hmm. That suspend/resume callback for intel_pch_thermal doesn't look
like a fix, but I'm letting it slide.. - Linus ]* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux:
thermal: clock_cooling: Fix missing mutex_init()
thermal: hwmon: EXPORT_SYMBOL_GPL for thermal hwmon sysfs
thermal: fix race condition when updating cooling device
thermal/powerclamp: Prevent division by zero when counting interval
thermal: intel_pch_thermal: Add suspend/resume callback -
Pull m68knommu fix from Greg Ungerer:
"This contains only a single fix for a register corruption problem on
certain types of m68k flat format binaries"* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
m68knommu: fix user a5 register being overwritten