170fcdc82SCharan Pedumuru# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 270fcdc82SCharan Pedumuru%YAML 1.2 370fcdc82SCharan Pedumuru--- 470fcdc82SCharan Pedumuru$id: http://devicetree.org/schemas/usb/ti,omap4-musb.yaml# 570fcdc82SCharan Pedumuru$schema: http://devicetree.org/meta-schemas/core.yaml# 670fcdc82SCharan Pedumuru 770fcdc82SCharan Pedumurutitle: Texas Instruments OMAP MUSB USB OTG Controller 870fcdc82SCharan Pedumuru 970fcdc82SCharan Pedumurumaintainers: 1070fcdc82SCharan Pedumuru - Felipe Balbi <balbi@ti.com> 1170fcdc82SCharan Pedumuru 1270fcdc82SCharan Pedumurudescription: 1370fcdc82SCharan Pedumuru Texas Instruments glue layer for the Mentor Graphics MUSB OTG controller. 1470fcdc82SCharan Pedumuru Handles SoC-specific integration including PHY interface bridging(ULPI/ 1570fcdc82SCharan Pedumuru UTMI), interrupt aggregation, DMA engine coordination (internal/ 1670fcdc82SCharan Pedumuru external), VBUS/session control via control module mailbox, and 1770fcdc82SCharan Pedumuru clock/reset management. Provides fixed hardware configuration parameters 1870fcdc82SCharan Pedumuru to the generic MUSB core driver. 1970fcdc82SCharan Pedumuru 2070fcdc82SCharan Pedumuruproperties: 2170fcdc82SCharan Pedumuru compatible: 2270fcdc82SCharan Pedumuru enum: 2370fcdc82SCharan Pedumuru - ti,omap3-musb 2470fcdc82SCharan Pedumuru - ti,omap4-musb 2570fcdc82SCharan Pedumuru 2670fcdc82SCharan Pedumuru reg: 2770fcdc82SCharan Pedumuru maxItems: 1 2870fcdc82SCharan Pedumuru 2970fcdc82SCharan Pedumuru interrupts: 3070fcdc82SCharan Pedumuru minItems: 1 3170fcdc82SCharan Pedumuru maxItems: 2 3270fcdc82SCharan Pedumuru 3370fcdc82SCharan Pedumuru interrupt-names: 3470fcdc82SCharan Pedumuru minItems: 1 3570fcdc82SCharan Pedumuru items: 3670fcdc82SCharan Pedumuru - const: mc 3770fcdc82SCharan Pedumuru - const: dma 3870fcdc82SCharan Pedumuru 3970fcdc82SCharan Pedumuru multipoint: 4070fcdc82SCharan Pedumuru $ref: /schemas/types.yaml#/definitions/uint32 4170fcdc82SCharan Pedumuru description: 4270fcdc82SCharan Pedumuru Indicates the MUSB controller supports multipoint. This is a MUSB 4370fcdc82SCharan Pedumuru configuration-specific setting. 4470fcdc82SCharan Pedumuru const: 1 4570fcdc82SCharan Pedumuru 4670fcdc82SCharan Pedumuru num-eps: 4770fcdc82SCharan Pedumuru $ref: /schemas/types.yaml#/definitions/uint32 4870fcdc82SCharan Pedumuru description: 4970fcdc82SCharan Pedumuru Specifies the number of endpoints. This is a MUSB configuration 5070fcdc82SCharan Pedumuru specific setting. 5170fcdc82SCharan Pedumuru const: 16 5270fcdc82SCharan Pedumuru 5370fcdc82SCharan Pedumuru ram-bits: 5470fcdc82SCharan Pedumuru description: Specifies the RAM address size. 5570fcdc82SCharan Pedumuru const: 12 5670fcdc82SCharan Pedumuru 5770fcdc82SCharan Pedumuru interface-type: 5870fcdc82SCharan Pedumuru $ref: /schemas/types.yaml#/definitions/uint32 5970fcdc82SCharan Pedumuru description: 6070fcdc82SCharan Pedumuru Describes the type of interface between the controller and the PHY. 6170fcdc82SCharan Pedumuru 0 for ULPI, 1 for UTMI. 6270fcdc82SCharan Pedumuru enum: [0, 1] 6370fcdc82SCharan Pedumuru 6470fcdc82SCharan Pedumuru mode: 6570fcdc82SCharan Pedumuru $ref: /schemas/types.yaml#/definitions/uint32 6670fcdc82SCharan Pedumuru description: 1 for HOST, 2 for PERIPHERAL, 3 for OTG. 6770fcdc82SCharan Pedumuru enum: [1, 2, 3] 6870fcdc82SCharan Pedumuru 6970fcdc82SCharan Pedumuru power: 7070fcdc82SCharan Pedumuru $ref: /schemas/types.yaml#/definitions/uint32 7170fcdc82SCharan Pedumuru description: 7270fcdc82SCharan Pedumuru Indicates the maximum current the controller can supply when 7370fcdc82SCharan Pedumuru operating in host mode. A value of 50 corresponds to 100 mA, and a 7470fcdc82SCharan Pedumuru value of 150 corresponds to 300 mA. 7570fcdc82SCharan Pedumuru enum: [50, 150] 7670fcdc82SCharan Pedumuru 7770fcdc82SCharan Pedumuru phys: 7870fcdc82SCharan Pedumuru maxItems: 1 7970fcdc82SCharan Pedumuru 8070fcdc82SCharan Pedumuru phy-names: 8170fcdc82SCharan Pedumuru const: usb2-phy 8270fcdc82SCharan Pedumuru 8370fcdc82SCharan Pedumuru usb-phy: 84*0b5bde9eSRob Herring (Arm) maxItems: 1 8570fcdc82SCharan Pedumuru 8670fcdc82SCharan Pedumuru ctrl-module: 8770fcdc82SCharan Pedumuru $ref: /schemas/types.yaml#/definitions/phandle 8870fcdc82SCharan Pedumuru description: 8970fcdc82SCharan Pedumuru Phandle of the control module this glue uses to write to mailbox. 9070fcdc82SCharan Pedumuru 9170fcdc82SCharan Pedumururequired: 9270fcdc82SCharan Pedumuru - reg 9370fcdc82SCharan Pedumuru - compatible 9470fcdc82SCharan Pedumuru - interrupts 9570fcdc82SCharan Pedumuru - interrupt-names 9670fcdc82SCharan Pedumuru 97*0b5bde9eSRob Herring (Arm)allOf: 98*0b5bde9eSRob Herring (Arm) - $ref: usb-hcd.yaml# 99*0b5bde9eSRob Herring (Arm) 10070fcdc82SCharan PedumuruunevaluatedProperties: false 10170fcdc82SCharan Pedumuru 10270fcdc82SCharan Pedumuruexamples: 10370fcdc82SCharan Pedumuru - | 10470fcdc82SCharan Pedumuru #include <dt-bindings/interrupt-controller/arm-gic.h> 10570fcdc82SCharan Pedumuru usb@4a0ab000 { 10670fcdc82SCharan Pedumuru compatible = "ti,omap4-musb"; 10770fcdc82SCharan Pedumuru reg = <0x4a0ab000 0x1000>; 10870fcdc82SCharan Pedumuru interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, 10970fcdc82SCharan Pedumuru <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 11070fcdc82SCharan Pedumuru interrupt-names = "mc", "dma"; 11170fcdc82SCharan Pedumuru multipoint = <1>; 11270fcdc82SCharan Pedumuru num-eps = <16>; 11370fcdc82SCharan Pedumuru ram-bits = <12>; 11470fcdc82SCharan Pedumuru ctrl-module = <&omap_control_usb>; 11570fcdc82SCharan Pedumuru phys = <&usb2_phy>; 11670fcdc82SCharan Pedumuru phy-names = "usb2-phy"; 11770fcdc82SCharan Pedumuru interface-type = <1>; 11870fcdc82SCharan Pedumuru mode = <3>; 11970fcdc82SCharan Pedumuru power = <50>; 12070fcdc82SCharan Pedumuru }; 12170fcdc82SCharan Pedumuru... 122