18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/phy/allwinner,sun9i-a80-usb-phy.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: Allwinner A80 USB PHY Device Tree Bindings 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - Chen-Yu Tsai <wens@csie.org> 118c2ecf20Sopenharmony_ci - Maxime Ripard <mripard@kernel.org> 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciproperties: 148c2ecf20Sopenharmony_ci "#phy-cells": 158c2ecf20Sopenharmony_ci const: 0 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci compatible: 188c2ecf20Sopenharmony_ci const: allwinner,sun9i-a80-usb-phy 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci reg: 218c2ecf20Sopenharmony_ci maxItems: 1 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci clocks: 248c2ecf20Sopenharmony_ci anyOf: 258c2ecf20Sopenharmony_ci - description: Main PHY Clock 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ci - items: 288c2ecf20Sopenharmony_ci - description: Main PHY clock 298c2ecf20Sopenharmony_ci - description: HSIC 12MHz clock 308c2ecf20Sopenharmony_ci - description: HSIC 480MHz clock 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci clock-names: 338c2ecf20Sopenharmony_ci oneOf: 348c2ecf20Sopenharmony_ci - const: phy 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci - items: 378c2ecf20Sopenharmony_ci - const: phy 388c2ecf20Sopenharmony_ci - const: hsic_12M 398c2ecf20Sopenharmony_ci - const: hsic_480M 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci resets: 428c2ecf20Sopenharmony_ci anyOf: 438c2ecf20Sopenharmony_ci - description: Normal USB PHY reset 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci - items: 468c2ecf20Sopenharmony_ci - description: Normal USB PHY reset 478c2ecf20Sopenharmony_ci - description: HSIC Reset 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci reset-names: 508c2ecf20Sopenharmony_ci oneOf: 518c2ecf20Sopenharmony_ci - const: phy 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci - items: 548c2ecf20Sopenharmony_ci - const: phy 558c2ecf20Sopenharmony_ci - const: hsic 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci phy_type: 588c2ecf20Sopenharmony_ci const: hsic 598c2ecf20Sopenharmony_ci description: 608c2ecf20Sopenharmony_ci When absent, the PHY type will be assumed to be normal USB. 618c2ecf20Sopenharmony_ci 628c2ecf20Sopenharmony_ci phy-supply: 638c2ecf20Sopenharmony_ci description: 648c2ecf20Sopenharmony_ci Regulator that powers VBUS 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_cirequired: 678c2ecf20Sopenharmony_ci - "#phy-cells" 688c2ecf20Sopenharmony_ci - compatible 698c2ecf20Sopenharmony_ci - reg 708c2ecf20Sopenharmony_ci - clocks 718c2ecf20Sopenharmony_ci - clock-names 728c2ecf20Sopenharmony_ci - resets 738c2ecf20Sopenharmony_ci - reset-names 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ciadditionalProperties: false 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ciif: 788c2ecf20Sopenharmony_ci properties: 798c2ecf20Sopenharmony_ci phy_type: 808c2ecf20Sopenharmony_ci const: hsic 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ci required: 838c2ecf20Sopenharmony_ci - phy_type 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_cithen: 868c2ecf20Sopenharmony_ci properties: 878c2ecf20Sopenharmony_ci clocks: 888c2ecf20Sopenharmony_ci maxItems: 3 898c2ecf20Sopenharmony_ci 908c2ecf20Sopenharmony_ci clock-names: 918c2ecf20Sopenharmony_ci maxItems: 3 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ci resets: 948c2ecf20Sopenharmony_ci maxItems: 2 958c2ecf20Sopenharmony_ci 968c2ecf20Sopenharmony_ci reset-names: 978c2ecf20Sopenharmony_ci maxItems: 2 988c2ecf20Sopenharmony_ci 998c2ecf20Sopenharmony_ciexamples: 1008c2ecf20Sopenharmony_ci - | 1018c2ecf20Sopenharmony_ci #include <dt-bindings/clock/sun9i-a80-usb.h> 1028c2ecf20Sopenharmony_ci #include <dt-bindings/reset/sun9i-a80-usb.h> 1038c2ecf20Sopenharmony_ci 1048c2ecf20Sopenharmony_ci usbphy1: phy@a00800 { 1058c2ecf20Sopenharmony_ci compatible = "allwinner,sun9i-a80-usb-phy"; 1068c2ecf20Sopenharmony_ci reg = <0x00a00800 0x4>; 1078c2ecf20Sopenharmony_ci clocks = <&usb_clocks CLK_USB0_PHY>; 1088c2ecf20Sopenharmony_ci clock-names = "phy"; 1098c2ecf20Sopenharmony_ci resets = <&usb_clocks RST_USB0_PHY>; 1108c2ecf20Sopenharmony_ci reset-names = "phy"; 1118c2ecf20Sopenharmony_ci phy-supply = <®_usb1_vbus>; 1128c2ecf20Sopenharmony_ci #phy-cells = <0>; 1138c2ecf20Sopenharmony_ci }; 1148c2ecf20Sopenharmony_ci 1158c2ecf20Sopenharmony_ci - | 1168c2ecf20Sopenharmony_ci #include <dt-bindings/clock/sun9i-a80-usb.h> 1178c2ecf20Sopenharmony_ci #include <dt-bindings/reset/sun9i-a80-usb.h> 1188c2ecf20Sopenharmony_ci 1198c2ecf20Sopenharmony_ci usbphy3: phy@a02800 { 1208c2ecf20Sopenharmony_ci compatible = "allwinner,sun9i-a80-usb-phy"; 1218c2ecf20Sopenharmony_ci reg = <0x00a02800 0x4>; 1228c2ecf20Sopenharmony_ci clocks = <&usb_clocks CLK_USB2_PHY>, 1238c2ecf20Sopenharmony_ci <&usb_clocks CLK_USB_HSIC>, 1248c2ecf20Sopenharmony_ci <&usb_clocks CLK_USB2_HSIC>; 1258c2ecf20Sopenharmony_ci clock-names = "phy", 1268c2ecf20Sopenharmony_ci "hsic_12M", 1278c2ecf20Sopenharmony_ci "hsic_480M"; 1288c2ecf20Sopenharmony_ci resets = <&usb_clocks RST_USB2_PHY>, 1298c2ecf20Sopenharmony_ci <&usb_clocks RST_USB2_HSIC>; 1308c2ecf20Sopenharmony_ci reset-names = "phy", 1318c2ecf20Sopenharmony_ci "hsic"; 1328c2ecf20Sopenharmony_ci phy_type = "hsic"; 1338c2ecf20Sopenharmony_ci phy-supply = <®_usb3_vbus>; 1348c2ecf20Sopenharmony_ci #phy-cells = <0>; 1358c2ecf20Sopenharmony_ci }; 136