mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
This is the bulk of GPIO changes for the v4.21 kernel series:
Core changes:
- Some core changes are already in outside of this pull
request as they came through the regulator tree, most
notably devm_gpiod_unhinge() that removes devres refcount
management from a GPIO descriptor. This is needed in
subsystems such as regulators where the regulator core
need to take over the reference counting and lifecycle
management for a GPIO descriptor.
- We dropped devm_gpiochip_remove() and devm_gpio_chip_match()
as nothing needs it. We can bring it back if need be.
- Add a global TODO so people see where we are going. This
helps setting the direction now that we are two GPIO
maintainers.
- Handle the MMC CD/WP properties in the device tree core.
(The bulk of patches activating this code is already
merged through the MMC/SD tree.)
- Augment gpiochip_request_own_desc() to pass a flag so
we as gpiochips can request lines as active low or open
drain etc even from ourselves.
New drivers:
- New driver for Cadence GPIO blocks.
- New driver for Atmel SAMA5D2 PIOBU GPIO lines.
Driver improvements:
- A major refactoring of the PCA953x driver - this driver has
been around for ages, and is now modernized to reduce code
duplication that has stacked up and is using regmap to read
write and cache registers.
- Intel drivers are now maintained in a separate tree and
start with a round of cleanups and unifications.
-----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJcJJcmAAoJEEEQszewGV1zdCoQAMSLPh+4QdYLFS3ZmnsPvZkg
Zkz94RVT+uLLmHpR8XBl0wl4mmYCiwB50IwsXwlvJGceSXjCn6hLg9BZBP5hFMCb
yFk3fgXQSh7TOnpjgbCWSssCjpejQ0cOb/2nWHz5s/fbYKYlh3VXckW9hhW+R+b3
6+Mno1SzmBkpVVQ21ISlZeLoNDynkCW6DfjiKMuHAyxzxa0oZ9Qid+tnVDnQM4rD
rCnvYLuvxlXw97W+LI7AU9KoCITdO+2M/0dtGVEEYKfHseRReSy2Oo3nlqCglygX
cNkBe9RYU1CJdas1P/c18wjDAqWp/pbugzHDkYF5Y3tBtB2rQSftjtnQngiVMXMt
De7ejPvL7/OLECvI2WUD6y9NAduw/HE4FO8BBdn0gP/a9svJpVZ993yPd3F9n7EZ
ZIBpycDZVtkcE7dwQgek17bFILRY5nBBMB9oCLL2wk48qdmjpcAbxVfGSsYOe6wO
+cZRZuj/eR3i9gHRugfFx7Evoc7l4erihTpES/YAy3De1s3uV8KjT4zE7Jh+M9LW
GM797BcXJJeb5toC7HZ/G2UAVMyWEhY0n7PGG616CS8IrzmzIZpJOL9kUVOWPb0F
9CPt6qhVbUl9rxp1H/Z3TxvYqIw6icn/z5YewZxLU1zaBlpE3jc7PhZb5hOGnFUf
/DWwe4n99JsjHTrGx1ra
=05LW
-----END PGP SIGNATURE-----
Merge tag 'gpio-v4.21-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio
Pull GPIO updates from Linus Walleij:
"This is the bulk of GPIO changes for the v4.21 kernel series.
Core changes:
- Some core changes are already in outside of this pull request as
they came through the regulator tree, most notably
devm_gpiod_unhinge() that removes devres refcount management from a
GPIO descriptor. This is needed in subsystems such as regulators
where the regulator core need to take over the reference counting
and lifecycle management for a GPIO descriptor.
- We dropped devm_gpiochip_remove() and devm_gpio_chip_match() as
nothing needs it. We can bring it back if need be.
- Add a global TODO so people see where we are going. This helps
setting the direction now that we are two GPIO maintainers.
- Handle the MMC CD/WP properties in the device tree core. (The bulk
of patches activating this code is already merged through the
MMC/SD tree.)
- Augment gpiochip_request_own_desc() to pass a flag so we as
gpiochips can request lines as active low or open drain etc even
from ourselves.
New drivers:
- New driver for Cadence GPIO blocks.
- New driver for Atmel SAMA5D2 PIOBU GPIO lines.
Driver improvements:
- A major refactoring of the PCA953x driver - this driver has been
around for ages, and is now modernized to reduce code duplication
that has stacked up and is using regmap to read write and cache
registers.
- Intel drivers are now maintained in a separate tree and start with
a round of cleanups and unifications"
* tag 'gpio-v4.21-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (99 commits)
gpio: sama5d2-piobu: Depend on OF_GPIO
gpio: Add Cadence GPIO driver
dt-bindings: gpio: Add bindings for Cadence GPIO
gpiolib-acpi: remove unused variable 'err', cleans up build warning
gpio: mxs: read pin level directly instead of using .get
gpio: aspeed: remove duplicated statement
gpio: add driver for SAMA5D2 PIOBU pins
dt-bindings: arm: atmel: describe SECUMOD usage as a GPIO controller
gpio/mmc/of: Respect polarity in the device tree
dt-bindings: gpio: rcar: Add r8a774c0 (RZ/G2E) support
memory: omap-gpmc: Get the header of the enum
ARM: omap1: Fix new user of gpiochip_request_own_desc()
gpio: pca953x: Add regmap dependency for PCA953x driver
gpio: raspberrypi-exp: decrease refcount on firmware dt node
gpiolib: Fix return value of gpio_to_desc() stub if !GPIOLIB
gpio: pca953x: Restore registers after suspend/resume cycle
gpio: pca953x: Zap single use of pca953x_read_single()
gpio: pca953x: Zap ad-hoc reg_output cache
gpio: pca953x: Zap ad-hoc reg_direction cache
gpio: pca953x: Perform basic regmap conversion
...
This commit is contained in:
commit
24dc83635f
57 changed files with 1741 additions and 678 deletions
|
|
@ -14,6 +14,34 @@
|
|||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/* GPIOs implemented by main GPIO controller */
|
||||
#define TEGRA186_MAIN_GPIO_PORT_A 0
|
||||
#define TEGRA186_MAIN_GPIO_PORT_B 1
|
||||
#define TEGRA186_MAIN_GPIO_PORT_C 2
|
||||
#define TEGRA186_MAIN_GPIO_PORT_D 3
|
||||
#define TEGRA186_MAIN_GPIO_PORT_E 4
|
||||
#define TEGRA186_MAIN_GPIO_PORT_F 5
|
||||
#define TEGRA186_MAIN_GPIO_PORT_G 6
|
||||
#define TEGRA186_MAIN_GPIO_PORT_H 7
|
||||
#define TEGRA186_MAIN_GPIO_PORT_I 8
|
||||
#define TEGRA186_MAIN_GPIO_PORT_J 9
|
||||
#define TEGRA186_MAIN_GPIO_PORT_K 10
|
||||
#define TEGRA186_MAIN_GPIO_PORT_L 11
|
||||
#define TEGRA186_MAIN_GPIO_PORT_M 12
|
||||
#define TEGRA186_MAIN_GPIO_PORT_N 13
|
||||
#define TEGRA186_MAIN_GPIO_PORT_O 14
|
||||
#define TEGRA186_MAIN_GPIO_PORT_P 15
|
||||
#define TEGRA186_MAIN_GPIO_PORT_Q 16
|
||||
#define TEGRA186_MAIN_GPIO_PORT_R 17
|
||||
#define TEGRA186_MAIN_GPIO_PORT_T 18
|
||||
#define TEGRA186_MAIN_GPIO_PORT_X 19
|
||||
#define TEGRA186_MAIN_GPIO_PORT_Y 20
|
||||
#define TEGRA186_MAIN_GPIO_PORT_BB 21
|
||||
#define TEGRA186_MAIN_GPIO_PORT_CC 22
|
||||
|
||||
#define TEGRA186_MAIN_GPIO(port, offset) \
|
||||
((TEGRA186_MAIN_GPIO_PORT_##port * 8) + offset)
|
||||
|
||||
/* need to keep these for backwards-compatibility */
|
||||
#define TEGRA_MAIN_GPIO_PORT_A 0
|
||||
#define TEGRA_MAIN_GPIO_PORT_B 1
|
||||
#define TEGRA_MAIN_GPIO_PORT_C 2
|
||||
|
|
@ -42,6 +70,19 @@
|
|||
((TEGRA_MAIN_GPIO_PORT_##port * 8) + offset)
|
||||
|
||||
/* GPIOs implemented by AON GPIO controller */
|
||||
#define TEGRA186_AON_GPIO_PORT_S 0
|
||||
#define TEGRA186_AON_GPIO_PORT_U 1
|
||||
#define TEGRA186_AON_GPIO_PORT_V 2
|
||||
#define TEGRA186_AON_GPIO_PORT_W 3
|
||||
#define TEGRA186_AON_GPIO_PORT_Z 4
|
||||
#define TEGRA186_AON_GPIO_PORT_AA 5
|
||||
#define TEGRA186_AON_GPIO_PORT_EE 6
|
||||
#define TEGRA186_AON_GPIO_PORT_FF 7
|
||||
|
||||
#define TEGRA186_AON_GPIO(port, offset) \
|
||||
((TEGRA186_AON_GPIO_PORT_##port * 8) + offset)
|
||||
|
||||
/* need to keep these for backwards-compatibility */
|
||||
#define TEGRA_AON_GPIO_PORT_S 0
|
||||
#define TEGRA_AON_GPIO_PORT_U 1
|
||||
#define TEGRA_AON_GPIO_PORT_V 2
|
||||
|
|
|
|||
Loading…
Reference in a new issue