]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blame - Documentation/devicetree/bindings/arm/marvell/cp110-system-controller0.txt
Merge branch 'x86/boot' into x86/mm, to avoid conflict
[mirror_ubuntu-focal-kernel.git] / Documentation / devicetree / bindings / arm / marvell / cp110-system-controller0.txt
CommitLineData
6e660e5c
TP
1Marvell Armada CP110 System Controller 0
2========================================
3
4The CP110 is one of the two core HW blocks of the Marvell Armada 7K/8K
5SoCs. It contains two sets of system control registers, System
6Controller 0 and System Controller 1. This Device Tree binding allows
7to describe the first system controller, which provides registers to
8configure various aspects of the SoC.
9
10The Device Tree node representing this System Controller 0 provides a
11number of clocks:
12
13 - a set of core clocks
14 - a set of gatable clocks
15
16Those clocks can be referenced by other Device Tree nodes using two
17cells:
18 - The first cell must be 0 or 1. 0 for the core clocks and 1 for the
19 gatable clocks.
20 - The second cell identifies the particular core clock or gatable
21 clocks.
22
23The following clocks are available:
24 - Core clocks
25 - 0 0 APLL
26 - 0 1 PPv2 core
27 - 0 2 EIP
28 - 0 3 Core
29 - 0 4 NAND core
30 - Gatable clocks
31 - 1 0 Audio
32 - 1 1 Comm Unit
33 - 1 2 NAND
34 - 1 3 PPv2
35 - 1 4 SDIO
36 - 1 5 MG Domain
37 - 1 6 MG Core
38 - 1 7 XOR1
39 - 1 8 XOR0
40 - 1 9 GOP DP
41 - 1 11 PCIe x1 0
42 - 1 12 PCIe x1 1
43 - 1 13 PCIe x4
44 - 1 14 PCIe / XOR
45 - 1 15 SATA
46 - 1 16 SATA USB
47 - 1 17 Main
cda82ace 48 - 1 18 SD/MMC/GOP
6e660e5c
TP
49 - 1 21 Slow IO (SPI, NOR, BootROM, I2C, UART)
50 - 1 22 USB3H0
51 - 1 23 USB3H1
52 - 1 24 USB3 Device
53 - 1 25 EIP150
54 - 1 26 EIP197
55
56Required properties:
57
58 - compatible: must be:
59 "marvell,cp110-system-controller0", "syscon";
60 - reg: register area of the CP110 system controller 0
61 - #clock-cells: must be set to 2
62 - core-clock-output-names must be set to:
63 "cpm-apll", "cpm-ppv2-core", "cpm-eip", "cpm-core", "cpm-nand-core"
64 - gate-clock-output-names must be set to:
65 "cpm-audio", "cpm-communit", "cpm-nand", "cpm-ppv2", "cpm-sdio",
66 "cpm-mg-domain", "cpm-mg-core", "cpm-xor1", "cpm-xor0", "cpm-gop-dp", "none",
67 "cpm-pcie_x10", "cpm-pcie_x11", "cpm-pcie_x4", "cpm-pcie-xor", "cpm-sata",
cda82ace 68 "cpm-sata-usb", "cpm-main", "cpm-sd-mmc-gop", "none", "none", "cpm-slow-io",
6e660e5c
TP
69 "cpm-usb3h0", "cpm-usb3h1", "cpm-usb3dev", "cpm-eip150", "cpm-eip197";
70
71Example:
72
73 cpm_syscon0: system-controller@440000 {
74 compatible = "marvell,cp110-system-controller0", "syscon";
75 reg = <0x440000 0x1000>;
76 #clock-cells = <2>;
77 core-clock-output-names = "cpm-apll", "cpm-ppv2-core", "cpm-eip", "cpm-core", "cpm-nand-core";
78 gate-clock-output-names = "cpm-audio", "cpm-communit", "cpm-nand", "cpm-ppv2", "cpm-sdio",
79 "cpm-mg-domain", "cpm-mg-core", "cpm-xor1", "cpm-xor0", "cpm-gop-dp", "none",
80 "cpm-pcie_x10", "cpm-pcie_x11", "cpm-pcie_x4", "cpm-pcie-xor", "cpm-sata",
cda82ace 81 "cpm-sata-usb", "cpm-main", "cpm-sd-mmc-gop", "none", "none", "cpm-slow-io",
6e660e5c
TP
82 "cpm-usb3h0", "cpm-usb3h1", "cpm-usb3dev", "cpm-eip150", "cpm-eip197";
83 };