2020-01-03 16:28:24 +01:00
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id : http://devicetree.org/schemas/phy/allwinner,sun9i-a80-usb-phy.yaml#
$schema : http://devicetree.org/meta-schemas/core.yaml#
title : Allwinner A80 USB PHY Device Tree Bindings
maintainers :
- Chen-Yu Tsai <wens@csie.org>
- Maxime Ripard <mripard@kernel.org>
properties :
"#phy-cells" :
const : 0
compatible :
const : allwinner,sun9i-a80-usb-phy
reg :
maxItems : 1
clocks :
anyOf :
2021-01-04 16:02:53 -07:00
- maxItems : 1
description : Main PHY Clock
2020-01-03 16:28:24 +01:00
- items :
- description : Main PHY clock
- description : HSIC 12MHz clock
- description : HSIC 480MHz clock
clock-names :
oneOf :
- const : phy
- items :
- const : phy
- const : hsic_12M
- const : hsic_480M
resets :
2021-01-04 16:02:53 -07:00
minItems : 1
items :
2020-01-03 16:28:24 +01:00
- description : Normal USB PHY reset
2021-01-04 16:02:53 -07:00
- description : HSIC Reset
2020-01-03 16:28:24 +01:00
reset-names :
2021-01-04 16:02:53 -07:00
minItems : 1
items :
2020-01-03 16:28:24 +01:00
- const : phy
2021-01-04 16:02:53 -07:00
- const : hsic
2020-01-03 16:28:24 +01:00
phy_type :
const : hsic
description :
When absent, the PHY type will be assumed to be normal USB.
phy-supply :
description :
Regulator that powers VBUS
required :
- "#phy-cells"
- compatible
- reg
- clocks
- clock-names
- resets
- reset-names
additionalProperties : false
if :
properties :
phy_type :
const : hsic
required :
- phy_type
then :
properties :
clocks :
maxItems : 3
clock-names :
maxItems : 3
resets :
maxItems : 2
reset-names :
maxItems : 2
examples :
- |
#include <dt-bindings/clock/sun9i-a80-usb.h>
#include <dt-bindings/reset/sun9i-a80-usb.h>
usbphy1 : phy@a00800 {
compatible = "allwinner,sun9i-a80-usb-phy";
reg = <0x00a00800 0x4>;
clocks = <&usb_clocks CLK_USB0_PHY>;
clock-names = "phy";
resets = <&usb_clocks RST_USB0_PHY>;
reset-names = "phy";
phy-supply = <®_usb1_vbus>;
#phy-cells = <0>;
};
- |
#include <dt-bindings/clock/sun9i-a80-usb.h>
#include <dt-bindings/reset/sun9i-a80-usb.h>
usbphy3 : phy@a02800 {
compatible = "allwinner,sun9i-a80-usb-phy";
reg = <0x00a02800 0x4>;
clocks = <&usb_clocks CLK_USB2_PHY>,
<&usb_clocks CLK_USB_HSIC>,
<&usb_clocks CLK_USB2_HSIC>;
clock-names = "phy",
"hsic_12M" ,
"hsic_480M" ;
resets = <&usb_clocks RST_USB2_PHY>,
<&usb_clocks RST_USB2_HSIC>;
reset-names = "phy",
"hsic" ;
phy_type = "hsic";
phy-supply = <®_usb3_vbus>;
#phy-cells = <0>;
};