xref: /freebsd/sys/contrib/device-tree/Bindings/usb/intel,keembay-dwc3.yaml (revision e67e85659c0de33e617e5fbf1028c6e8b49eee53)
16be33864SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
26be33864SEmmanuel Vadot%YAML 1.2
36be33864SEmmanuel Vadot---
46be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/usb/intel,keembay-dwc3.yaml#
56be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
66be33864SEmmanuel Vadot
76be33864SEmmanuel Vadottitle: Intel Keem Bay DWC3 USB controller
86be33864SEmmanuel Vadot
96be33864SEmmanuel Vadotmaintainers:
106be33864SEmmanuel Vadot  - Wan Ahmad Zainie <wan.ahmad.zainie.wan.mohamad@intel.com>
116be33864SEmmanuel Vadot
126be33864SEmmanuel Vadotproperties:
136be33864SEmmanuel Vadot  compatible:
146be33864SEmmanuel Vadot    const: intel,keembay-dwc3
156be33864SEmmanuel Vadot
16*e67e8565SEmmanuel Vadot  reg:
17*e67e8565SEmmanuel Vadot    maxItems: 1
18*e67e8565SEmmanuel Vadot
196be33864SEmmanuel Vadot  clocks:
206be33864SEmmanuel Vadot    maxItems: 4
216be33864SEmmanuel Vadot
226be33864SEmmanuel Vadot  clock-names:
236be33864SEmmanuel Vadot    items:
246be33864SEmmanuel Vadot      - const: async_master
256be33864SEmmanuel Vadot      - const: ref
266be33864SEmmanuel Vadot      - const: alt_ref
276be33864SEmmanuel Vadot      - const: suspend
286be33864SEmmanuel Vadot
296be33864SEmmanuel Vadot  ranges: true
306be33864SEmmanuel Vadot
316be33864SEmmanuel Vadot  '#address-cells':
326be33864SEmmanuel Vadot    enum: [ 1, 2 ]
336be33864SEmmanuel Vadot
346be33864SEmmanuel Vadot  '#size-cells':
356be33864SEmmanuel Vadot    enum: [ 1, 2 ]
366be33864SEmmanuel Vadot
376be33864SEmmanuel Vadot# Required child node:
386be33864SEmmanuel Vadot
396be33864SEmmanuel VadotpatternProperties:
405def4c47SEmmanuel Vadot  "^usb@[0-9a-f]+$":
415def4c47SEmmanuel Vadot    $ref: snps,dwc3.yaml#
426be33864SEmmanuel Vadot
436be33864SEmmanuel Vadotrequired:
446be33864SEmmanuel Vadot  - compatible
456be33864SEmmanuel Vadot  - clocks
466be33864SEmmanuel Vadot  - clock-names
476be33864SEmmanuel Vadot  - ranges
486be33864SEmmanuel Vadot
496be33864SEmmanuel VadotadditionalProperties: false
506be33864SEmmanuel Vadot
516be33864SEmmanuel Vadotexamples:
526be33864SEmmanuel Vadot  - |
536be33864SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
546be33864SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
556be33864SEmmanuel Vadot    #define KEEM_BAY_A53_AUX_USB
566be33864SEmmanuel Vadot    #define KEEM_BAY_A53_AUX_USB_REF
576be33864SEmmanuel Vadot    #define KEEM_BAY_A53_AUX_USB_ALT_REF
586be33864SEmmanuel Vadot    #define KEEM_BAY_A53_AUX_USB_SUSPEND
596be33864SEmmanuel Vadot
606be33864SEmmanuel Vadot    usb {
616be33864SEmmanuel Vadot          compatible = "intel,keembay-dwc3";
626be33864SEmmanuel Vadot          clocks = <&scmi_clk KEEM_BAY_A53_AUX_USB>,
636be33864SEmmanuel Vadot                   <&scmi_clk KEEM_BAY_A53_AUX_USB_REF>,
646be33864SEmmanuel Vadot                   <&scmi_clk KEEM_BAY_A53_AUX_USB_ALT_REF>,
656be33864SEmmanuel Vadot                   <&scmi_clk KEEM_BAY_A53_AUX_USB_SUSPEND>;
666be33864SEmmanuel Vadot          clock-names = "async_master", "ref", "alt_ref", "suspend";
676be33864SEmmanuel Vadot          ranges;
686be33864SEmmanuel Vadot          #address-cells = <1>;
696be33864SEmmanuel Vadot          #size-cells = <1>;
706be33864SEmmanuel Vadot
715def4c47SEmmanuel Vadot          usb@34000000 {
726be33864SEmmanuel Vadot                compatible = "snps,dwc3";
736be33864SEmmanuel Vadot                reg = <0x34000000 0x10000>;
746be33864SEmmanuel Vadot                interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
756be33864SEmmanuel Vadot                dr_mode = "peripheral";
766be33864SEmmanuel Vadot          };
776be33864SEmmanuel Vadot    };
78