sunxi: remove outdated kernel 5.15 files
[openwrt/openwrt.git] / target / linux / sunxi / patches-6.1 / 462-arm64-dts-allwinner-h616-Add-USB-nodes.patch
1 From 4cfd9d9350a57fc3ced240dbf61ca2f444283c50 Mon Sep 17 00:00:00 2001
2 From: Andre Przywara <andre.przywara@arm.com>
3 Date: Wed, 16 Jun 2021 18:20:47 +0100
4 Subject: [PATCH 5004/5006] arm64: dts: allwinner: h616: Add USB nodes
5
6 Add the nodes for the MUSB and the four USB host controllers to the SoC
7 .dtsi, along with the PHY node needed to bind all of them together.
8
9 EHCI/OHCI and MUSB are compatible to previous SoCs, but the PHY requires
10 some quirks (handled in the driver).
11
12 Signed-off-by: Andre Przywara <andre.przywara@arm.com>
13 ---
14 .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 160 ++++++++++++++++++
15 1 file changed, 160 insertions(+)
16
17 --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
18 +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
19 @@ -504,6 +504,166 @@
20 };
21 };
22
23 + usbotg: usb@5100000 {
24 + compatible = "allwinner,sun50i-h616-musb",
25 + "allwinner,sun8i-h3-musb";
26 + reg = <0x05100000 0x0400>;
27 + clocks = <&ccu CLK_BUS_OTG>;
28 + resets = <&ccu RST_BUS_OTG>;
29 + interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
30 + interrupt-names = "mc";
31 + phys = <&usbphy 0>;
32 + phy-names = "usb";
33 + extcon = <&usbphy 0>;
34 + status = "disabled";
35 + };
36 +
37 + usbphy: phy@5100400 {
38 + compatible = "allwinner,sun50i-h616-usb-phy";
39 + reg = <0x05100400 0x24>,
40 + <0x05101800 0x14>,
41 + <0x05200800 0x14>,
42 + <0x05310800 0x14>,
43 + <0x05311800 0x14>;
44 + reg-names = "phy_ctrl",
45 + "pmu0",
46 + "pmu1",
47 + "pmu2",
48 + "pmu3";
49 + clocks = <&ccu CLK_USB_PHY0>,
50 + <&ccu CLK_USB_PHY1>,
51 + <&ccu CLK_USB_PHY2>,
52 + <&ccu CLK_USB_PHY3>,
53 + <&ccu CLK_BUS_EHCI2>;
54 + clock-names = "usb0_phy",
55 + "usb1_phy",
56 + "usb2_phy",
57 + "usb3_phy",
58 + "pmu2_clk";
59 + resets = <&ccu RST_USB_PHY0>,
60 + <&ccu RST_USB_PHY1>,
61 + <&ccu RST_USB_PHY2>,
62 + <&ccu RST_USB_PHY3>;
63 + reset-names = "usb0_reset",
64 + "usb1_reset",
65 + "usb2_reset",
66 + "usb3_reset";
67 + status = "disabled";
68 + #phy-cells = <1>;
69 + };
70 +
71 + ehci0: usb@5101000 {
72 + compatible = "allwinner,sun50i-h616-ehci",
73 + "generic-ehci";
74 + reg = <0x05101000 0x100>;
75 + interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
76 + clocks = <&ccu CLK_BUS_OHCI0>,
77 + <&ccu CLK_BUS_EHCI0>,
78 + <&ccu CLK_USB_OHCI0>;
79 + resets = <&ccu RST_BUS_OHCI0>,
80 + <&ccu RST_BUS_EHCI0>;
81 + phys = <&usbphy 0>;
82 + phy-names = "usb";
83 + status = "disabled";
84 + };
85 +
86 + ohci0: usb@5101400 {
87 + compatible = "allwinner,sun50i-h616-ohci",
88 + "generic-ohci";
89 + reg = <0x05101400 0x100>;
90 + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
91 + clocks = <&ccu CLK_BUS_OHCI0>,
92 + <&ccu CLK_USB_OHCI0>;
93 + resets = <&ccu RST_BUS_OHCI0>;
94 + phys = <&usbphy 0>;
95 + phy-names = "usb";
96 + status = "disabled";
97 + };
98 +
99 + ehci1: usb@5200000 {
100 + compatible = "allwinner,sun50i-h616-ehci",
101 + "generic-ehci";
102 + reg = <0x05200000 0x100>;
103 + interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
104 + clocks = <&ccu CLK_BUS_OHCI1>,
105 + <&ccu CLK_BUS_EHCI1>,
106 + <&ccu CLK_USB_OHCI1>;
107 + resets = <&ccu RST_BUS_OHCI1>,
108 + <&ccu RST_BUS_EHCI1>;
109 + phys = <&usbphy 1>;
110 + phy-names = "usb";
111 + status = "disabled";
112 + };
113 +
114 + ohci1: usb@5200400 {
115 + compatible = "allwinner,sun50i-h616-ohci",
116 + "generic-ohci";
117 + reg = <0x05200400 0x100>;
118 + interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
119 + clocks = <&ccu CLK_BUS_OHCI1>,
120 + <&ccu CLK_USB_OHCI1>;
121 + resets = <&ccu RST_BUS_OHCI1>;
122 + phys = <&usbphy 1>;
123 + phy-names = "usb";
124 + status = "disabled";
125 + };
126 +
127 + ehci2: usb@5310000 {
128 + compatible = "allwinner,sun50i-h616-ehci",
129 + "generic-ehci";
130 + reg = <0x05310000 0x100>;
131 + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
132 + clocks = <&ccu CLK_BUS_OHCI2>,
133 + <&ccu CLK_BUS_EHCI2>,
134 + <&ccu CLK_USB_OHCI2>;
135 + resets = <&ccu RST_BUS_OHCI2>,
136 + <&ccu RST_BUS_EHCI2>;
137 + phys = <&usbphy 2>;
138 + phy-names = "usb";
139 + status = "disabled";
140 + };
141 +
142 + ohci2: usb@5310400 {
143 + compatible = "allwinner,sun50i-h616-ohci",
144 + "generic-ohci";
145 + reg = <0x05310400 0x100>;
146 + interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
147 + clocks = <&ccu CLK_BUS_OHCI2>,
148 + <&ccu CLK_USB_OHCI2>;
149 + resets = <&ccu RST_BUS_OHCI2>;
150 + phys = <&usbphy 2>;
151 + phy-names = "usb";
152 + status = "disabled";
153 + };
154 +
155 + ehci3: usb@5311000 {
156 + compatible = "allwinner,sun50i-h616-ehci",
157 + "generic-ehci";
158 + reg = <0x05311000 0x100>;
159 + interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
160 + clocks = <&ccu CLK_BUS_OHCI3>,
161 + <&ccu CLK_BUS_EHCI3>,
162 + <&ccu CLK_USB_OHCI3>;
163 + resets = <&ccu RST_BUS_OHCI3>,
164 + <&ccu RST_BUS_EHCI3>;
165 + phys = <&usbphy 3>;
166 + phy-names = "usb";
167 + status = "disabled";
168 + };
169 +
170 + ohci3: usb@5311400 {
171 + compatible = "allwinner,sun50i-h616-ohci",
172 + "generic-ohci";
173 + reg = <0x05311400 0x100>;
174 + interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
175 + clocks = <&ccu CLK_BUS_OHCI3>,
176 + <&ccu CLK_USB_OHCI3>;
177 + resets = <&ccu RST_BUS_OHCI3>;
178 + phys = <&usbphy 3>;
179 + phy-names = "usb";
180 + status = "disabled";
181 + };
182 +
183 rtc: rtc@7000000 {
184 compatible = "allwinner,sun50i-h616-rtc";
185 reg = <0x07000000 0x400>;