| # SPDX-License-Identifier: GPL-2.0 |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/usb/usb251xb.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Microchip USB 2.0 Hi-Speed Hub Controller |
| |
| maintainers: |
| - Richard Leitner <richard.leitner@skidata.com> |
| |
| properties: |
| compatible: |
| enum: |
| - microchip,usb2422 |
| - microchip,usb2512b |
| - microchip,usb2512bi |
| - microchip,usb2513b |
| - microchip,usb2513bi |
| - microchip,usb2514b |
| - microchip,usb2514bi |
| - microchip,usb2517 |
| - microchip,usb2517i |
| - microchip,usb251xb |
| |
| reg: |
| maxItems: 1 |
| |
| reset-gpios: |
| description: | |
| Should specify the gpio for hub reset |
| |
| vdd-supply: |
| description: | |
| Should specify the phandle to the regulator supplying vdd |
| |
| skip-config: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| Skip Hub configuration, but only send the USB-Attach command |
| |
| vendor-id: |
| $ref: /schemas/types.yaml#/definitions/uint16 |
| default: 0x0424 |
| description: | |
| Set USB Vendor ID of the hub |
| |
| product-id: |
| $ref: /schemas/types.yaml#/definitions/uint16 |
| description: | |
| Set USB Product ID of the hub |
| |
| device-id: |
| $ref: /schemas/types.yaml#/definitions/uint16 |
| default: 0x0bb3 |
| description: | |
| Set USB Device ID of the hub |
| |
| language-id: |
| $ref: /schemas/types.yaml#/definitions/uint16 |
| default: 0x0000 |
| description: | |
| Set USB Language ID |
| |
| manufacturer: |
| $ref: /schemas/types.yaml#/definitions/string |
| description: | |
| Set USB Manufacturer string (max 31 characters long) |
| |
| product: |
| $ref: /schemas/types.yaml#/definitions/string |
| description: | |
| Set USB Product string (max 31 characters long) |
| |
| serial: |
| $ref: /schemas/types.yaml#/definitions/string |
| description: | |
| Set USB Serial string (max 31 characters long) |
| |
| bus-powered: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| selects between self- and bus-powered operation |
| (boolean, default is self-powered) |
| |
| self-powered: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| selects between self- and bus-powered operation |
| (boolean, default is self-powered) |
| |
| disable-hi-speed: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| disable USB Hi-Speed support (boolean) |
| |
| multi-tt: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| selects between multi- and single-transaction-translator |
| (boolean, default is multi-tt) |
| |
| single-tt: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| selects between multi- and single-transaction-translator |
| (boolean, default is multi-tt) |
| |
| disable-eop: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| disable End of Packet generation in full-speed mode (boolean) |
| |
| ganged-sensing: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| select over-current sense type in self-powered mode |
| (boolean, default is individual) |
| |
| individual-sensing: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| select over-current sense type in self-powered mode |
| (boolean, default is individual) |
| |
| ganged-port-switching: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| select port power switching mode (boolean, default is individual) |
| |
| individual-port-switching: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| select port power switching mode (boolean, default is individual) |
| |
| dynamic-power-switching: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| enable auto-switching from self- to bus-powered operation if the |
| local power source is removed or unavailable (boolean) |
| |
| oc-delay-us: |
| enum: [100, 4000, 8000, 16000] |
| default: 8000 |
| description: | |
| Delay time (in microseconds) for filtering the over-current sense |
| inputs. If an invalid value is given, the default is used instead. |
| |
| compound-device: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| indicate the hub is part of a compound device (boolean) |
| |
| port-mapping-mode: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| enable port mapping mode (boolean) |
| |
| led-usb-mode: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| led usb/speed indication mode selection (boolean, default is speed mode) |
| |
| led-speed-mode: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| led usb/speed indication mode selection (boolean, default is speed mode) |
| |
| string-support: |
| $ref: /schemas/types.yaml#/definitions/flag |
| description: | |
| enable string descriptor support (required for manufacturer, product |
| and serial string configuration) |
| |
| non-removable-ports: |
| $ref: /schemas/types.yaml#/definitions/uint8-array |
| description: | |
| Should specify the ports which have a non-removable device connected. |
| |
| sp-disabled-ports: |
| $ref: /schemas/types.yaml#/definitions/uint8-array |
| description: | |
| Specifies the ports which will be self-power disabled |
| |
| bp-disabled-ports: |
| $ref: /schemas/types.yaml#/definitions/uint8-array |
| description: | |
| Specifies the ports which will be bus-power disabled |
| |
| sp-max-total-current-microamp: |
| maximum: 100000 |
| default: 1000 |
| description: | |
| Specifies max current consumed by the hub from VBUS when |
| operating in self-powered hub. It includes the hub silicon |
| along with all associated circuitry including a permanently |
| attached peripheral. |
| |
| bp-max-total-current-microamp: |
| maximum: 510000 |
| default: 100000 |
| description: | |
| Specifies max current consumed by the hub from VBUS when |
| operating in self-powered hub. It includes the hub silicon |
| along with all associated circuitry including a permanently |
| attached peripheral. |
| |
| sp-max-removable-current-microamp: |
| maximum: 100000 |
| default: 1000 |
| description: | |
| Specifies max current consumed by the hub from VBUS when |
| operating in self-powered hub. It includes the hub silicon |
| along with all associated circuitry excluding a permanently |
| attached peripheral. |
| |
| bp-max-removable-current-microamp: |
| maximum: 510000 |
| default: 100000 |
| description: | |
| Specifies max current consumed by the hub from VBUS when |
| operating in self-powered hub. It includes the hub silicon |
| along with all associated circuitry excluding a permanently |
| attached peripheral. |
| |
| power-on-time-ms: |
| maximum: 510 |
| default: 100 |
| description: | |
| Specifies the time it takes from the time the host initiates the |
| power-on sequence to a port until the port has adequate power. |
| |
| swap-dx-lanes: |
| $ref: /schemas/types.yaml#/definitions/uint8-array |
| description: | |
| Specifies the ports which will swap the differential-pair (D+/D-), |
| default is not-swapped. |
| |
| additionalProperties: false |
| |
| required: |
| - compatible |
| - reg |
| |
| examples: |
| - | |
| #include <dt-bindings/gpio/gpio.h> |
| |
| i2c { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| usb-hub@2c { |
| compatible = "microchip,usb2512b"; |
| reg = <0x2c>; |
| reset-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; |
| }; |
| |
| usb-hub@2d { |
| compatible = "microchip,usb2514b"; |
| reg = <0x2d>; |
| vendor-id = /bits/ 16 <0x0000>; |
| product-id = /bits/ 16 <0x0000>; |
| string-support; |
| manufacturer = "Foo"; |
| product = "Foo-Bar"; |
| serial = "1234567890A"; |
| /* correct misplaced usb connectors on port 1,2 */ |
| swap-dx-lanes = <1 2>; |
| }; |
| }; |