xref: /linux/Documentation/devicetree/bindings/usb/ti,omap4-musb.yaml (revision b734412619821f3ed63ba63533f539672cb7a76d)
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