1 Marvell Armada AP80x System Controller
2 ======================================
4 The AP806/AP807 is one of the two core HW blocks of the Marvell Armada
5 7K/8K/931x SoCs. It contains system controllers, which provide several
6 registers giving access to numerous features: clocks, pin-muxing and
7 many other SoC configuration items. This DT binding allows to describe
8 these system controllers.
10 For the top level node:
11 - compatible: must be: "syscon", "simple-mfd";
12 - reg: register area of the AP80x system controller
21 The Device Tree node representing the AP806/AP807 system controller
22 provides a number of clocks:
24 - 0: reference clock of CPU cluster 0
25 - 1: reference clock of CPU cluster 1
26 - 2: fixed PLL at 1200 Mhz
27 - 3: MSS clock, derived from the fixed PLL
31 - compatible: must be one of:
32 * "marvell,ap806-clock"
33 * "marvell,ap807-clock"
34 - #clock-cells: must be set to 1
39 For common binding part and usage, refer to
40 Documentation/devicetree/bindings/pinctrl/marvell,mvebu-pinctrl.txt.
43 - compatible must be "marvell,ap806-pinctrl",
45 Available mpp pins/groups and functions:
46 Note: brackets (x) are not part of the mpp name for marvell,function and given
47 only for more detailed description in this document.
50 ================================================================================
51 mpp0 0 gpio, sdio(clk), spi0(clk)
52 mpp1 1 gpio, sdio(cmd), spi0(miso)
53 mpp2 2 gpio, sdio(d0), spi0(mosi)
54 mpp3 3 gpio, sdio(d1), spi0(cs0n)
55 mpp4 4 gpio, sdio(d2), i2c0(sda)
56 mpp5 5 gpio, sdio(d3), i2c0(sdk)
58 mpp7 7 gpio, sdio(d4), uart1(rxd)
59 mpp8 8 gpio, sdio(d5), uart1(txd)
60 mpp9 9 gpio, sdio(d6), spi0(cs1n)
61 mpp10 10 gpio, sdio(d7)
62 mpp11 11 gpio, uart0(txd)
63 mpp12 12 gpio, sdio(pw_off), sdio(hw_rst)
70 mpp19 19 gpio, uart0(rxd), sdio(pw_off)
74 For common binding part and usage, refer to
75 Documentation/devicetree/bindings/gpio/gpio-mvebu.txt.
79 - compatible: "marvell,armada-8k-gpio"
81 - offset: offset address inside the syscon block
84 ap_syscon: system-controller@6f4000 {
85 compatible = "syscon", "simple-mfd";
86 reg = <0x6f4000 0x1000>;
89 compatible = "marvell,ap806-clock";
94 compatible = "marvell,ap806-pinctrl";
98 compatible = "marvell,armada-8k-gpio";
103 gpio-ranges = <&ap_pinctrl 0 0 19>;
113 For common binding part and usage, refer to
114 Documentation/devicetree/bindings/thermal/thermal.txt
116 The thermal IP can probe the temperature all around the processor. It
117 may feature several channels, each of them wired to one sensor.
119 It is possible to setup an overheat interrupt by giving at least one
120 critical point to any subnode of the thermal-zone node.
123 - compatible: must be one of:
124 * marvell,armada-ap806-thermal
125 - reg: register range associated with the thermal functions.
128 - interrupts: overheat interrupt handle. Should point to line 18 of the
129 SEI irqchip. See interrupt-controller/interrupts.txt
130 - #thermal-sensor-cells: shall be <1> when thermal-zones subnodes refer
131 to this IP and represents the channel ID. There is one sensor per
132 channel. O refers to the thermal IP internal channel, while positive
133 IDs refer to each CPU.
136 ap_syscon1: system-controller@6f8000 {
137 compatible = "syscon", "simple-mfd";
138 reg = <0x6f8000 0x1000>;
140 ap_thermal: thermal-sensor@80 {
141 compatible = "marvell,armada-ap806-thermal";
143 interrupt-parent = <&sei>;
145 #thermal-sensor-cells = <1>;
152 Device Tree Clock bindings for cluster clock of Marvell
153 AP806/AP807. Each cluster contain up to 2 CPUs running at the same
157 - compatible: must be one of:
158 * "marvell,ap806-cpu-clock"
159 * "marvell,ap807-cpu-clock"
160 - #clock-cells : should be set to 1.
162 - clocks : shall be the input parent clock(s) phandle for the clock
165 - reg: register range associated with the cluster clocks
167 ap_syscon1: system-controller@6f8000 {
168 compatible = "marvell,armada-ap806-syscon1", "syscon", "simple-mfd";
169 reg = <0x6f8000 0x1000>;
171 cpu_clk: clock-cpu@278 {
172 compatible = "marvell,ap806-cpu-clock";
173 clocks = <&ap_clk 0>, <&ap_clk 1>;