uniphier-reset.txt 4.8 KB
Newer Older
1 2 3 4 5 6 7 8
UniPhier reset controller


System reset
------------

Required properties:
- compatible: should be one of the following:
9 10 11 12 13 14 15
    "socionext,uniphier-ld4-reset"  - for LD4 SoC
    "socionext,uniphier-pro4-reset" - for Pro4 SoC
    "socionext,uniphier-sld8-reset" - for sLD8 SoC
    "socionext,uniphier-pro5-reset" - for Pro5 SoC
    "socionext,uniphier-pxs2-reset" - for PXs2/LD6b SoC
    "socionext,uniphier-ld11-reset" - for LD11 SoC
    "socionext,uniphier-ld20-reset" - for LD20 SoC
16
    "socionext,uniphier-pxs3-reset" - for PXs3 SoC
17 18 19 20 21
- #reset-cells: should be 1.

Example:

	sysctrl@61840000 {
22
		compatible = "socionext,uniphier-ld11-sysctrl",
23 24 25 26
			     "simple-mfd", "syscon";
		reg = <0x61840000 0x4000>;

		reset {
27
			compatible = "socionext,uniphier-ld11-reset";
28 29 30 31 32 33 34
			#reset-cells = <1>;
		};

		other nodes ...
	};


35 36
Media I/O (MIO) reset, SD reset
-------------------------------
37 38 39

Required properties:
- compatible: should be one of the following:
40 41 42 43 44 45 46 47
    "socionext,uniphier-ld4-mio-reset"  - for LD4 SoC
    "socionext,uniphier-pro4-mio-reset" - for Pro4 SoC
    "socionext,uniphier-sld8-mio-reset" - for sLD8 SoC
    "socionext,uniphier-pro5-sd-reset"  - for Pro5 SoC
    "socionext,uniphier-pxs2-sd-reset"  - for PXs2/LD6b SoC
    "socionext,uniphier-ld11-mio-reset" - for LD11 SoC (MIO)
    "socionext,uniphier-ld11-sd-reset"  - for LD11 SoC (SD)
    "socionext,uniphier-ld20-sd-reset"  - for LD20 SoC
48
    "socionext,uniphier-pxs3-sd-reset"  - for PXs3 SoC
49 50 51 52 53
- #reset-cells: should be 1.

Example:

	mioctrl@59810000 {
54
		compatible = "socionext,uniphier-ld11-mioctrl",
55 56 57 58
			     "simple-mfd", "syscon";
		reg = <0x59810000 0x800>;

		reset {
59
			compatible = "socionext,uniphier-ld11-mio-reset";
60 61 62 63 64 65 66 67 68 69 70 71
			#reset-cells = <1>;
		};

		other nodes ...
	};


Peripheral reset
----------------

Required properties:
- compatible: should be one of the following:
72 73 74 75 76 77 78
    "socionext,uniphier-ld4-peri-reset"  - for LD4 SoC
    "socionext,uniphier-pro4-peri-reset" - for Pro4 SoC
    "socionext,uniphier-sld8-peri-reset" - for sLD8 SoC
    "socionext,uniphier-pro5-peri-reset" - for Pro5 SoC
    "socionext,uniphier-pxs2-peri-reset" - for PXs2/LD6b SoC
    "socionext,uniphier-ld11-peri-reset" - for LD11 SoC
    "socionext,uniphier-ld20-peri-reset" - for LD20 SoC
79
    "socionext,uniphier-pxs3-peri-reset" - for PXs3 SoC
80 81 82 83 84
- #reset-cells: should be 1.

Example:

	perictrl@59820000 {
85
		compatible = "socionext,uniphier-ld11-perictrl",
86 87 88 89
			     "simple-mfd", "syscon";
		reg = <0x59820000 0x200>;

		reset {
90
			compatible = "socionext,uniphier-ld11-peri-reset";
91 92 93 94 95
			#reset-cells = <1>;
		};

		other nodes ...
	};
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120


Analog signal amplifier reset
-----------------------------

Required properties:
- compatible: should be one of the following:
    "socionext,uniphier-ld11-adamv-reset" - for LD11 SoC
    "socionext,uniphier-ld20-adamv-reset" - for LD20 SoC
- #reset-cells: should be 1.

Example:

	adamv@57920000 {
		compatible = "socionext,uniphier-ld11-adamv",
			     "simple-mfd", "syscon";
		reg = <0x57920000 0x1000>;

		adamv_rst: reset {
			compatible = "socionext,uniphier-ld11-adamv-reset";
			#reset-cells = <1>;
		};

		other nodes ...
	};
121 122


123 124
Peripheral core reset in glue layer
-----------------------------------
125

126 127 128
Some peripheral core reset belongs to its own glue layer. Before using
this core reset, it is necessary to control the clocks and resets to enable
this layer. These clocks and resets should be described in each property.
129 130 131

Required properties:
- compatible: Should be
132 133 134 135
    "socionext,uniphier-pro4-usb3-reset" - for Pro4 SoC USB3
    "socionext,uniphier-pxs2-usb3-reset" - for PXs2 SoC USB3
    "socionext,uniphier-ld20-usb3-reset" - for LD20 SoC USB3
    "socionext,uniphier-pxs3-usb3-reset" - for PXs3 SoC USB3
136 137 138
    "socionext,uniphier-pro4-ahci-reset" - for Pro4 SoC AHCI
    "socionext,uniphier-pxs2-ahci-reset" - for PXs2 SoC AHCI
    "socionext,uniphier-pxs3-ahci-reset" - for PXs3 SoC AHCI
139 140
- #reset-cells: Should be 1.
- reg: Specifies offset and length of the register set for the device.
141
- clocks: A list of phandles to the clock gate for the glue layer.
142 143 144 145
	According to the clock-names, appropriate clocks are required.
- clock-names: Should contain
    "gio", "link" - for Pro4 SoC
    "link"        - for others
146
- resets: A list of phandles to the reset control for the glue layer.
147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179
	According to the reset-names, appropriate resets are required.
- reset-names: Should contain
    "gio", "link" - for Pro4 SoC
    "link"        - for others

Example:

	usb-glue@65b00000 {
		compatible = "socionext,uniphier-ld20-dwc3-glue",
			     "simple-mfd";
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0 0x65b00000 0x400>;

		usb_rst: reset@0 {
			compatible = "socionext,uniphier-ld20-usb3-reset";
			reg = <0x0 0x4>;
			#reset-cells = <1>;
			clock-names = "link";
			clocks = <&sys_clk 14>;
			reset-names = "link";
			resets = <&sys_rst 14>;
		};

		regulator {
			...
		};

		phy {
			...
		};
		...
	};