201 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/usb/chipidea,usb2-common.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: USB2 ChipIdea USB controller Common Properties8 9maintainers:10 - Xu Yang <xu.yang_2@nxp.com>11 12properties:13 reg:14 minItems: 115 maxItems: 216 17 interrupts:18 minItems: 119 maxItems: 220 21 clocks:22 minItems: 123 maxItems: 324 25 clock-names:26 minItems: 127 maxItems: 328 29 dr_mode: true30 31 power-domains:32 maxItems: 133 34 resets:35 maxItems: 136 37 reset-names:38 maxItems: 139 40 "#reset-cells":41 const: 142 43 phy_type: true44 45 itc-setting:46 description:47 interrupt threshold control register control, the setting should be48 aligned with ITC bits at register USBCMD.49 $ref: /schemas/types.yaml#/definitions/uint3250 51 ahb-burst-config:52 description:53 it is vendor dependent, the required value should be aligned with54 AHBBRST at SBUSCFG, the range is from 0x0 to 0x7. This property is55 used to change AHB burst configuration, check the chipidea spec for56 meaning of each value. If this property is not existed, it will use57 the reset value.58 $ref: /schemas/types.yaml#/definitions/uint3259 minimum: 0x060 maximum: 0x761 62 tx-burst-size-dword:63 description:64 it is vendor dependent, the tx burst size in dword (4 bytes), This65 register represents the maximum length of a the burst in 32-bit66 words while moving data from system memory to the USB bus, the value67 of this property will only take effect if property "ahb-burst-config"68 is set to 0, if this property is missing the reset default of the69 hardware implementation will be used.70 $ref: /schemas/types.yaml#/definitions/uint3271 minimum: 0x072 maximum: 0x2073 74 rx-burst-size-dword:75 description:76 it is vendor dependent, the rx burst size in dword (4 bytes), This77 register represents the maximum length of a the burst in 32-bit words78 while moving data from the USB bus to system memory, the value of79 this property will only take effect if property "ahb-burst-config"80 is set to 0, if this property is missing the reset default of the81 hardware implementation will be used.82 $ref: /schemas/types.yaml#/definitions/uint3283 minimum: 0x084 maximum: 0x2085 86 extcon:87 description:88 Phandles to external connector devices. First phandle should point89 to external connector, which provide "USB" cable events, the second90 should point to external connector device, which provide "USB-HOST"91 cable events. If one of the external connector devices is not92 required, empty <0> phandle should be specified.93 $ref: /schemas/types.yaml#/definitions/phandle-array94 minItems: 195 items:96 - description: vbus extcon97 - description: id extcon98 99 phy-clkgate-delay-us:100 description:101 The delay time (us) between putting the PHY into low power mode and102 gating the PHY clock.103 104 non-zero-ttctrl-ttha:105 description:106 After setting this property, the value of register ttctrl.ttha107 will be 0x7f; if not, the value will be 0x0, this is the default108 value. It needs to be very carefully for setting this property, it109 is recommended that consult with your IC engineer before setting110 this value. On the most of chipidea platforms, the "usage_tt" flag111 at RTL is 0, so this property only affects siTD.112 113 If this property is not set, the max packet size is 1023 bytes, and114 if the total of packet size for previous transactions are more than115 256 bytes, it can't accept any transactions within this frame. The116 use case is single transaction, but higher frame rate.117 118 If this property is set, the max packet size is 188 bytes, it can119 handle more transactions than above case, it can accept transactions120 until it considers the left room size within frame is less than 188121 bytes, software needs to make sure it does not send more than 90%122 maximum_periodic_data_per_frame. The use case is multiple123 transactions, but less frame rate.124 type: boolean125 126 mux-controls:127 description:128 The mux control for toggling host/device output of this controller.129 It's expected that a mux state of 0 indicates device mode and a mux130 state of 1 indicates host mode.131 maxItems: 1132 133 mux-control-names:134 const: usb_switch135 136 pinctrl-names:137 description:138 Names for optional pin modes in "default", "host", "device".139 In case of HSIC-mode, "idle" and "active" pin modes are mandatory.140 In this case, the "idle" state needs to pull down the data and141 strobe pin and the "active" state needs to pull up the strobe pin.142 oneOf:143 - items:144 - const: idle145 - const: active146 - items:147 - const: default148 - const: host149 - const: device150 - items:151 - const: default152 - enum:153 - host154 - device155 - items:156 - const: default157 158 pinctrl-0:159 maxItems: 1160 161 pinctrl-1:162 maxItems: 1163 164 phys:165 maxItems: 1166 167 phy-names:168 const: usb-phy169 170 vbus-supply:171 description: reference to the VBUS regulator.172 173 usb-phy:174 description: phandle for the PHY device. Use "phys" instead.175 maxItems: 1176 deprecated: true177 178 port:179 description:180 Any connector to the data bus of this controller should be modelled181 using the OF graph bindings specified, if the "usb-role-switch"182 property is used.183 $ref: /schemas/graph.yaml#/properties/port184 185 reset-gpios:186 maxItems: 1187 188dependencies:189 port: [ usb-role-switch ]190 mux-controls: [ mux-control-names ]191 192required:193 - reg194 - interrupts195 196allOf:197 - $ref: usb-hcd.yaml#198 - $ref: usb-drd.yaml#199 200additionalProperties: true201