1 Hisilicon Platforms Device Tree Bindings
2 ----------------------------------------------------
4 Required root node properties:
5 - compatible = "hisilicon,hi3620-hi4511";
8 Required root node properties:
9 - compatible = "hisilicon,hi6220";
12 Required root node properties:
13 - compatible = "hisilicon,hi6220-hikey", "hisilicon,hi6220";
16 Required root node properties:
17 - compatible = "hisilicon,hip01-ca9x2";
20 Required root node properties:
21 - compatible = "hisilicon,hip04-d01";
24 Required root node properties:
25 - compatible = "hisilicon,hip05-d02";
28 Required root node properties:
29 - compatible = "hisilicon,hip06-d03";
32 Required root node properties:
33 - compatible = "hisilicon,hip07-d05";
35 Hisilicon system controller
38 - compatible : "hisilicon,sysctrl"
39 - reg : Register address and size
42 - smp-offset : offset in sysctrl for notifying slave cpu booting
46 If reg value is not zero, cpun exit wfi and go
47 - resume-offset : offset in sysctrl for notifying cpu0 when resume
48 - reboot-offset : offset in sysctrl for system reboot
53 sysctrl: system-controller@fc802000 {
54 compatible = "hisilicon,sysctrl";
55 reg = <0xfc802000 0x1000>;
57 resume-offset = <0x308>;
58 reboot-offset = <0x4>;
61 -----------------------------------------------------------------------
62 Hisilicon Hi6220 system controller
65 - compatible : "hisilicon,hi6220-sysctrl"
66 - reg : Register address and size
67 - #clock-cells: should be set to 1, many clock registers are defined
68 under this controller and this property must be present.
70 Hisilicon designs this controller as one of the system controllers,
71 its main functions are the same as Hisilicon system controller, but
72 the register offset of some core modules are different.
76 sys_ctrl: sys_ctrl@f7030000 {
77 compatible = "hisilicon,hi6220-sysctrl", "syscon";
78 reg = <0x0 0xf7030000 0x0 0x2000>;
83 Hisilicon Hi6220 Power Always ON domain controller
86 - compatible : "hisilicon,hi6220-aoctrl"
87 - reg : Register address and size
88 - #clock-cells: should be set to 1, many clock registers are defined
89 under this controller and this property must be present.
91 Hisilicon designs this system controller to control the power always
92 on domain for mobile platform.
96 ao_ctrl: ao_ctrl@f7800000 {
97 compatible = "hisilicon,hi6220-aoctrl", "syscon";
98 reg = <0x0 0xf7800000 0x0 0x2000>;
103 Hisilicon Hi6220 Media domain controller
106 - compatible : "hisilicon,hi6220-mediactrl"
107 - reg : Register address and size
108 - #clock-cells: should be set to 1, many clock registers are defined
109 under this controller and this property must be present.
111 Hisilicon designs this system controller to control the multimedia
112 domain(e.g. codec, G3D ...) for mobile platform.
116 media_ctrl: media_ctrl@f4410000 {
117 compatible = "hisilicon,hi6220-mediactrl", "syscon";
118 reg = <0x0 0xf4410000 0x0 0x1000>;
123 Hisilicon Hi6220 Power Management domain controller
126 - compatible : "hisilicon,hi6220-pmctrl"
127 - reg : Register address and size
128 - #clock-cells: should be set to 1, some clock registers are define
129 under this controller and this property must be present.
131 Hisilicon designs this system controller to control the power management
132 domain for mobile platform.
136 pm_ctrl: pm_ctrl@f7032000 {
137 compatible = "hisilicon,hi6220-pmctrl", "syscon";
138 reg = <0x0 0xf7032000 0x0 0x1000>;
143 Hisilicon Hi6220 SRAM controller
146 - compatible : "hisilicon,hi6220-sramctrl", "syscon"
147 - reg : Register address and size
149 Hisilicon's SoCs use sram for multiple purpose; on Hi6220 there have several
150 SRAM banks for power management, modem, security, etc. Further, use "syscon"
151 managing the common sram which can be shared by multiple modules.
155 sram: sram@fff80000 {
156 compatible = "hisilicon,hi6220-sramctrl", "syscon";
157 reg = <0x0 0xfff80000 0x0 0x12000>;
160 -----------------------------------------------------------------------
161 Hisilicon HiP01 system controller
164 - compatible : "hisilicon,hip01-sysctrl"
165 - reg : Register address and size
167 The HiP01 system controller is mostly compatible with hisilicon
168 system controller,but it has some specific control registers for
169 HIP01 SoC family, such as slave core boot, and also some same
170 registers located at different offset.
174 /* for hip01-ca9x2 */
175 sysctrl: system-controller@10000000 {
176 compatible = "hisilicon,hip01-sysctrl", "hisilicon,sysctrl";
177 reg = <0x10000000 0x1000>;
178 reboot-offset = <0x4>;
181 -----------------------------------------------------------------------
182 Hisilicon HiP05/HiP06 PCIe-SAS sub system controller
185 - compatible : "hisilicon,pcie-sas-subctrl", "syscon";
186 - reg : Register address and size
188 The PCIe-SAS sub system controller is shared by PCIe and SAS controllers in
189 HiP05 or HiP06 Soc to implement some basic configurations.
192 /* for HiP05 PCIe-SAS sub system */
193 pcie_sas: system_controller@b0000000 {
194 compatible = "hisilicon,pcie-sas-subctrl", "syscon";
195 reg = <0xb0000000 0x10000>;
198 Hisilicon HiP05/HiP06 PERI sub system controller
201 - compatible : "hisilicon,peri-subctrl", "syscon";
202 - reg : Register address and size
204 The PERI sub system controller is shared by peripheral controllers in
205 HiP05 or HiP06 Soc to implement some basic configurations. The peripheral
206 controllers include mdio, ddr, iic, uart, timer and so on.
209 /* for HiP05 sub peri system */
210 peri_c_subctrl: syscon@80000000 {
211 compatible = "hisilicon,peri-subctrl", "syscon";
212 reg = <0x0 0x80000000 0x0 0x10000>;
215 Hisilicon HiP05/HiP06 DSA sub system controller
218 - compatible : "hisilicon,dsa-subctrl", "syscon";
219 - reg : Register address and size
221 The DSA sub system controller is shared by peripheral controllers in
222 HiP05 or HiP06 Soc to implement some basic configurations.
225 /* for HiP05 dsa sub system */
226 pcie_sas: system_controller@a0000000 {
227 compatible = "hisilicon,dsa-subctrl", "syscon";
228 reg = <0xa0000000 0x10000>;
231 -----------------------------------------------------------------------
232 Hisilicon CPU controller
235 - compatible : "hisilicon,cpuctrl"
236 - reg : Register address and size
238 The clock registers and power registers of secondary cores are defined
239 in CPU controller, especially in HIX5HD2 SoC.
241 -----------------------------------------------------------------------
242 PCTRL: Peripheral misc control register
245 - compatible: "hisilicon,pctrl"
246 - reg: Address and size of pctrl.
251 pctrl: pctrl@fca09000 {
252 compatible = "hisilicon,pctrl";
253 reg = <0xfca09000 0x1000>;
256 -----------------------------------------------------------------------
260 - compatible: "hisilicon,hip04-fabric";
261 - reg: Address and size of Fabric
263 -----------------------------------------------------------------------
264 Bootwrapper boot method (software protocol on SMP):
267 - compatible: "hisilicon,hip04-bootwrapper";
268 - boot-method: Address and size of boot method.
269 [0]: bootwrapper physical address
270 [1]: bootwrapper size
271 [2]: relocation physical address