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: 38c9ccf3a3SEmmanuel Vadot - samsung,s3c2412-pinctrl 39c9ccf3a3SEmmanuel Vadot - samsung,s3c2416-pinctrl 40c9ccf3a3SEmmanuel Vadot - samsung,s3c2440-pinctrl 41c9ccf3a3SEmmanuel Vadot - samsung,s3c2450-pinctrl 42c9ccf3a3SEmmanuel Vadot - samsung,s3c64xx-pinctrl 43c9ccf3a3SEmmanuel Vadot - samsung,s5pv210-pinctrl 44c9ccf3a3SEmmanuel Vadot - samsung,exynos3250-pinctrl 45c9ccf3a3SEmmanuel Vadot - samsung,exynos4210-pinctrl 46c9ccf3a3SEmmanuel Vadot - samsung,exynos4x12-pinctrl 47c9ccf3a3SEmmanuel Vadot - samsung,exynos5250-pinctrl 48c9ccf3a3SEmmanuel Vadot - samsung,exynos5260-pinctrl 49c9ccf3a3SEmmanuel Vadot - samsung,exynos5410-pinctrl 50c9ccf3a3SEmmanuel Vadot - samsung,exynos5420-pinctrl 51c9ccf3a3SEmmanuel Vadot - samsung,exynos5433-pinctrl 52c9ccf3a3SEmmanuel Vadot - samsung,exynos7-pinctrl 53c9ccf3a3SEmmanuel Vadot - samsung,exynos7885-pinctrl 54c9ccf3a3SEmmanuel Vadot - samsung,exynos850-pinctrl 55c9ccf3a3SEmmanuel Vadot - samsung,exynosautov9-pinctrl 56c9ccf3a3SEmmanuel Vadot - tesla,fsd-pinctrl 57c9ccf3a3SEmmanuel Vadot 58c9ccf3a3SEmmanuel Vadot interrupts: 59c9ccf3a3SEmmanuel Vadot description: 60c9ccf3a3SEmmanuel Vadot Required for GPIO banks supporting external GPIO interrupts. 61c9ccf3a3SEmmanuel Vadot maxItems: 1 62c9ccf3a3SEmmanuel Vadot 63c9ccf3a3SEmmanuel Vadot power-domains: 64c9ccf3a3SEmmanuel Vadot maxItems: 1 65c9ccf3a3SEmmanuel Vadot 66c9ccf3a3SEmmanuel Vadot reg: 67c9ccf3a3SEmmanuel Vadot description: 68c9ccf3a3SEmmanuel Vadot Second base address of the pin controller if the specific registers of 69c9ccf3a3SEmmanuel Vadot the pin controller are separated into the different base address. 70c9ccf3a3SEmmanuel Vadot Only certain banks of certain pin controller might need it. 71c9ccf3a3SEmmanuel Vadot minItems: 1 72c9ccf3a3SEmmanuel Vadot maxItems: 2 73c9ccf3a3SEmmanuel Vadot 74c9ccf3a3SEmmanuel Vadot wakeup-interrupt-controller: 75c9ccf3a3SEmmanuel Vadot $ref: samsung,pinctrl-wakeup-interrupt.yaml 76c9ccf3a3SEmmanuel Vadot 77c9ccf3a3SEmmanuel VadotpatternProperties: 78c9ccf3a3SEmmanuel Vadot "^[a-z]+[0-9]*-gpio-bank$": 79c9ccf3a3SEmmanuel Vadot description: 80c9ccf3a3SEmmanuel Vadot Pin banks of the controller are represented by child nodes of the 81c9ccf3a3SEmmanuel Vadot controller node. Bank name is taken from name of the node. 82c9ccf3a3SEmmanuel Vadot $ref: samsung,pinctrl-gpio-bank.yaml 83c9ccf3a3SEmmanuel Vadot 84c9ccf3a3SEmmanuel Vadot "^[a-z0-9-]+-pins$": 85c9ccf3a3SEmmanuel Vadot oneOf: 86c9ccf3a3SEmmanuel Vadot - $ref: samsung,pinctrl-pins-cfg.yaml 87c9ccf3a3SEmmanuel Vadot required: 88c9ccf3a3SEmmanuel Vadot - samsung,pins 89c9ccf3a3SEmmanuel Vadot - type: object 90c9ccf3a3SEmmanuel Vadot patternProperties: 91c9ccf3a3SEmmanuel Vadot "^[a-z0-9-]+-pins$": 92c9ccf3a3SEmmanuel Vadot $ref: samsung,pinctrl-pins-cfg.yaml 93c9ccf3a3SEmmanuel Vadot 94c9ccf3a3SEmmanuel Vadot additionalProperties: false 95c9ccf3a3SEmmanuel Vadot 96c9ccf3a3SEmmanuel Vadot "^(initial|sleep)-state$": 97*7ef62cebSEmmanuel Vadot type: object 98*7ef62cebSEmmanuel Vadot additionalProperties: false 99*7ef62cebSEmmanuel Vadot 100c9ccf3a3SEmmanuel Vadot patternProperties: 101c9ccf3a3SEmmanuel Vadot "^(pin-[a-z0-9-]+|[a-z0-9-]+-pin)$": 102c9ccf3a3SEmmanuel Vadot $ref: samsung,pinctrl-pins-cfg.yaml 103c9ccf3a3SEmmanuel Vadot 104c9ccf3a3SEmmanuel Vadot properties: 105c9ccf3a3SEmmanuel Vadot samsung,pins: 106c9ccf3a3SEmmanuel Vadot description: See samsung,pinctrl-pins-cfg.yaml 107c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string-array 108c9ccf3a3SEmmanuel Vadot maxItems: 1 109c9ccf3a3SEmmanuel Vadot 110c9ccf3a3SEmmanuel Vadot required: 111c9ccf3a3SEmmanuel Vadot - samsung,pins 112c9ccf3a3SEmmanuel Vadot 113c9ccf3a3SEmmanuel Vadot unevaluatedProperties: false 114c9ccf3a3SEmmanuel Vadot 115c9ccf3a3SEmmanuel Vadotrequired: 116c9ccf3a3SEmmanuel Vadot - compatible 117c9ccf3a3SEmmanuel Vadot - reg 118c9ccf3a3SEmmanuel Vadot 119c9ccf3a3SEmmanuel VadotallOf: 120c9ccf3a3SEmmanuel Vadot - $ref: "pinctrl.yaml#" 121c9ccf3a3SEmmanuel Vadot - if: 122c9ccf3a3SEmmanuel Vadot properties: 123c9ccf3a3SEmmanuel Vadot compatible: 124c9ccf3a3SEmmanuel Vadot contains: 125c9ccf3a3SEmmanuel Vadot const: samsung,exynos5433-pinctrl 126c9ccf3a3SEmmanuel Vadot then: 127c9ccf3a3SEmmanuel Vadot properties: 128c9ccf3a3SEmmanuel Vadot reg: 129c9ccf3a3SEmmanuel Vadot minItems: 1 130c9ccf3a3SEmmanuel Vadot maxItems: 2 131c9ccf3a3SEmmanuel Vadot else: 132c9ccf3a3SEmmanuel Vadot properties: 133c9ccf3a3SEmmanuel Vadot reg: 134c9ccf3a3SEmmanuel Vadot minItems: 1 135c9ccf3a3SEmmanuel Vadot maxItems: 1 136c9ccf3a3SEmmanuel Vadot 137c9ccf3a3SEmmanuel VadotadditionalProperties: false 138c9ccf3a3SEmmanuel Vadot 139c9ccf3a3SEmmanuel Vadotexamples: 140c9ccf3a3SEmmanuel Vadot - | 141c9ccf3a3SEmmanuel Vadot pinctrl@7f008000 { 142c9ccf3a3SEmmanuel Vadot compatible = "samsung,s3c64xx-pinctrl"; 143c9ccf3a3SEmmanuel Vadot reg = <0x7f008000 0x1000>; 144c9ccf3a3SEmmanuel Vadot interrupt-parent = <&vic1>; 145c9ccf3a3SEmmanuel Vadot interrupts = <21>; 146c9ccf3a3SEmmanuel Vadot 147c9ccf3a3SEmmanuel Vadot wakeup-interrupt-controller { 148c9ccf3a3SEmmanuel Vadot compatible = "samsung,s3c64xx-wakeup-eint"; 149c9ccf3a3SEmmanuel Vadot interrupts-extended = <&vic0 0>, 150c9ccf3a3SEmmanuel Vadot <&vic0 1>, 151c9ccf3a3SEmmanuel Vadot <&vic1 0>, 152c9ccf3a3SEmmanuel Vadot <&vic1 1>; 153c9ccf3a3SEmmanuel Vadot }; 154c9ccf3a3SEmmanuel Vadot 155c9ccf3a3SEmmanuel Vadot /* Pin bank with external GPIO or muxed external wake-up interrupts */ 156c9ccf3a3SEmmanuel Vadot gpa-gpio-bank { 157c9ccf3a3SEmmanuel Vadot gpio-controller; 158c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 159c9ccf3a3SEmmanuel Vadot interrupt-controller; 160c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 161c9ccf3a3SEmmanuel Vadot }; 162c9ccf3a3SEmmanuel Vadot 163c9ccf3a3SEmmanuel Vadot // ... 164c9ccf3a3SEmmanuel Vadot 165c9ccf3a3SEmmanuel Vadot uart0-data-pins { 166c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa-0", "gpa-1"; 167*7ef62cebSEmmanuel Vadot samsung,pin-function = <2>; 168*7ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 169c9ccf3a3SEmmanuel Vadot }; 170c9ccf3a3SEmmanuel Vadot 171c9ccf3a3SEmmanuel Vadot // ... 172c9ccf3a3SEmmanuel Vadot }; 173c9ccf3a3SEmmanuel Vadot 174c9ccf3a3SEmmanuel Vadot - | 175c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 176c9ccf3a3SEmmanuel Vadot 177c9ccf3a3SEmmanuel Vadot pinctrl@11400000 { 178c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos4210-pinctrl"; 179c9ccf3a3SEmmanuel Vadot reg = <0x11400000 0x1000>; 180c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 181c9ccf3a3SEmmanuel Vadot 182c9ccf3a3SEmmanuel Vadot pinctrl-names = "default"; 183c9ccf3a3SEmmanuel Vadot pinctrl-0 = <&sleep0>; 184c9ccf3a3SEmmanuel Vadot 185c9ccf3a3SEmmanuel Vadot /* Pin bank with external GPIO or muxed external wake-up interrupts */ 186c9ccf3a3SEmmanuel Vadot gpa0-gpio-bank { 187c9ccf3a3SEmmanuel Vadot gpio-controller; 188c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 189c9ccf3a3SEmmanuel Vadot interrupt-controller; 190c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 191c9ccf3a3SEmmanuel Vadot }; 192c9ccf3a3SEmmanuel Vadot 193c9ccf3a3SEmmanuel Vadot // ... 194c9ccf3a3SEmmanuel Vadot 195c9ccf3a3SEmmanuel Vadot uart0-data-pins { 196c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa0-0", "gpa0-1"; 197*7ef62cebSEmmanuel Vadot samsung,pin-function = <2>; 198*7ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 199*7ef62cebSEmmanuel Vadot samsung,pin-drv = <0>; 200c9ccf3a3SEmmanuel Vadot }; 201c9ccf3a3SEmmanuel Vadot 202c9ccf3a3SEmmanuel Vadot // ... 203c9ccf3a3SEmmanuel Vadot 204c9ccf3a3SEmmanuel Vadot sleep0: sleep-state { 205c9ccf3a3SEmmanuel Vadot gpa0-0-pin { 206c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa0-0"; 207*7ef62cebSEmmanuel Vadot samsung,pin-con-pdn = <2>; 208*7ef62cebSEmmanuel Vadot samsung,pin-pud-pdn = <0>; 209c9ccf3a3SEmmanuel Vadot }; 210c9ccf3a3SEmmanuel Vadot 211c9ccf3a3SEmmanuel Vadot gpa0-1-pin { 212c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa0-1"; 213*7ef62cebSEmmanuel Vadot samsung,pin-con-pdn = <0>; 214*7ef62cebSEmmanuel Vadot samsung,pin-pud-pdn = <0>; 215c9ccf3a3SEmmanuel Vadot }; 216c9ccf3a3SEmmanuel Vadot 217c9ccf3a3SEmmanuel Vadot // ... 218c9ccf3a3SEmmanuel Vadot }; 219c9ccf3a3SEmmanuel Vadot }; 220c9ccf3a3SEmmanuel Vadot 221c9ccf3a3SEmmanuel Vadot - | 222c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 223c9ccf3a3SEmmanuel Vadot 224c9ccf3a3SEmmanuel Vadot pinctrl@11000000 { 225c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos4210-pinctrl"; 226c9ccf3a3SEmmanuel Vadot reg = <0x11000000 0x1000>; 227c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 228c9ccf3a3SEmmanuel Vadot 229c9ccf3a3SEmmanuel Vadot wakeup-interrupt-controller { 230c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos4210-wakeup-eint"; 231c9ccf3a3SEmmanuel Vadot interrupt-parent = <&gic>; 232c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 233c9ccf3a3SEmmanuel Vadot }; 234c9ccf3a3SEmmanuel Vadot 235c9ccf3a3SEmmanuel Vadot /* Pin bank with external GPIO or muxed external wake-up interrupts */ 236c9ccf3a3SEmmanuel Vadot gpj0-gpio-bank { 237c9ccf3a3SEmmanuel Vadot gpio-controller; 238c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 239c9ccf3a3SEmmanuel Vadot interrupt-controller; 240c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 241c9ccf3a3SEmmanuel Vadot }; 242c9ccf3a3SEmmanuel Vadot 243c9ccf3a3SEmmanuel Vadot /* Pin bank without external interrupts */ 244c9ccf3a3SEmmanuel Vadot gpy0-gpio-bank { 245c9ccf3a3SEmmanuel Vadot gpio-controller; 246c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 247c9ccf3a3SEmmanuel Vadot }; 248c9ccf3a3SEmmanuel Vadot 249c9ccf3a3SEmmanuel Vadot /* Pin bank with external direct wake-up interrupts */ 250c9ccf3a3SEmmanuel Vadot gpx0-gpio-bank { 251c9ccf3a3SEmmanuel Vadot gpio-controller; 252c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 253c9ccf3a3SEmmanuel Vadot 254c9ccf3a3SEmmanuel Vadot interrupt-controller; 255c9ccf3a3SEmmanuel Vadot interrupt-parent = <&gic>; 256c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 257c9ccf3a3SEmmanuel Vadot <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>, 258c9ccf3a3SEmmanuel Vadot <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>, 259c9ccf3a3SEmmanuel Vadot <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 260c9ccf3a3SEmmanuel Vadot <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, 261c9ccf3a3SEmmanuel Vadot <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, 262c9ccf3a3SEmmanuel Vadot <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, 263c9ccf3a3SEmmanuel Vadot <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 264c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 265c9ccf3a3SEmmanuel Vadot }; 266c9ccf3a3SEmmanuel Vadot 267c9ccf3a3SEmmanuel Vadot // ... 268c9ccf3a3SEmmanuel Vadot 269c9ccf3a3SEmmanuel Vadot sd0-clk-pins { 270c9ccf3a3SEmmanuel Vadot samsung,pins = "gpk0-0"; 271*7ef62cebSEmmanuel Vadot samsung,pin-function = <2>; 272*7ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 273*7ef62cebSEmmanuel Vadot samsung,pin-drv = <3>; 274c9ccf3a3SEmmanuel Vadot }; 275c9ccf3a3SEmmanuel Vadot 276c9ccf3a3SEmmanuel Vadot sd4-bus-width8-pins { 277c9ccf3a3SEmmanuel Vadot part-1-pins { 278c9ccf3a3SEmmanuel Vadot samsung,pins = "gpk0-3", "gpk0-4", 279c9ccf3a3SEmmanuel Vadot "gpk0-5", "gpk0-6"; 280*7ef62cebSEmmanuel Vadot samsung,pin-function = <3>; 281*7ef62cebSEmmanuel Vadot samsung,pin-pud = <3>; 282*7ef62cebSEmmanuel Vadot samsung,pin-drv = <3>; 283c9ccf3a3SEmmanuel Vadot }; 284c9ccf3a3SEmmanuel Vadot 285c9ccf3a3SEmmanuel Vadot part-2-pins { 286c9ccf3a3SEmmanuel Vadot samsung,pins = "gpk1-3", "gpk1-4", 287c9ccf3a3SEmmanuel Vadot "gpk1-5", "gpk1-6"; 288*7ef62cebSEmmanuel Vadot samsung,pin-function = <4>; 289*7ef62cebSEmmanuel Vadot samsung,pin-pud = <3>; 290*7ef62cebSEmmanuel Vadot samsung,pin-drv = <3>; 291c9ccf3a3SEmmanuel Vadot }; 292c9ccf3a3SEmmanuel Vadot }; 293c9ccf3a3SEmmanuel Vadot 294c9ccf3a3SEmmanuel Vadot // ... 295c9ccf3a3SEmmanuel Vadot 296c9ccf3a3SEmmanuel Vadot otg-gp-pins { 297c9ccf3a3SEmmanuel Vadot samsung,pins = "gpx3-3"; 298*7ef62cebSEmmanuel Vadot samsung,pin-function = <1>; 299*7ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 300*7ef62cebSEmmanuel Vadot samsung,pin-drv = <0>; 301c9ccf3a3SEmmanuel Vadot samsung,pin-val = <0>; 302c9ccf3a3SEmmanuel Vadot }; 303c9ccf3a3SEmmanuel Vadot }; 304c9ccf3a3SEmmanuel Vadot 305c9ccf3a3SEmmanuel Vadot - | 306c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 307c9ccf3a3SEmmanuel Vadot 308c9ccf3a3SEmmanuel Vadot pinctrl@10580000 { 309c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos5433-pinctrl"; 310c9ccf3a3SEmmanuel Vadot reg = <0x10580000 0x1a20>, <0x11090000 0x100>; 311c9ccf3a3SEmmanuel Vadot 312c9ccf3a3SEmmanuel Vadot pinctrl-names = "default"; 313c9ccf3a3SEmmanuel Vadot pinctrl-0 = <&initial_alive>; 314c9ccf3a3SEmmanuel Vadot 315c9ccf3a3SEmmanuel Vadot wakeup-interrupt-controller { 316c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos7-wakeup-eint"; 317c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 318c9ccf3a3SEmmanuel Vadot }; 319c9ccf3a3SEmmanuel Vadot 320c9ccf3a3SEmmanuel Vadot /* Pin bank with external direct wake-up interrupts */ 321c9ccf3a3SEmmanuel Vadot gpa0-gpio-bank { 322c9ccf3a3SEmmanuel Vadot gpio-controller; 323c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 324c9ccf3a3SEmmanuel Vadot 325c9ccf3a3SEmmanuel Vadot interrupt-controller; 326c9ccf3a3SEmmanuel Vadot interrupt-parent = <&gic>; 327c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 328c9ccf3a3SEmmanuel Vadot <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 329c9ccf3a3SEmmanuel Vadot <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>, 330c9ccf3a3SEmmanuel Vadot <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 331c9ccf3a3SEmmanuel Vadot <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 332c9ccf3a3SEmmanuel Vadot <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>, 333c9ccf3a3SEmmanuel Vadot <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 334c9ccf3a3SEmmanuel Vadot <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 335c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 336c9ccf3a3SEmmanuel Vadot }; 337c9ccf3a3SEmmanuel Vadot 338c9ccf3a3SEmmanuel Vadot // ... 339c9ccf3a3SEmmanuel Vadot 340c9ccf3a3SEmmanuel Vadot te-irq-pins { 341c9ccf3a3SEmmanuel Vadot samsung,pins = "gpf1-3"; 342c9ccf3a3SEmmanuel Vadot samsung,pin-function = <0xf>; 343c9ccf3a3SEmmanuel Vadot }; 344c9ccf3a3SEmmanuel Vadot 345c9ccf3a3SEmmanuel Vadot // .. 346c9ccf3a3SEmmanuel Vadot 347c9ccf3a3SEmmanuel Vadot initial_alive: initial-state { 348c9ccf3a3SEmmanuel Vadot gpa0-0-pin { 349c9ccf3a3SEmmanuel Vadot samsung,pins = "gpa0-0"; 350*7ef62cebSEmmanuel Vadot samsung,pin-function = <0>; 351*7ef62cebSEmmanuel Vadot samsung,pin-pud = <1>; 352*7ef62cebSEmmanuel Vadot samsung,pin-drv = <0>; 353c9ccf3a3SEmmanuel Vadot }; 354c9ccf3a3SEmmanuel Vadot 355c9ccf3a3SEmmanuel Vadot // ... 356c9ccf3a3SEmmanuel Vadot }; 357c9ccf3a3SEmmanuel Vadot }; 358c9ccf3a3SEmmanuel Vadot 359c9ccf3a3SEmmanuel Vadot - | 360c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 361c9ccf3a3SEmmanuel Vadot 362c9ccf3a3SEmmanuel Vadot pinctrl@114b0000 { 363c9ccf3a3SEmmanuel Vadot compatible = "samsung,exynos5433-pinctrl"; 364c9ccf3a3SEmmanuel Vadot reg = <0x114b0000 0x1000>; 365c9ccf3a3SEmmanuel Vadot interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; 366c9ccf3a3SEmmanuel Vadot power-domains = <&pd_aud>; 367c9ccf3a3SEmmanuel Vadot 368c9ccf3a3SEmmanuel Vadot /* Pin bank with external GPIO or muxed external wake-up interrupts */ 369c9ccf3a3SEmmanuel Vadot gpz0-gpio-bank { 370c9ccf3a3SEmmanuel Vadot gpio-controller; 371c9ccf3a3SEmmanuel Vadot #gpio-cells = <2>; 372c9ccf3a3SEmmanuel Vadot interrupt-controller; 373c9ccf3a3SEmmanuel Vadot #interrupt-cells = <2>; 374c9ccf3a3SEmmanuel Vadot }; 375c9ccf3a3SEmmanuel Vadot 376c9ccf3a3SEmmanuel Vadot // ... 377c9ccf3a3SEmmanuel Vadot 378c9ccf3a3SEmmanuel Vadot i2s0-bus-pins { 379c9ccf3a3SEmmanuel Vadot samsung,pins = "gpz0-0", "gpz0-1", "gpz0-2", "gpz0-3", 380c9ccf3a3SEmmanuel Vadot "gpz0-4", "gpz0-5", "gpz0-6"; 381*7ef62cebSEmmanuel Vadot samsung,pin-function = <2>; 382*7ef62cebSEmmanuel Vadot samsung,pin-pud = <0>; 383*7ef62cebSEmmanuel Vadot samsung,pin-drv = <0>; 384c9ccf3a3SEmmanuel Vadot }; 385c9ccf3a3SEmmanuel Vadot 386c9ccf3a3SEmmanuel Vadot // ... 387c9ccf3a3SEmmanuel Vadot }; 388