GNU Linux-libre 4.14.266-gnu1
[releases.git] / Documentation / devicetree / bindings / board / fsl-board.txt
1 Freescale Reference Board Bindings
2
3 This document describes device tree bindings for various devices that
4 exist on some Freescale reference boards.
5
6 * Board Control and Status (BCSR)
7
8 Required properties:
9
10  - compatible : Should be "fsl,<board>-bcsr"
11  - reg : Offset and length of the register set for the device
12
13 Example:
14
15         bcsr@f8000000 {
16                 compatible = "fsl,mpc8360mds-bcsr";
17                 reg = <f8000000 8000>;
18         };
19
20 * Freescale on-board FPGA
21
22 This is the memory-mapped registers for on board FPGA.
23
24 Required properties:
25 - compatible: should be a board-specific string followed by a string
26   indicating the type of FPGA.  Example:
27         "fsl,<board>-fpga", "fsl,fpga-pixis", or
28         "fsl,<board>-fpga", "fsl,fpga-qixis"
29 - reg: should contain the address and the length of the FPGA register set.
30
31 Optional properties:
32 - interrupt-parent: should specify phandle for the interrupt controller.
33 - interrupts: should specify event (wakeup) IRQ.
34
35 Example (P1022DS):
36
37          board-control@3,0 {
38                  compatible = "fsl,p1022ds-fpga", "fsl,fpga-ngpixis";
39                  reg = <3 0 0x30>;
40                  interrupt-parent = <&mpic>;
41                  interrupts = <8 8 0 0>;
42          };
43
44 Example (LS2080A-RDB):
45
46         cpld@3,0 {
47                 compatible = "fsl,ls2080ardb-fpga", "fsl,fpga-qixis";
48                 reg = <0x3 0 0x10000>;
49         };
50
51 * Freescale BCSR GPIO banks
52
53 Some BCSR registers act as simple GPIO controllers, each such
54 register can be represented by the gpio-controller node.
55
56 Required properities:
57 - compatible : Should be "fsl,<board>-bcsr-gpio".
58 - reg : Should contain the address and the length of the GPIO bank
59   register.
60 - #gpio-cells : Should be two. The first cell is the pin number and the
61   second cell is used to specify optional parameters (currently unused).
62 - gpio-controller : Marks the port as GPIO controller.
63
64 Example:
65
66         bcsr@1,0 {
67                 #address-cells = <1>;
68                 #size-cells = <1>;
69                 compatible = "fsl,mpc8360mds-bcsr";
70                 reg = <1 0 0x8000>;
71                 ranges = <0 1 0 0x8000>;
72
73                 bcsr13: gpio-controller@d {
74                         #gpio-cells = <2>;
75                         compatible = "fsl,mpc8360mds-bcsr-gpio";
76                         reg = <0xd 1>;
77                         gpio-controller;
78                 };
79         };
80
81 * Freescale on-board FPGA connected on I2C bus
82
83 Some Freescale boards like BSC9132QDS have on board FPGA connected on
84 the i2c bus.
85
86 Required properties:
87 - compatible: Should be a board-specific string followed by a string
88   indicating the type of FPGA.  Example:
89         "fsl,<board>-fpga", "fsl,fpga-qixis-i2c"
90 - reg: Should contain the address of the FPGA
91
92 Example:
93         fpga: fpga@66 {
94                 compatible = "fsl,bsc9132qds-fpga", "fsl,fpga-qixis-i2c";
95                 reg = <0x66>;
96         };
97
98 * Freescale on-board CPLD
99
100 Some Freescale boards like T1040RDB have an on board CPLD connected.
101
102 Required properties:
103 - compatible: Should be a board-specific string like "fsl,<board>-cpld"
104   Example:
105         "fsl,t1040rdb-cpld", "fsl,t1042rdb-cpld", "fsl,t1042rdb_pi-cpld"
106 - reg: should describe CPLD registers
107
108 Example:
109         cpld@3,0 {
110                 compatible = "fsl,t1040rdb-cpld";
111                 reg = <3 0 0x300>;
112         };