18c2ecf20Sopenharmony_ci* Renesas R-Car generation 2 USB PHY
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciThis file provides information on what the device node for the R-Car generation
48c2ecf20Sopenharmony_ci2 USB PHY contains.
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciRequired properties:
78c2ecf20Sopenharmony_ci- compatible: "renesas,usb-phy-r8a7742" if the device is a part of R8A7742 SoC.
88c2ecf20Sopenharmony_ci	      "renesas,usb-phy-r8a7743" if the device is a part of R8A7743 SoC.
98c2ecf20Sopenharmony_ci	      "renesas,usb-phy-r8a7744" if the device is a part of R8A7744 SoC.
108c2ecf20Sopenharmony_ci	      "renesas,usb-phy-r8a7745" if the device is a part of R8A7745 SoC.
118c2ecf20Sopenharmony_ci	      "renesas,usb-phy-r8a77470" if the device is a part of R8A77470 SoC.
128c2ecf20Sopenharmony_ci	      "renesas,usb-phy-r8a7790" if the device is a part of R8A7790 SoC.
138c2ecf20Sopenharmony_ci	      "renesas,usb-phy-r8a7791" if the device is a part of R8A7791 SoC.
148c2ecf20Sopenharmony_ci	      "renesas,usb-phy-r8a7794" if the device is a part of R8A7794 SoC.
158c2ecf20Sopenharmony_ci	      "renesas,rcar-gen2-usb-phy" for a generic R-Car Gen2 or
168c2ecf20Sopenharmony_ci					  RZ/G1 compatible device.
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci	      When compatible with the generic version, nodes must list the
198c2ecf20Sopenharmony_ci	      SoC-specific version corresponding to the platform first
208c2ecf20Sopenharmony_ci	      followed by the generic version.
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci- reg: offset and length of the register block.
238c2ecf20Sopenharmony_ci- #address-cells: number of address cells for the USB channel subnodes, must
248c2ecf20Sopenharmony_ci		  be <1>.
258c2ecf20Sopenharmony_ci- #size-cells: number of size cells for the USB channel subnodes, must be <0>.
268c2ecf20Sopenharmony_ci- clocks: clock phandle and specifier pair.
278c2ecf20Sopenharmony_ci- clock-names: string, clock input name, must be "usbhs".
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ciThe USB PHY device tree node should have the subnodes corresponding to the USB
308c2ecf20Sopenharmony_cichannels. These subnodes must contain the following properties:
318c2ecf20Sopenharmony_ci- reg: the USB controller selector; see the table below for the values.
328c2ecf20Sopenharmony_ci- #phy-cells: see phy-bindings.txt in the same directory, must be <1>.
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ciThe phandle's argument in the PHY specifier is the USB controller selector for
358c2ecf20Sopenharmony_cithe USB channel other than r8a77470 SoC; see the selector meanings below:
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci+-----------+---------------+---------------+
388c2ecf20Sopenharmony_ci|\ Selector |               |               |
398c2ecf20Sopenharmony_ci+ --------- +       0       |       1       |
408c2ecf20Sopenharmony_ci| Channel  \|               |               |
418c2ecf20Sopenharmony_ci+-----------+---------------+---------------+
428c2ecf20Sopenharmony_ci| 0         | PCI EHCI/OHCI | HS-USB        |
438c2ecf20Sopenharmony_ci| 2         | PCI EHCI/OHCI | xHCI          |
448c2ecf20Sopenharmony_ci+-----------+---------------+---------------+
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ciFor r8a77470 SoC;see the selector meaning below:
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ci+-----------+---------------+---------------+
498c2ecf20Sopenharmony_ci|\ Selector |               |               |
508c2ecf20Sopenharmony_ci+ --------- +       0       |       1       |
518c2ecf20Sopenharmony_ci| Channel  \|               |               |
528c2ecf20Sopenharmony_ci+-----------+---------------+---------------+
538c2ecf20Sopenharmony_ci| 0         | EHCI/OHCI     | HS-USB        |
548c2ecf20Sopenharmony_ci+-----------+---------------+---------------+
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ciExample (Lager board):
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci	usb-phy@e6590100 {
598c2ecf20Sopenharmony_ci		compatible = "renesas,usb-phy-r8a7790", "renesas,rcar-gen2-usb-phy";
608c2ecf20Sopenharmony_ci		reg = <0 0xe6590100 0 0x100>;
618c2ecf20Sopenharmony_ci		#address-cells = <1>;
628c2ecf20Sopenharmony_ci		#size-cells = <0>;
638c2ecf20Sopenharmony_ci		clocks = <&cpg CPG_MOD 704>;
648c2ecf20Sopenharmony_ci		clock-names = "usbhs";
658c2ecf20Sopenharmony_ci		power-domains = <&sysc R8A7790_PD_ALWAYS_ON>;
668c2ecf20Sopenharmony_ci		resets = <&cpg 704>;
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ci		usb0: usb-channel@0 {
698c2ecf20Sopenharmony_ci			reg = <0>;
708c2ecf20Sopenharmony_ci			#phy-cells = <1>;
718c2ecf20Sopenharmony_ci		};
728c2ecf20Sopenharmony_ci		usb2: usb-channel@2 {
738c2ecf20Sopenharmony_ci			reg = <2>;
748c2ecf20Sopenharmony_ci			#phy-cells = <1>;
758c2ecf20Sopenharmony_ci		};
768c2ecf20Sopenharmony_ci	};
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_ciExample (iWave RZ/G1C sbc):
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ci	usbphy0: usb-phy0@e6590100 {
818c2ecf20Sopenharmony_ci		compatible = "renesas,usb-phy-r8a77470",
828c2ecf20Sopenharmony_ci			     "renesas,rcar-gen2-usb-phy";
838c2ecf20Sopenharmony_ci		reg = <0 0xe6590100 0 0x100>;
848c2ecf20Sopenharmony_ci		#address-cells = <1>;
858c2ecf20Sopenharmony_ci		#size-cells = <0>;
868c2ecf20Sopenharmony_ci		clocks = <&cpg CPG_MOD 704>;
878c2ecf20Sopenharmony_ci		clock-names = "usbhs";
888c2ecf20Sopenharmony_ci		power-domains = <&sysc R8A77470_PD_ALWAYS_ON>;
898c2ecf20Sopenharmony_ci		resets = <&cpg 704>;
908c2ecf20Sopenharmony_ci
918c2ecf20Sopenharmony_ci		usb0: usb-channel@0 {
928c2ecf20Sopenharmony_ci			reg = <0>;
938c2ecf20Sopenharmony_ci			#phy-cells = <1>;
948c2ecf20Sopenharmony_ci		};
958c2ecf20Sopenharmony_ci	};
968c2ecf20Sopenharmony_ci
978c2ecf20Sopenharmony_ci	usbphy1: usb-phy@e6598100 {
988c2ecf20Sopenharmony_ci		compatible = "renesas,usb-phy-r8a77470",
998c2ecf20Sopenharmony_ci			     "renesas,rcar-gen2-usb-phy";
1008c2ecf20Sopenharmony_ci		reg = <0 0xe6598100 0 0x100>;
1018c2ecf20Sopenharmony_ci		#address-cells = <1>;
1028c2ecf20Sopenharmony_ci		#size-cells = <0>;
1038c2ecf20Sopenharmony_ci		clocks = <&cpg CPG_MOD 706>;
1048c2ecf20Sopenharmony_ci		clock-names = "usbhs";
1058c2ecf20Sopenharmony_ci		power-domains = <&sysc R8A77470_PD_ALWAYS_ON>;
1068c2ecf20Sopenharmony_ci		resets = <&cpg 706>;
1078c2ecf20Sopenharmony_ci
1088c2ecf20Sopenharmony_ci		usb1: usb-channel@0 {
1098c2ecf20Sopenharmony_ci			reg = <0>;
1108c2ecf20Sopenharmony_ci			#phy-cells = <1>;
1118c2ecf20Sopenharmony_ci		};
1128c2ecf20Sopenharmony_ci	};
113