| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/usb/apple,dwc3.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Apple Silicon DWC3 USB controller |
| |
| maintainers: |
| - Sven Peter <sven@kernel.org> |
| |
| description: |
| Apple Silicon SoCs use a Synopsys DesignWare DWC3 based controller for each of |
| their Type-C ports. |
| |
| allOf: |
| - $ref: snps,dwc3-common.yaml# |
| |
| properties: |
| compatible: |
| oneOf: |
| - items: |
| - enum: |
| - apple,t6000-dwc3 |
| - apple,t6020-dwc3 |
| - apple,t8112-dwc3 |
| - const: apple,t8103-dwc3 |
| - const: apple,t8103-dwc3 |
| |
| reg: |
| items: |
| - description: Core DWC3 region |
| - description: Apple-specific DWC3 region |
| |
| reg-names: |
| items: |
| - const: dwc3-core |
| - const: dwc3-apple |
| |
| interrupts: |
| maxItems: 1 |
| |
| iommus: |
| maxItems: 2 |
| |
| resets: |
| maxItems: 1 |
| |
| power-domains: |
| maxItems: 1 |
| |
| required: |
| - compatible |
| - reg |
| - reg-names |
| - interrupts |
| - iommus |
| - resets |
| - power-domains |
| - usb-role-switch |
| |
| unevaluatedProperties: false |
| |
| examples: |
| - | |
| #include <dt-bindings/interrupt-controller/apple-aic.h> |
| #include <dt-bindings/interrupt-controller/irq.h> |
| |
| usb@82280000 { |
| compatible = "apple,t8103-dwc3"; |
| reg = <0x82280000 0xcd00>, <0x8228cd00 0x3200>; |
| reg-names = "dwc3-core", "dwc3-apple"; |
| interrupts = <AIC_IRQ 777 IRQ_TYPE_LEVEL_HIGH>; |
| iommus = <&dwc3_0_dart_0 0>, <&dwc3_0_dart_1 1>; |
| |
| power-domains = <&ps_atc0_usb>; |
| resets = <&atcphy0>; |
| |
| usb-role-switch; |
| }; |