1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2020 BayLibre, SAS.
4 * Author: Neil Armstrong <narmstrong@baylibre.com>
5 */
6
7/ {
8	soc {
9		usb: usb@ffe09080 {
10			compatible = "amlogic,meson-gxl-usb-ctrl";
11			reg = <0x0 0xffe09080 0x0 0x20>;
12			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
13			#address-cells = <2>;
14			#size-cells = <2>;
15			ranges;
16
17			clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB1_DDR_BRIDGE>;
18			clock-names = "usb_ctrl", "ddr";
19			resets = <&reset RESET_USB_OTG>;
20
21			dr_mode = "otg";
22
23			phys = <&usb2_phy1>;
24			phy-names = "usb2-phy1";
25
26			dwc2: usb@ff400000 {
27				compatible = "amlogic,meson-g12a-usb", "snps,dwc2";
28				reg = <0x0 0xff400000 0x0 0x40000>;
29				interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
30				clocks = <&clkc CLKID_USB1>;
31				clock-names = "otg";
32				phys = <&usb2_phy1>;
33				dr_mode = "peripheral";
34				g-rx-fifo-size = <192>;
35				g-np-tx-fifo-size = <128>;
36				g-tx-fifo-size = <128 128 16 16 16>;
37			};
38
39			dwc3: usb@ff500000 {
40				compatible = "snps,dwc3";
41				reg = <0x0 0xff500000 0x0 0x100000>;
42				interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
43				dr_mode = "host";
44				maximum-speed = "high-speed";
45				snps,dis_u2_susphy_quirk;
46			};
47		};
48	};
49};
50
51&apb {
52	usb2_phy1: phy@9020 {
53		compatible = "amlogic,meson-gxl-usb2-phy";
54		#phy-cells = <0>;
55		reg = <0x0 0x9020 0x0 0x20>;
56		clocks = <&clkc CLKID_USB>;
57		clock-names = "phy";
58		resets = <&reset RESET_USB_OTG>;
59		reset-names = "phy";
60		status = "okay";
61	};
62};
63