1*833e5d42SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*833e5d42SEmmanuel Vadot%YAML 1.2 3*833e5d42SEmmanuel Vadot--- 4*833e5d42SEmmanuel Vadot$id: http://devicetree.org/schemas/gpio/nxp,lpc1850-gpio.yaml# 5*833e5d42SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*833e5d42SEmmanuel Vadot 7*833e5d42SEmmanuel Vadottitle: NXP LPC18xx/43xx GPIO controller 8*833e5d42SEmmanuel Vadot 9*833e5d42SEmmanuel Vadotmaintainers: 10*833e5d42SEmmanuel Vadot - Frank Li <Frank.Li@nxp.com> 11*833e5d42SEmmanuel Vadot 12*833e5d42SEmmanuel Vadotproperties: 13*833e5d42SEmmanuel Vadot compatible: 14*833e5d42SEmmanuel Vadot const: nxp,lpc1850-gpio 15*833e5d42SEmmanuel Vadot 16*833e5d42SEmmanuel Vadot reg: 17*833e5d42SEmmanuel Vadot minItems: 1 18*833e5d42SEmmanuel Vadot maxItems: 4 19*833e5d42SEmmanuel Vadot 20*833e5d42SEmmanuel Vadot reg-names: 21*833e5d42SEmmanuel Vadot minItems: 1 22*833e5d42SEmmanuel Vadot items: 23*833e5d42SEmmanuel Vadot - const: gpio 24*833e5d42SEmmanuel Vadot - const: gpio-pin-ic 25*833e5d42SEmmanuel Vadot - const: gpio-group0-ic 26*833e5d42SEmmanuel Vadot - const: gpio-gpoup1-ic 27*833e5d42SEmmanuel Vadot 28*833e5d42SEmmanuel Vadot clocks: 29*833e5d42SEmmanuel Vadot maxItems: 1 30*833e5d42SEmmanuel Vadot 31*833e5d42SEmmanuel Vadot resets: 32*833e5d42SEmmanuel Vadot maxItems: 1 33*833e5d42SEmmanuel Vadot 34*833e5d42SEmmanuel Vadot gpio-controller: true 35*833e5d42SEmmanuel Vadot 36*833e5d42SEmmanuel Vadot '#gpio-cells': 37*833e5d42SEmmanuel Vadot const: 2 38*833e5d42SEmmanuel Vadot 39*833e5d42SEmmanuel Vadot interrupt-controller: true 40*833e5d42SEmmanuel Vadot 41*833e5d42SEmmanuel Vadot '#interrupt-cells': 42*833e5d42SEmmanuel Vadot const: 2 43*833e5d42SEmmanuel Vadot description: | 44*833e5d42SEmmanuel Vadot - The first cell is an interrupt number within 45*833e5d42SEmmanuel Vadot 0..9 range, for GPIO pin interrupts it is equal 46*833e5d42SEmmanuel Vadot to 'nxp,gpio-pin-interrupt' property value of 47*833e5d42SEmmanuel Vadot GPIO pin configuration, 8 is for GPIO GROUP0 48*833e5d42SEmmanuel Vadot interrupt, 9 is for GPIO GROUP1 interrupt 49*833e5d42SEmmanuel Vadot - The second cell is used to specify interrupt type 50*833e5d42SEmmanuel Vadot 51*833e5d42SEmmanuel Vadot gpio-ranges: true 52*833e5d42SEmmanuel Vadot 53*833e5d42SEmmanuel Vadotrequired: 54*833e5d42SEmmanuel Vadot - compatible 55*833e5d42SEmmanuel Vadot - reg 56*833e5d42SEmmanuel Vadot - clocks 57*833e5d42SEmmanuel Vadot - gpio-controller 58*833e5d42SEmmanuel Vadot - '#gpio-cells' 59*833e5d42SEmmanuel Vadot 60*833e5d42SEmmanuel VadotadditionalProperties: false 61*833e5d42SEmmanuel Vadot 62*833e5d42SEmmanuel Vadotexamples: 63*833e5d42SEmmanuel Vadot - | 64*833e5d42SEmmanuel Vadot #include <dt-bindings/clock/lpc18xx-ccu.h> 65*833e5d42SEmmanuel Vadot 66*833e5d42SEmmanuel Vadot gpio@400f4000 { 67*833e5d42SEmmanuel Vadot compatible = "nxp,lpc1850-gpio"; 68*833e5d42SEmmanuel Vadot reg = <0x400f4000 0x4000>, <0x40087000 0x1000>, 69*833e5d42SEmmanuel Vadot <0x40088000 0x1000>, <0x40089000 0x1000>; 70*833e5d42SEmmanuel Vadot reg-names = "gpio", "gpio-pin-ic", "gpio-group0-ic", "gpio-gpoup1-ic"; 71*833e5d42SEmmanuel Vadot clocks = <&ccu1 CLK_CPU_GPIO>; 72*833e5d42SEmmanuel Vadot resets = <&rgu 28>; 73*833e5d42SEmmanuel Vadot gpio-controller; 74*833e5d42SEmmanuel Vadot #gpio-cells = <2>; 75*833e5d42SEmmanuel Vadot interrupt-controller; 76*833e5d42SEmmanuel Vadot #interrupt-cells = <2>; 77*833e5d42SEmmanuel Vadot }; 78*833e5d42SEmmanuel Vadot 79