# SPDX-License-Identifier: GPL-2.0
|
%YAML 1.2
|
---
|
$id: http://devicetree.org/schemas/phy/phy-rockchip-inno-usb2.yaml#
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
title: Rockchip USB2.0 phy with inno IP block
|
|
maintainers:
|
- Heiko Stuebner <heiko@sntech.de>
|
|
properties:
|
compatible:
|
enum:
|
- rockchip,px30-usb2phy
|
- rockchip,rk1808-usb2phy
|
- rockchip,rk3128-usb2phy
|
- rockchip,rk3228-usb2phy
|
- rockchip,rk3308-usb2phy
|
- rockchip,rk3328-usb2phy
|
- rockchip,rk3366-usb2phy
|
- rockchip,rk3368-usb2phy
|
- rockchip,rk3399-usb2phy
|
- rockchip,rk3568-usb2phy
|
- rockchip,rk3588-usb2phy
|
- rockchip,rv1106-usb2phy
|
- rockchip,rv1108-usb2phy
|
|
reg:
|
maxItems: 1
|
|
clock-output-names:
|
description:
|
The usb 480m output clock name.
|
|
"#clock-cells":
|
const: 0
|
|
"#phy-cells":
|
const: 0
|
|
clocks:
|
maxItems: 1
|
|
clock-names:
|
const: phyclk
|
|
assigned-clocks:
|
description:
|
Phandle of the usb 480m clock.
|
|
assigned-clock-parents:
|
description:
|
Parent of the usb 480m clock.
|
Select between usb-phy output 480m and xin24m.
|
Refer to clk/clock-bindings.txt for generic clock consumer properties.
|
|
extcon:
|
description:
|
Phandle to the extcon device providing the cable state for the otg phy.
|
|
wakeup-source:
|
description:
|
Enable USB irq wakeup when suspend.
|
Only work when suspend wakeup-config is not work.
|
|
rockchip,usbgrf:
|
$ref: /schemas/types.yaml#/definitions/phandle
|
description:
|
Phandle to the syscon managing the 'usb general register files'.
|
When set the driver will request its phandle as one companion-grf
|
for some special SoCs (e.g rv1108).
|
|
rockchip,usbctrl-grf:
|
$ref: /schemas/types.yaml#/definitions/phandle
|
description:
|
Phandle to the syscon managing the 'usb ctrl general register files'.
|
When set the driver will request its phandle as the
|
usb controller grf for some SoCs (e.g rk3588).
|
|
rockchip,u2phy-tuning:
|
$ref: /schemas/types.yaml#/definitions/flag
|
description: when set, tuning u2phy to improve usb2 SI.
|
|
host-port:
|
type: object
|
additionalProperties: false
|
|
properties:
|
"#phy-cells":
|
const: 0
|
|
interrupts:
|
description: host linestate interrupt
|
|
interrupt-names:
|
const: linestate
|
|
phy-supply:
|
description:
|
Phandle to a regulator that provides power to VBUS.
|
See ./phy-bindings.txt for details.
|
|
required:
|
- "#phy-cells"
|
- interrupts
|
- interrupt-names
|
|
otg-port:
|
type: object
|
additionalProperties: false
|
|
properties:
|
"#phy-cells":
|
const: 0
|
|
interrupts:
|
minItems: 1
|
maxItems: 3
|
|
interrupt-names:
|
oneOf:
|
- const: linestate
|
- const: otg-mux
|
- items:
|
- const: otg-bvalid
|
- const: otg-id
|
- const: linestate
|
|
phy-supply:
|
description:
|
Phandle to a regulator that provides power to VBUS.
|
See ./phy-bindings.txt for details.
|
|
vbus-supply:
|
description:
|
Phandle to a fixed-regulator that provides power to VBUS.
|
|
rockchip,utmi-bypass-uart:
|
$ref: /schemas/types.yaml#/definitions/flag
|
description: when set, indicates that support usb to bypass uart
|
feature. This property can only be added in debug stage.
|
|
rockchip,utmi-avalid:
|
$ref: /schemas/types.yaml#/definitions/flag
|
description: when set, the usb2 phy will use avalid status bit to
|
get vbus status. If not, it will use bvalid status bit to get vbus
|
status by default.
|
|
rockchip,vbus-always-on:
|
$ref: /schemas/types.yaml#/definitions/flag
|
description: when set, indicates that the otg vbus is always powered on.
|
|
rockchip,low-power-mode:
|
$ref: /schemas/types.yaml#/definitions/flag
|
description: when set, the port will enter low power state when suspend.
|
|
rockchip,typec-vbus-det:
|
$ref: /schemas/types.yaml#/definitions/flag
|
description: when set, check the vbus status from grf con for Type-C
|
interface. It's used when the vbusdet pin is always pulled up.
|
|
rockchip,sel-pipe-phystatus:
|
$ref: /schemas/types.yaml#/definitions/flag
|
description: when set, select the pipe phy status from grf for usb
|
controller. It's used when the usb3 phy is disabled, and it needs
|
to combine with the usbctrl-grf.
|
|
rockchip,dis-u2-susphy:
|
$ref: /schemas/types.yaml#/definitions/flag
|
description: when set, disable the usb2 phy enter suspend automatically.
|
|
required:
|
- "#phy-cells"
|
- interrupts
|
- interrupt-names
|
|
required:
|
- compatible
|
- reg
|
- clock-output-names
|
- "#clock-cells"
|
- "#phy-cells"
|
- host-port
|
- otg-port
|
|
additionalProperties: false
|
|
examples:
|
- |
|
#include <dt-bindings/clock/rk3399-cru.h>
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
#include <dt-bindings/interrupt-controller/irq.h>
|
u2phy0: usb2-phy@e450 {
|
compatible = "rockchip,rk3399-usb2phy";
|
reg = <0xe450 0x10>;
|
clocks = <&cru SCLK_USB2PHY0_REF>;
|
clock-names = "phyclk";
|
clock-output-names = "clk_usbphy0_480m";
|
#clock-cells = <0>;
|
#phy-cells = <0>;
|
|
u2phy0_host: host-port {
|
#phy-cells = <0>;
|
interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH 0>;
|
interrupt-names = "linestate";
|
};
|
|
u2phy0_otg: otg-port {
|
#phy-cells = <0>;
|
interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH 0>,
|
<GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH 0>,
|
<GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH 0>;
|
interrupt-names = "otg-bvalid", "otg-id", "linestate";
|
};
|
};
|