1*c66ec88fSEmmanuel VadotLantiq SoC External Bus memory mapped GPIO controller
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotBy attaching hardware latches to the EBU it is possible to create output
4*c66ec88fSEmmanuel Vadotonly gpios. This driver configures a special memory address, which when
5*c66ec88fSEmmanuel Vadotwritten to outputs 16 bit to the latches.
6*c66ec88fSEmmanuel Vadot
7*c66ec88fSEmmanuel VadotThe node describing the memory mapped GPIOs needs to be a child of the node
8*c66ec88fSEmmanuel Vadotdescribing the "lantiq,localbus".
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel VadotRequired properties:
11*c66ec88fSEmmanuel Vadot- compatible : Should be "lantiq,gpio-mm-lantiq"
12*c66ec88fSEmmanuel Vadot- reg : Address and length of the register set for the device
13*c66ec88fSEmmanuel Vadot- #gpio-cells : Should be two.  The first cell is the pin number and
14*c66ec88fSEmmanuel Vadot  the second cell is used to specify optional parameters (currently
15*c66ec88fSEmmanuel Vadot  unused).
16*c66ec88fSEmmanuel Vadot- gpio-controller : Marks the device node as a gpio controller.
17*c66ec88fSEmmanuel Vadot
18*c66ec88fSEmmanuel VadotOptional properties:
19*c66ec88fSEmmanuel Vadot- lantiq,shadow : The default value that we shall assume as already set on the
20*c66ec88fSEmmanuel Vadot  shift register cascade.
21*c66ec88fSEmmanuel Vadot
22*c66ec88fSEmmanuel VadotExample:
23*c66ec88fSEmmanuel Vadot
24*c66ec88fSEmmanuel Vadotlocalbus@0 {
25*c66ec88fSEmmanuel Vadot	#address-cells = <2>;
26*c66ec88fSEmmanuel Vadot	#size-cells = <1>;
27*c66ec88fSEmmanuel Vadot	ranges = <0 0 0x0 0x3ffffff /* addrsel0 */
28*c66ec88fSEmmanuel Vadot		1 0 0x4000000 0x4000010>; /* addsel1 */
29*c66ec88fSEmmanuel Vadot	compatible = "lantiq,localbus", "simple-bus";
30*c66ec88fSEmmanuel Vadot
31*c66ec88fSEmmanuel Vadot	gpio_mm0: gpio@4000000 {
32*c66ec88fSEmmanuel Vadot		compatible = "lantiq,gpio-mm";
33*c66ec88fSEmmanuel Vadot		reg = <1 0x0 0x10>;
34*c66ec88fSEmmanuel Vadot		gpio-controller;
35*c66ec88fSEmmanuel Vadot		#gpio-cells = <2>;
36*c66ec88fSEmmanuel Vadot		lantiq,shadow = <0x77f>
37*c66ec88fSEmmanuel Vadot	};
38*c66ec88fSEmmanuel Vadot}
39