diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-11 14:23:13 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-11 14:23:13 -0500 |
| commit | ce01e871a1d44cc97cdd7e5ba6cb0c3613c15552 (patch) | |
| tree | f1f3c8a0022d34d3da54700b0e48a1d7be48fe50 /include | |
| parent | a1df7efedab047a8ea4d5850737f03d3679726a7 (diff) | |
| parent | f724e05baaf0677151c339c0249a05876c779a1d (diff) | |
Merge tag 'pinctrl-v3.20-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl
Pull pincontrol updates from Linus Walleij:
:This is the bulk of pin control changes for the v3.20 cycle:
Framework changes and enhancements:
- Passing -DDEBUG recursively to subdir drivers so we get debug
messages properly turned on.
- Infer map type from DT property in the groups parsing code in the
generic pinconfig code.
- Support for custom parameter passing in generic pin config. This
is used when you are using the generic pin config, but want to add
a few custom properties that no other driver will use.
New drivers:
- Driver for the Xilinx Zynq
- Driver for the AmLogic Meson SoCs
New features in drivers:
- Sleep support (suspend/resume) for the Cherryview driver
- mvebeu a38x can now mux a UART on pins MPP19 and MPP20
- Migrated the qualcomm driver to generic pin config handling of
extended config options in the core code.
- Support BUS1 and AUDIO in the Exynos pin controller.
- Add some missing functions in the sun6i driver.
- Add support for the A31S variant in the sun6i driver.
- EMEv2 support in the Renesas PFC driver.
- Add support for Qualcomm MSM8916 in the qcom driver.
Deleted features
- Drop support for the SiRF Marco that was never released to the
market.
- Drop SH7372 support as the support for this platform is removed
from the kernel"
* tag 'pinctrl-v3.20-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (40 commits)
sh-pfc: emev2 - Fix mangled author name
pinctrl: cherryview: Configure HiZ pins to be input when requested as GPIOs
pinctrl: imx25: fix numbering for pins
pinctrl: pinctrl-imx: don't use invalid value of conf_reg
pinctrl: qcom: delete pin_config_get/set pinconf operations
pinctrl: qcom: Add msm8916 pinctrl driver
DT: pinctrl: Document Qualcomm MSM8916 pinctrl binding
pinctrl: qcom: increase variable size for register offsets
pinctrl: hide PCONFDUMP in #ifdef
pinctrl: rockchip: Only mask interrupts; never disable
pinctrl: zynq: Fix usb0 pins
pinctrl: sh-pfc: sh7372: Remove DT binding documentation
pinctrl: sh-pfc: sh7372: Remove PFC support
sh-pfc: Add emev2 pinmux support
sh-pfc: add macro to define pinmux without function
pinctrl: add driver for Amlogic Meson SoCs
staging: drivers: pinctrl: Fixed checkpatch.pl warnings
pinctrl: exynos: Add AUDIO pin controller for exynos7
sh-pfc: r8a7790: add MLB+ pin group
sh-pfc: r8a7791: add MLB+ pin group
...
Diffstat (limited to 'include')
| -rw-r--r-- | include/dt-bindings/gpio/meson8-gpio.h | 157 | ||||
| -rw-r--r-- | include/linux/pinctrl/consumer.h | 6 | ||||
| -rw-r--r-- | include/linux/pinctrl/pinconf-generic.h | 29 | ||||
| -rw-r--r-- | include/linux/pinctrl/pinctrl.h | 12 |
4 files changed, 201 insertions, 3 deletions
diff --git a/include/dt-bindings/gpio/meson8-gpio.h b/include/dt-bindings/gpio/meson8-gpio.h new file mode 100644 index 000000000000..fdaeb5cbf5e1 --- /dev/null +++ b/include/dt-bindings/gpio/meson8-gpio.h | |||
| @@ -0,0 +1,157 @@ | |||
| 1 | /* | ||
| 2 | * GPIO definitions for Amlogic Meson8 SoCs | ||
| 3 | * | ||
| 4 | * Copyright (C) 2014 Beniamino Galvani <b.galvani@gmail.com> | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or | ||
| 7 | * modify it under the terms of the GNU General Public License | ||
| 8 | * version 2 as published by the Free Software Foundation. | ||
| 9 | * | ||
| 10 | * You should have received a copy of the GNU General Public License | ||
| 11 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 12 | */ | ||
| 13 | |||
| 14 | #ifndef _DT_BINDINGS_MESON8_GPIO_H | ||
| 15 | #define _DT_BINDINGS_MESON8_GPIO_H | ||
| 16 | |||
| 17 | /* First GPIO chip */ | ||
| 18 | #define GPIOX_0 0 | ||
| 19 | #define GPIOX_1 1 | ||
| 20 | #define GPIOX_2 2 | ||
| 21 | #define GPIOX_3 3 | ||
| 22 | #define GPIOX_4 4 | ||
| 23 | #define GPIOX_5 5 | ||
| 24 | #define GPIOX_6 6 | ||
| 25 | #define GPIOX_7 7 | ||
| 26 | #define GPIOX_8 8 | ||
| 27 | #define GPIOX_9 9 | ||
| 28 | #define GPIOX_10 10 | ||
| 29 | #define GPIOX_11 11 | ||
| 30 | #define GPIOX_12 12 | ||
| 31 | #define GPIOX_13 13 | ||
| 32 | #define GPIOX_14 14 | ||
| 33 | #define GPIOX_15 15 | ||
| 34 | #define GPIOX_16 16 | ||
| 35 | #define GPIOX_17 17 | ||
| 36 | #define GPIOX_18 18 | ||
| 37 | #define GPIOX_19 19 | ||
| 38 | #define GPIOX_20 20 | ||
| 39 | #define GPIOX_21 21 | ||
| 40 | #define GPIOY_0 22 | ||
| 41 | #define GPIOY_1 23 | ||
| 42 | #define GPIOY_2 24 | ||
| 43 | #define GPIOY_3 25 | ||
| 44 | #define GPIOY_4 26 | ||
| 45 | #define GPIOY_5 27 | ||
| 46 | #define GPIOY_6 28 | ||
| 47 | #define GPIOY_7 29 | ||
| 48 | #define GPIOY_8 30 | ||
| 49 | #define GPIOY_9 31 | ||
| 50 | #define GPIOY_10 32 | ||
| 51 | #define GPIOY_11 33 | ||
| 52 | #define GPIOY_12 34 | ||
| 53 | #define GPIOY_13 35 | ||
| 54 | #define GPIOY_14 36 | ||
| 55 | #define GPIOY_15 37 | ||
| 56 | #define GPIOY_16 38 | ||
| 57 | #define GPIODV_0 39 | ||
| 58 | #define GPIODV_1 40 | ||
| 59 | #define GPIODV_2 41 | ||
| 60 | #define GPIODV_3 42 | ||
| 61 | #define GPIODV_4 43 | ||
| 62 | #define GPIODV_5 44 | ||
| 63 | #define GPIODV_6 45 | ||
| 64 | #define GPIODV_7 46 | ||
| 65 | #define GPIODV_8 47 | ||
| 66 | #define GPIODV_9 48 | ||
| 67 | #define GPIODV_10 49 | ||
| 68 | #define GPIODV_11 50 | ||
| 69 | #define GPIODV_12 51 | ||
| 70 | #define GPIODV_13 52 | ||
| 71 | #define GPIODV_14 53 | ||
| 72 | #define GPIODV_15 54 | ||
| 73 | #define GPIODV_16 55 | ||
| 74 | #define GPIODV_17 56 | ||
| 75 | #define GPIODV_18 57 | ||
| 76 | #define GPIODV_19 58 | ||
| 77 | #define GPIODV_20 59 | ||
| 78 | #define GPIODV_21 60 | ||
| 79 | #define GPIODV_22 61 | ||
| 80 | #define GPIODV_23 62 | ||
| 81 | #define GPIODV_24 63 | ||
| 82 | #define GPIODV_25 64 | ||
| 83 | #define GPIODV_26 65 | ||
| 84 | #define GPIODV_27 66 | ||
| 85 | #define GPIODV_28 67 | ||
| 86 | #define GPIODV_29 68 | ||
| 87 | #define GPIOH_0 69 | ||
| 88 | #define GPIOH_1 70 | ||
| 89 | #define GPIOH_2 71 | ||
| 90 | #define GPIOH_3 72 | ||
| 91 | #define GPIOH_4 73 | ||
| 92 | #define GPIOH_5 74 | ||
| 93 | #define GPIOH_6 75 | ||
| 94 | #define GPIOH_7 76 | ||
| 95 | #define GPIOH_8 77 | ||
| 96 | #define GPIOH_9 78 | ||
| 97 | #define GPIOZ_0 79 | ||
| 98 | #define GPIOZ_1 80 | ||
| 99 | #define GPIOZ_2 81 | ||
| 100 | #define GPIOZ_3 82 | ||
| 101 | #define GPIOZ_4 83 | ||
| 102 | #define GPIOZ_5 84 | ||
| 103 | #define GPIOZ_6 85 | ||
| 104 | #define GPIOZ_7 86 | ||
| 105 | #define GPIOZ_8 87 | ||
| 106 | #define GPIOZ_9 88 | ||
| 107 | #define GPIOZ_10 89 | ||
| 108 | #define GPIOZ_11 90 | ||
| 109 | #define GPIOZ_12 91 | ||
| 110 | #define GPIOZ_13 92 | ||
| 111 | #define GPIOZ_14 93 | ||
| 112 | #define CARD_0 94 | ||
| 113 | #define CARD_1 95 | ||
| 114 | #define CARD_2 96 | ||
| 115 | #define CARD_3 97 | ||
| 116 | #define CARD_4 98 | ||
| 117 | #define CARD_5 99 | ||
| 118 | #define CARD_6 100 | ||
| 119 | #define BOOT_0 101 | ||
| 120 | #define BOOT_1 102 | ||
| 121 | #define BOOT_2 103 | ||
| 122 | #define BOOT_3 104 | ||
| 123 | #define BOOT_4 105 | ||
| 124 | #define BOOT_5 106 | ||
| 125 | #define BOOT_6 107 | ||
| 126 | #define BOOT_7 108 | ||
| 127 | #define BOOT_8 109 | ||
| 128 | #define BOOT_9 110 | ||
| 129 | #define BOOT_10 111 | ||
| 130 | #define BOOT_11 112 | ||
| 131 | #define BOOT_12 113 | ||
| 132 | #define BOOT_13 114 | ||
| 133 | #define BOOT_14 115 | ||
| 134 | #define BOOT_15 116 | ||
| 135 | #define BOOT_16 117 | ||
| 136 | #define BOOT_17 118 | ||
| 137 | #define BOOT_18 119 | ||
| 138 | |||
| 139 | /* Second GPIO chip */ | ||
| 140 | #define GPIOAO_0 0 | ||
| 141 | #define GPIOAO_1 1 | ||
| 142 | #define GPIOAO_2 2 | ||
| 143 | #define GPIOAO_3 3 | ||
| 144 | #define GPIOAO_4 4 | ||
| 145 | #define GPIOAO_5 5 | ||
| 146 | #define GPIOAO_6 6 | ||
| 147 | #define GPIOAO_7 7 | ||
| 148 | #define GPIOAO_8 8 | ||
| 149 | #define GPIOAO_9 9 | ||
| 150 | #define GPIOAO_10 10 | ||
| 151 | #define GPIOAO_11 11 | ||
| 152 | #define GPIOAO_12 12 | ||
| 153 | #define GPIOAO_13 13 | ||
| 154 | #define GPIO_BSD_EN 14 | ||
| 155 | #define GPIO_TEST_N 15 | ||
| 156 | |||
| 157 | #endif /* _DT_BINDINGS_MESON8_GPIO_H */ | ||
diff --git a/include/linux/pinctrl/consumer.h b/include/linux/pinctrl/consumer.h index 18eccefea06e..72c0415d6c21 100644 --- a/include/linux/pinctrl/consumer.h +++ b/include/linux/pinctrl/consumer.h | |||
| @@ -82,7 +82,7 @@ static inline int pinctrl_gpio_direction_output(unsigned gpio) | |||
| 82 | 82 | ||
| 83 | static inline struct pinctrl * __must_check pinctrl_get(struct device *dev) | 83 | static inline struct pinctrl * __must_check pinctrl_get(struct device *dev) |
| 84 | { | 84 | { |
| 85 | return NULL; | 85 | return ERR_PTR(-ENOSYS); |
| 86 | } | 86 | } |
| 87 | 87 | ||
| 88 | static inline void pinctrl_put(struct pinctrl *p) | 88 | static inline void pinctrl_put(struct pinctrl *p) |
| @@ -93,7 +93,7 @@ static inline struct pinctrl_state * __must_check pinctrl_lookup_state( | |||
| 93 | struct pinctrl *p, | 93 | struct pinctrl *p, |
| 94 | const char *name) | 94 | const char *name) |
| 95 | { | 95 | { |
| 96 | return NULL; | 96 | return ERR_PTR(-ENOSYS); |
