1*f126890aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*f126890aSEmmanuel Vadot%YAML 1.2 3*f126890aSEmmanuel Vadot--- 4*f126890aSEmmanuel Vadot$id: http://devicetree.org/schemas/usb/starfive,jh7110-usb.yaml# 5*f126890aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*f126890aSEmmanuel Vadot 7*f126890aSEmmanuel Vadottitle: StarFive JH7110 wrapper module for the Cadence USBSS-DRD controller 8*f126890aSEmmanuel Vadot 9*f126890aSEmmanuel Vadotmaintainers: 10*f126890aSEmmanuel Vadot - Minda Chen <minda.chen@starfivetech.com> 11*f126890aSEmmanuel Vadot 12*f126890aSEmmanuel Vadotproperties: 13*f126890aSEmmanuel Vadot compatible: 14*f126890aSEmmanuel Vadot const: starfive,jh7110-usb 15*f126890aSEmmanuel Vadot 16*f126890aSEmmanuel Vadot ranges: true 17*f126890aSEmmanuel Vadot 18*f126890aSEmmanuel Vadot starfive,stg-syscon: 19*f126890aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle-array 20*f126890aSEmmanuel Vadot items: 21*f126890aSEmmanuel Vadot - items: 22*f126890aSEmmanuel Vadot - description: phandle to System Register Controller stg_syscon node. 23*f126890aSEmmanuel Vadot - description: dr mode register offset of STG_SYSCONSAIF__SYSCFG register for USB. 24*f126890aSEmmanuel Vadot description: 25*f126890aSEmmanuel Vadot The phandle to System Register Controller syscon node and the offset 26*f126890aSEmmanuel Vadot of STG_SYSCONSAIF__SYSCFG register for USB. 27*f126890aSEmmanuel Vadot 28*f126890aSEmmanuel Vadot dr_mode: 29*f126890aSEmmanuel Vadot enum: [host, otg, peripheral] 30*f126890aSEmmanuel Vadot 31*f126890aSEmmanuel Vadot "#address-cells": 32*f126890aSEmmanuel Vadot enum: [1, 2] 33*f126890aSEmmanuel Vadot 34*f126890aSEmmanuel Vadot "#size-cells": 35*f126890aSEmmanuel Vadot enum: [1, 2] 36*f126890aSEmmanuel Vadot 37*f126890aSEmmanuel Vadot clocks: 38*f126890aSEmmanuel Vadot items: 39*f126890aSEmmanuel Vadot - description: link power management clock 40*f126890aSEmmanuel Vadot - description: standby clock 41*f126890aSEmmanuel Vadot - description: APB clock 42*f126890aSEmmanuel Vadot - description: AXI clock 43*f126890aSEmmanuel Vadot - description: UTMI APB clock 44*f126890aSEmmanuel Vadot 45*f126890aSEmmanuel Vadot clock-names: 46*f126890aSEmmanuel Vadot items: 47*f126890aSEmmanuel Vadot - const: lpm 48*f126890aSEmmanuel Vadot - const: stb 49*f126890aSEmmanuel Vadot - const: apb 50*f126890aSEmmanuel Vadot - const: axi 51*f126890aSEmmanuel Vadot - const: utmi_apb 52*f126890aSEmmanuel Vadot 53*f126890aSEmmanuel Vadot resets: 54*f126890aSEmmanuel Vadot items: 55*f126890aSEmmanuel Vadot - description: Power up reset 56*f126890aSEmmanuel Vadot - description: APB clock reset 57*f126890aSEmmanuel Vadot - description: AXI clock reset 58*f126890aSEmmanuel Vadot - description: UTMI APB clock reset 59*f126890aSEmmanuel Vadot 60*f126890aSEmmanuel Vadot reset-names: 61*f126890aSEmmanuel Vadot items: 62*f126890aSEmmanuel Vadot - const: pwrup 63*f126890aSEmmanuel Vadot - const: apb 64*f126890aSEmmanuel Vadot - const: axi 65*f126890aSEmmanuel Vadot - const: utmi_apb 66*f126890aSEmmanuel Vadot 67*f126890aSEmmanuel VadotpatternProperties: 68*f126890aSEmmanuel Vadot "^usb@[0-9a-f]+$": 69*f126890aSEmmanuel Vadot $ref: cdns,usb3.yaml# 70*f126890aSEmmanuel Vadot description: Required child node 71*f126890aSEmmanuel Vadot 72*f126890aSEmmanuel Vadotrequired: 73*f126890aSEmmanuel Vadot - compatible 74*f126890aSEmmanuel Vadot - ranges 75*f126890aSEmmanuel Vadot - starfive,stg-syscon 76*f126890aSEmmanuel Vadot - '#address-cells' 77*f126890aSEmmanuel Vadot - '#size-cells' 78*f126890aSEmmanuel Vadot - dr_mode 79*f126890aSEmmanuel Vadot - clocks 80*f126890aSEmmanuel Vadot - resets 81*f126890aSEmmanuel Vadot 82*f126890aSEmmanuel VadotadditionalProperties: false 83*f126890aSEmmanuel Vadot 84*f126890aSEmmanuel Vadotexamples: 85*f126890aSEmmanuel Vadot - | 86*f126890aSEmmanuel Vadot usb@10100000 { 87*f126890aSEmmanuel Vadot compatible = "starfive,jh7110-usb"; 88*f126890aSEmmanuel Vadot ranges = <0x0 0x10100000 0x100000>; 89*f126890aSEmmanuel Vadot #address-cells = <1>; 90*f126890aSEmmanuel Vadot #size-cells = <1>; 91*f126890aSEmmanuel Vadot starfive,stg-syscon = <&stg_syscon 0x4>; 92*f126890aSEmmanuel Vadot clocks = <&syscrg 4>, 93*f126890aSEmmanuel Vadot <&stgcrg 5>, 94*f126890aSEmmanuel Vadot <&stgcrg 1>, 95*f126890aSEmmanuel Vadot <&stgcrg 3>, 96*f126890aSEmmanuel Vadot <&stgcrg 2>; 97*f126890aSEmmanuel Vadot clock-names = "lpm", "stb", "apb", "axi", "utmi_apb"; 98*f126890aSEmmanuel Vadot resets = <&stgcrg 10>, 99*f126890aSEmmanuel Vadot <&stgcrg 8>, 100*f126890aSEmmanuel Vadot <&stgcrg 7>, 101*f126890aSEmmanuel Vadot <&stgcrg 9>; 102*f126890aSEmmanuel Vadot reset-names = "pwrup", "apb", "axi", "utmi_apb"; 103*f126890aSEmmanuel Vadot dr_mode = "host"; 104*f126890aSEmmanuel Vadot 105*f126890aSEmmanuel Vadot usb@0 { 106*f126890aSEmmanuel Vadot compatible = "cdns,usb3"; 107*f126890aSEmmanuel Vadot reg = <0x0 0x10000>, 108*f126890aSEmmanuel Vadot <0x10000 0x10000>, 109*f126890aSEmmanuel Vadot <0x20000 0x10000>; 110*f126890aSEmmanuel Vadot reg-names = "otg", "xhci", "dev"; 111*f126890aSEmmanuel Vadot interrupts = <100>, <108>, <110>; 112*f126890aSEmmanuel Vadot interrupt-names = "host", "peripheral", "otg"; 113*f126890aSEmmanuel Vadot maximum-speed = "super-speed"; 114*f126890aSEmmanuel Vadot }; 115*f126890aSEmmanuel Vadot }; 116