1c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only 2c9ccf3a3SEmmanuel Vadot%YAML 1.2 3c9ccf3a3SEmmanuel Vadot--- 4c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/samsung,pinctrl.yaml# 5c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c9ccf3a3SEmmanuel Vadot 7c9ccf3a3SEmmanuel Vadottitle: Samsung S3C/S5P/Exynos SoC pin controller 8c9ccf3a3SEmmanuel Vadot 9c9ccf3a3SEmmanuel Vadotmaintainers: 10c9ccf3a3SEmmanuel Vadot - Krzysztof Kozlowski <krzk@kernel.org> 11c9ccf3a3SEmmanuel Vadot - Sylwester Nawrocki <s.nawrocki@samsung.com> 12c9ccf3a3SEmmanuel Vadot - Tomasz Figa <tomasz.figa@gmail.com> 13c9ccf3a3SEmmanuel Vadot 14c9ccf3a3SEmmanuel Vadotdescription: | 15c9ccf3a3SEmmanuel Vadot This is a part of device tree bindings for Samsung S3C/S5P/Exynos SoC pin 16c9ccf3a3SEmmanuel Vadot controller. 17c9ccf3a3SEmmanuel Vadot 18c9ccf3a3SEmmanuel Vadot All the pin controller nodes should be represented in the aliases node using 19c9ccf3a3SEmmanuel Vadot the following format 'pinctrl{n}' where n is a unique number for the alias. 20c9ccf3a3SEmmanuel Vadot 21c9ccf3a3SEmmanuel Vadot The controller supports three types of interrupts:: 22c9ccf3a3SEmmanuel Vadot - External GPIO interrupts (see interrupts property in pin controller node); 23c9ccf3a3SEmmanuel Vadot 24c9ccf3a3SEmmanuel Vadot - External wake-up interrupts - multiplexed (capable of waking up the system 25c9ccf3a3SEmmanuel Vadot see interrupts property in external wake-up interrupt controller node - 26c9ccf3a3SEmmanuel Vadot samsung,pinctrl-wakeup-interrupt.yaml); 27c9ccf3a3SEmmanuel Vadot 28c9ccf3a3SEmmanuel Vadot - External wake-up interrupts - direct (capable of waking up the system, see 29c9ccf3a3SEmmanuel Vadot interrupts property in every bank of pin controller with external wake-up 30c9ccf3a3SEmmanuel Vadot interrupt controller - samsung,pinctrl-gpio-bank.yaml). 31c9ccf3a3SEmmanuel Vadot 32c9ccf3a3SEmmanuel Vadotproperties: 33c9ccf3a3SEmmanuel Vadot $nodename: 34c9ccf3a3SEmmanuel Vadot pattern: "^pinctrl(@.*)?" 35c9ccf3a3SEmmanuel Vadot 36c9ccf3a3SEmmanuel Vadot compatible: 37c9ccf3a3SEmmanuel Vadot enum: 38*8d13bc63SEmmanuel Vadot - google,gs101-pinctrl 39c9ccf3a3SEmmanuel Vadot - samsung,s3c2412-pinctrl 40c9ccf3a3SEmmanuel Vadot - samsung,s3c2416-pinctrl 41c9ccf3a3SEmmanuel Vadot - samsung,s3c2440-pinctrl 42c9ccf3a3SEmmanuel Vadot - samsung,s3c2450-pinctrl 43c9ccf3a3SEmmanuel Vadot - samsung,s3c64xx-pinctrl 44c9ccf3a3SEmmanuel Vadot - samsung,s5pv210-pinctrl 45c9ccf3a3SEmmanuel Vadot - samsung,exynos3250-pinctrl 46c9ccf3a3SEmmanuel Vadot - samsung,exynos4210-pinctrl 47c9ccf3a3SEmmanuel Vadot - samsung,exynos4x12-pinctrl 48c9ccf3a3SEmmanuel Vadot - samsung,exynos5250-pinctrl 49c9ccf3a3SEmmanuel Vadot - samsung,exynos5260-pinctrl 50c9ccf3a3SEmmanuel Vadot - samsung,exynos5410-pinctrl 51c9ccf3a3SEmmanuel Vadot - samsung,exynos5420-pinctrl 52c9ccf3a3SEmmanuel Vadot - samsung,exynos5433-pinctrl 53c9ccf3a3SEmmanuel Vadot - samsung,exynos7-pinctrl 54c9ccf3a3SEmmanuel Vadot - samsung,exynos7885-pinctrl 55c9ccf3a3SEmmanuel Vadot - samsung,exynos850-pinctrl 56c9ccf3a3SEmmanuel Vadot - samsung,exynosautov9-pinctrl 57*8d13bc63SEmmanuel Vadot - samsung,exynosautov920-pinctrl 58c9ccf3a3SEmmanuel Vadot - tesla,fsd-pinctrl 59c9ccf3a3SEmmanuel Vadot 60c9ccf3a3SEmmanuel Vadot interrupts: 61c9ccf3a3SEmmanuel Vadot description: 62c9ccf3a3SEmmanuel Vadot Required for GPIO banks supporting external GPIO interrupts. 63c9ccf3a3SEmmanuel Vadot maxItems: 1 64c9ccf3a3SEmmanuel Vadot 65c9ccf3a3SEmmanuel Vadot power-domains: 66c9ccf3a3SEmmanuel Vadot maxItems: 1 67c9ccf3a3SEmmanuel Vadot 68c9ccf3a3SEmmanuel Vadot reg: 69c9ccf3a3SEmmanuel Vadot description: 70c9ccf3a3SEmmanuel Vadot Second base address of the pin controller if the specific registers of 71c9ccf3a3SEmmanuel Vadot the pin controller are separated into the different base address. 72c9ccf3a3SEmmanuel Vadot Only certain banks of certain pin controller might need it. 73c9ccf3a3SEmmanuel Vadot minItems: 1 74c9ccf3a3SEmmanuel Vadot maxItems: 2 75c9ccf3a3SEmmanuel Vadot 76c9ccf3a3SEmmanuel Vadot wakeup-interrupt-controller: 77c9ccf3a3SEmmanuel Vadot $ref: samsung,pinctrl-wakeup-interrupt.yaml 78c9ccf3a3SEmmanuel Vadot 79c9ccf3a3SEmmanuel VadotpatternProperties: 80c9ccf3a3SEmmanuel Vadot "^[a-z]+[0-9]*-gpio-bank$": 81c9ccf3a3SEmmanuel Vadot description: 82c9ccf3a3SEmmanuel Vadot Pin banks of the controller are represented by child nodes of the 83c9ccf3a3SEmmanuel Vadot controller node. Bank name is taken from name of the node. 84c9ccf3a3SEmmanuel Vadot $ref: samsung,pinctrl-gpio-bank.yaml 85c9ccf3a3SEmmanuel Vadot 86c9ccf3a3SEmmanuel Vadot "^[a-z0-9-]+-pins$": 87c9ccf3a3SEmmanuel Vadot oneOf: 88c9ccf3a3SEmmanuel Vadot - $ref: samsung,pinctrl-pins-cfg.yaml 89c9ccf3a3SEmmanuel Vadot required: 90c9ccf3a3SEmmanuel Vadot - samsung,pins 91c9ccf3a3SEmmanuel Vadot - type: object 92c9ccf3a3SEmmanuel Vadot patternProperties: 93c9ccf3a3SEmmanuel Vadot "^[a-z0-9-]+-pins$": 94c9ccf3a3SEmmanuel Vadot $ref: samsung,pinctrl-pins-cfg.yaml 95c9ccf3a3SEmmanuel Vadot 96c9ccf3a3SEmmanuel Vadot additionalProperties: false 97c9ccf3a3SEmmanuel Vadot 98c9ccf3a3SEmmanuel Vadot "^(initial|sleep)-state$": 997ef62cebSEmmanuel Vadot type: object 1007ef62cebSEmmanuel Vadot additionalProperties: false 1017ef62cebSEmmanuel Vadot 102c9ccf3a3SEmmanuel Vadot patternProperties: 103c9ccf3a3SEmmanuel Vadot "^(pin-[a-z0-9-]+|[a-z0-9-]+-pin)$": 104c9ccf3a3SEmmanuel Vadot $ref: samsung,pinctrl-pins-cfg.yaml 105c9ccf3a3SEmmanuel Vadot 106c9ccf3a3SEmmanuel Vadot properties: 107c9ccf3a3SEmmanuel Vadot samsung,pins: 108c9ccf3a3SEmmanuel Vadot description: See samsung,pinctrl-pins-cfg.yaml 109c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string-array 110c9ccf3a3SEmmanuel Vadot maxItems: 1 111c9ccf3a3SEmmanuel Vadot 112c9ccf3a3SEmmanuel Vadot required: 113c9ccf3a3SEmmanuel Vadot - samsung,pins 114c9ccf3a3SEmmanuel Vadot 115c9ccf3a3SEmmanuel Vadot unevaluatedProperties: false 116c9ccf3a3SEmmanuel Vadot 117c9ccf3a3SEmmanuel Vadotrequired: 118c9ccf3a3SEmmanuel Vadot - compatible 119c9ccf3a3SEmmanuel Vadot - reg 120c9ccf3a3SEmmanuel Vadot 121c9ccf3a3SEmmanuel VadotallOf: 122fac71e4eSEmmanuel Vadot - $ref: pinctrl.yaml# 123c9ccf3a3SEmmanuel Vadot - if: 124c9ccf3a3SEmmanuel Vadot properties: 125c9ccf3a3SEmmanuel Vadot compatible: 126c9ccf3a3SEmmanuel Vadot contains: 127c9ccf3a3SEmmanuel Vadot const: samsung,exynos5433-pinctrl 128c9ccf3a3SEmmanuel Vadot then: 129c9ccf3a3SEmmanuel Vadot properties: 130c9ccf3a3SEmmanuel Vadot reg: 131c9ccf3a3SEmmanuel Vadot minItems: 1 132c9ccf3a3SEmmanuel Vadot maxItems: 2 133c9ccf3a3SEmmanuel Vadot else: 134c9ccf3a3SEmmanuel Vadot properties: 135c9ccf3a3SEmmanuel Vadot reg: 136c9ccf3a3SEmmanuel Vadot minItems: 1 137c9ccf3a3SEmmanuel Vadot maxItems: 1 138c9ccf3a3SEmmanuel Vadot 139c9ccf3a3SEmmanuel VadotadditionalProperties: false 140c9ccf3a3SEmmanuel Vadot 141c9ccf3a3SEmmanuel Vadotexamples: 142c9ccf3a3SEmmanuel Vadot - | 143c9ccf3a3SEmmanuel Vadot pinctrl@7f008000 { 144c9ccf3a3SEmmanuel Vadot compatible = "samsung,s3c64xx-pinctrl"; 145c9ccf3a3SEmmanuel Vadot reg = <0x7f008000 0x1000>; 146c9ccf3a3SEmmanuel Vadot interrupt-parent = <&vic1>; 147c9ccf3a3SEmmanuel Vadot interrupts = <21>; 148c9ccf3a3SEmmanuel Vadot 149c9ccf3a3SEmmanuel Vadot wakeup-interrupt-controller { 150c9ccf3a3SEmmanuel Vadot compatible = "samsung,s3c64xx-wakeup-eint"; 151c9ccf3a3SEmmanuel Vadot interrupts-extended = <&vic0 0>, 152c9ccf3a3SEmmanuel Vadot <&vic0 1>, 153c9ccf3a3SEmmanuel Vadot <&vic1 0>, 154c9ccf3a3SEmmanuel Vadot <&vic1 1>; 155c9ccf3a3SEmmanuel Vadot }; 156c9ccf3a3SEmmanuel Vadot 157c9ccf3a3SEmmanuel Vadot /* Pin bank with external GPIO or muxed external wake-up interrupts */ 158c9ccf3a3SEmmanuel Vadot gpa-gpio-bank { 159c9ccf3a3SEmmanuel Vadot gpio-controller; 160c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 161c9ccf3a3SEmmanuel Vadot interrupt-controller; 162c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 163c9ccf3a3SEmmanuel Vadot }; 164c9ccf3a3SEmmanuel Vadot 165c9ccf3a3SEmmanuel Vadot // ... 166c9ccf3a3SEmmanuel Vadot 167c9ccf3a3SEmmanuel Vadot uart0-data-pins { 168c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa-0", "gpa-1"; 1697ef62cebSEmmanuel Vadot samsung,pin-function = <2>; 1707ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 171c9ccf3a3SEmmanuel Vadot }; 172c9ccf3a3SEmmanuel Vadot 173c9ccf3a3SEmmanuel Vadot // ... 174c9ccf3a3SEmmanuel Vadot }; 175c9ccf3a3SEmmanuel Vadot 176c9ccf3a3SEmmanuel Vadot - | 177c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 178c9ccf3a3SEmmanuel Vadot 179c9ccf3a3SEmmanuel Vadot pinctrl@11400000 { 180c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos4210-pinctrl"; 181c9ccf3a3SEmmanuel Vadot reg = <0x11400000 0x1000>; 182c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 183c9ccf3a3SEmmanuel Vadot 184c9ccf3a3SEmmanuel Vadot pinctrl-names = "default"; 185c9ccf3a3SEmmanuel Vadot pinctrl-0 = <&sleep0>; 186c9ccf3a3SEmmanuel Vadot 187c9ccf3a3SEmmanuel Vadot /* Pin bank with external GPIO or muxed external wake-up interrupts */ 188c9ccf3a3SEmmanuel Vadot gpa0-gpio-bank { 189c9ccf3a3SEmmanuel Vadot gpio-controller; 190c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 191c9ccf3a3SEmmanuel Vadot interrupt-controller; 192c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 193c9ccf3a3SEmmanuel Vadot }; 194c9ccf3a3SEmmanuel Vadot 195c9ccf3a3SEmmanuel Vadot // ... 196c9ccf3a3SEmmanuel Vadot 197c9ccf3a3SEmmanuel Vadot uart0-data-pins { 198c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa0-0", "gpa0-1"; 1997ef62cebSEmmanuel Vadot samsung,pin-function = <2>; 2007ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 2017ef62cebSEmmanuel Vadot samsung,pin-drv = <0>; 202c9ccf3a3SEmmanuel Vadot }; 203c9ccf3a3SEmmanuel Vadot 204c9ccf3a3SEmmanuel Vadot // ... 205c9ccf3a3SEmmanuel Vadot 206c9ccf3a3SEmmanuel Vadot sleep0: sleep-state { 207c9ccf3a3SEmmanuel Vadot gpa0-0-pin { 208c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa0-0"; 2097ef62cebSEmmanuel Vadot samsung,pin-con-pdn = <2>; 2107ef62cebSEmmanuel Vadot samsung,pin-pud-pdn = <0>; 211c9ccf3a3SEmmanuel Vadot }; 212c9ccf3a3SEmmanuel Vadot 213c9ccf3a3SEmmanuel Vadot gpa0-1-pin { 214c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa0-1"; 2157ef62cebSEmmanuel Vadot samsung,pin-con-pdn = <0>; 2167ef62cebSEmmanuel Vadot samsung,pin-pud-pdn = <0>; 217c9ccf3a3SEmmanuel Vadot }; 218c9ccf3a3SEmmanuel Vadot 219c9ccf3a3SEmmanuel Vadot // ... 220c9ccf3a3SEmmanuel Vadot }; 221c9ccf3a3SEmmanuel Vadot }; 222c9ccf3a3SEmmanuel Vadot 223c9ccf3a3SEmmanuel Vadot - | 224c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 225c9ccf3a3SEmmanuel Vadot 226c9ccf3a3SEmmanuel Vadot pinctrl@11000000 { 227c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos4210-pinctrl"; 228c9ccf3a3SEmmanuel Vadot reg = <0x11000000 0x1000>; 229c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 230c9ccf3a3SEmmanuel Vadot 231c9ccf3a3SEmmanuel Vadot wakeup-interrupt-controller { 232c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos4210-wakeup-eint"; 233c9ccf3a3SEmmanuel Vadot interrupt-parent = <&gic>; 234c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 235c9ccf3a3SEmmanuel Vadot }; 236c9ccf3a3SEmmanuel Vadot 237c9ccf3a3SEmmanuel Vadot /* Pin bank with external GPIO or muxed external wake-up interrupts */ 238c9ccf3a3SEmmanuel Vadot gpj0-gpio-bank { 239c9ccf3a3SEmmanuel Vadot gpio-controller; 240c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 241c9ccf3a3SEmmanuel Vadot interrupt-controller; 242c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 243c9ccf3a3SEmmanuel Vadot }; 244c9ccf3a3SEmmanuel Vadot 245c9ccf3a3SEmmanuel Vadot /* Pin bank without external interrupts */ 246c9ccf3a3SEmmanuel Vadot gpy0-gpio-bank { 247c9ccf3a3SEmmanuel Vadot gpio-controller; 248c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 249c9ccf3a3SEmmanuel Vadot }; 250c9ccf3a3SEmmanuel Vadot 251c9ccf3a3SEmmanuel Vadot /* Pin bank with external direct wake-up interrupts */ 252c9ccf3a3SEmmanuel Vadot gpx0-gpio-bank { 253c9ccf3a3SEmmanuel Vadot gpio-controller; 254c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 255c9ccf3a3SEmmanuel Vadot 256c9ccf3a3SEmmanuel Vadot interrupt-controller; 257c9ccf3a3SEmmanuel Vadot interrupt-parent = <&gic>; 258c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 259c9ccf3a3SEmmanuel Vadot <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>, 260c9ccf3a3SEmmanuel Vadot <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>, 261c9ccf3a3SEmmanuel Vadot <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 262c9ccf3a3SEmmanuel Vadot <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, 263c9ccf3a3SEmmanuel Vadot <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, 264c9ccf3a3SEmmanuel Vadot <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, 265c9ccf3a3SEmmanuel Vadot <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 266c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 267c9ccf3a3SEmmanuel Vadot }; 268c9ccf3a3SEmmanuel Vadot 269c9ccf3a3SEmmanuel Vadot // ... 270c9ccf3a3SEmmanuel Vadot 271c9ccf3a3SEmmanuel Vadot sd0-clk-pins { 272c9ccf3a3SEmmanuel Vadot samsung,pins = "gpk0-0"; 2737ef62cebSEmmanuel Vadot samsung,pin-function = <2>; 2747ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 2757ef62cebSEmmanuel Vadot samsung,pin-drv = <3>; 276c9ccf3a3SEmmanuel Vadot }; 277c9ccf3a3SEmmanuel Vadot 278c9ccf3a3SEmmanuel Vadot sd4-bus-width8-pins { 279c9ccf3a3SEmmanuel Vadot part-1-pins { 280c9ccf3a3SEmmanuel Vadot samsung,pins = "gpk0-3", "gpk0-4", 281c9ccf3a3SEmmanuel Vadot "gpk0-5", "gpk0-6"; 2827ef62cebSEmmanuel Vadot samsung,pin-function = <3>; 2837ef62cebSEmmanuel Vadot samsung,pin-pud = <3>; 2847ef62cebSEmmanuel Vadot samsung,pin-drv = <3>; 285c9ccf3a3SEmmanuel Vadot }; 286c9ccf3a3SEmmanuel Vadot 287c9ccf3a3SEmmanuel Vadot part-2-pins { 288c9ccf3a3SEmmanuel Vadot samsung,pins = "gpk1-3", "gpk1-4", 289c9ccf3a3SEmmanuel Vadot "gpk1-5", "gpk1-6"; 2907ef62cebSEmmanuel Vadot samsung,pin-function = <4>; 2917ef62cebSEmmanuel Vadot samsung,pin-pud = <3>; 2927ef62cebSEmmanuel Vadot samsung,pin-drv = <3>; 293c9ccf3a3SEmmanuel Vadot }; 294c9ccf3a3SEmmanuel Vadot }; 295c9ccf3a3SEmmanuel Vadot 296c9ccf3a3SEmmanuel Vadot // ... 297c9ccf3a3SEmmanuel Vadot 298c9ccf3a3SEmmanuel Vadot otg-gp-pins { 299c9ccf3a3SEmmanuel Vadot samsung,pins = "gpx3-3"; 3007ef62cebSEmmanuel Vadot samsung,pin-function = <1>; 3017ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 3027ef62cebSEmmanuel Vadot samsung,pin-drv = <0>; 303c9ccf3a3SEmmanuel Vadot samsung,pin-val = <0>; 304c9ccf3a3SEmmanuel Vadot }; 305c9ccf3a3SEmmanuel Vadot }; 306c9ccf3a3SEmmanuel Vadot 307c9ccf3a3SEmmanuel Vadot - | 308c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 309c9ccf3a3SEmmanuel Vadot 310c9ccf3a3SEmmanuel Vadot pinctrl@10580000 { 311c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos5433-pinctrl"; 312c9ccf3a3SEmmanuel Vadot reg = <0x10580000 0x1a20>, <0x11090000 0x100>; 313c9ccf3a3SEmmanuel Vadot 314c9ccf3a3SEmmanuel Vadot pinctrl-names = "default"; 315c9ccf3a3SEmmanuel Vadot pinctrl-0 = <&initial_alive>; 316c9ccf3a3SEmmanuel Vadot 317c9ccf3a3SEmmanuel Vadot wakeup-interrupt-controller { 318*8d13bc63SEmmanuel Vadot compatible = "samsung,exynos5433-wakeup-eint", 319*8d13bc63SEmmanuel Vadot "samsung,exynos7-wakeup-eint"; 320c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 321c9ccf3a3SEmmanuel Vadot }; 322c9ccf3a3SEmmanuel Vadot 323c9ccf3a3SEmmanuel Vadot /* Pin bank with external direct wake-up interrupts */ 324c9ccf3a3SEmmanuel Vadot gpa0-gpio-bank { 325c9ccf3a3SEmmanuel Vadot gpio-controller; 326c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 327c9ccf3a3SEmmanuel Vadot 328c9ccf3a3SEmmanuel Vadot interrupt-controller; 329c9ccf3a3SEmmanuel Vadot interrupt-parent = <&gic>; 330c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 331c9ccf3a3SEmmanuel Vadot <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 332c9ccf3a3SEmmanuel Vadot <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>, 333c9ccf3a3SEmmanuel Vadot <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 334c9ccf3a3SEmmanuel Vadot <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 335c9ccf3a3SEmmanuel Vadot <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>, 336c9ccf3a3SEmmanuel Vadot <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 337c9ccf3a3SEmmanuel Vadot <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 338c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 339c9ccf3a3SEmmanuel Vadot }; 340c9ccf3a3SEmmanuel Vadot 341c9ccf3a3SEmmanuel Vadot // ... 342c9ccf3a3SEmmanuel Vadot 343c9ccf3a3SEmmanuel Vadot te-irq-pins { 344c9ccf3a3SEmmanuel Vadot samsung,pins = "gpf1-3"; 345c9ccf3a3SEmmanuel Vadot samsung,pin-function = <0xf>; 346c9ccf3a3SEmmanuel Vadot }; 347c9ccf3a3SEmmanuel Vadot 348c9ccf3a3SEmmanuel Vadot // .. 349c9ccf3a3SEmmanuel Vadot 350c9ccf3a3SEmmanuel Vadot initial_alive: initial-state { 351c9ccf3a3SEmmanuel Vadot gpa0-0-pin { 352c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa0-0"; 3537ef62cebSEmmanuel Vadot samsung,pin-function = <0>; 3547ef62cebSEmmanuel Vadot samsung,pin-pud = <1>; 3557ef62cebSEmmanuel Vadot samsung,pin-drv = <0>; 356c9ccf3a3SEmmanuel Vadot }; 357c9ccf3a3SEmmanuel Vadot 358c9ccf3a3SEmmanuel Vadot // ... 359c9ccf3a3SEmmanuel Vadot }; 360c9ccf3a3SEmmanuel Vadot }; 361c9ccf3a3SEmmanuel Vadot 362c9ccf3a3SEmmanuel Vadot - | 363c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 364c9ccf3a3SEmmanuel Vadot 365c9ccf3a3SEmmanuel Vadot pinctrl@114b0000 { 366c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos5433-pinctrl"; 367c9ccf3a3SEmmanuel Vadot reg = <0x114b0000 0x1000>; 368c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; 369c9ccf3a3SEmmanuel Vadot power-domains = <&pd_aud>; 370c9ccf3a3SEmmanuel Vadot 371c9ccf3a3SEmmanuel Vadot /* Pin bank with external GPIO or muxed external wake-up interrupts */ 372c9ccf3a3SEmmanuel Vadot gpz0-gpio-bank { 373c9ccf3a3SEmmanuel Vadot gpio-controller; 374c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 375c9ccf3a3SEmmanuel Vadot interrupt-controller; 376c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 377c9ccf3a3SEmmanuel Vadot }; 378c9ccf3a3SEmmanuel Vadot 379c9ccf3a3SEmmanuel Vadot // ... 380c9ccf3a3SEmmanuel Vadot 381c9ccf3a3SEmmanuel Vadot i2s0-bus-pins { 382c9ccf3a3SEmmanuel Vadot samsung,pins = "gpz0-0", "gpz0-1", "gpz0-2", "gpz0-3", 383c9ccf3a3SEmmanuel Vadot "gpz0-4", "gpz0-5", "gpz0-6"; 3847ef62cebSEmmanuel Vadot samsung,pin-function = <2>; 3857ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 3867ef62cebSEmmanuel Vadot samsung,pin-drv = <0>; 387c9ccf3a3SEmmanuel Vadot }; 388c9ccf3a3SEmmanuel Vadot 389c9ccf3a3SEmmanuel Vadot // ... 390c9ccf3a3SEmmanuel Vadot }; 391