18bab661aSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 28bab661aSEmmanuel Vadot%YAML 1.2 38bab661aSEmmanuel Vadot--- 48bab661aSEmmanuel Vadot$id: http://devicetree.org/schemas/usb/usb251xb.yaml# 58bab661aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 68bab661aSEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: Microchip USB 2.0 Hi-Speed Hub Controller 88bab661aSEmmanuel Vadot 98bab661aSEmmanuel Vadotmaintainers: 108bab661aSEmmanuel Vadot - Richard Leitner <richard.leitner@skidata.com> 118bab661aSEmmanuel Vadot 128bab661aSEmmanuel Vadotproperties: 138bab661aSEmmanuel Vadot compatible: 148bab661aSEmmanuel Vadot enum: 158bab661aSEmmanuel Vadot - microchip,usb2422 168bab661aSEmmanuel Vadot - microchip,usb2512b 178bab661aSEmmanuel Vadot - microchip,usb2512bi 188bab661aSEmmanuel Vadot - microchip,usb2513b 198bab661aSEmmanuel Vadot - microchip,usb2513bi 208bab661aSEmmanuel Vadot - microchip,usb2514b 218bab661aSEmmanuel Vadot - microchip,usb2514bi 228bab661aSEmmanuel Vadot - microchip,usb2517 238bab661aSEmmanuel Vadot - microchip,usb2517i 248bab661aSEmmanuel Vadot - microchip,usb251xb 258bab661aSEmmanuel Vadot 268bab661aSEmmanuel Vadot reg: 278bab661aSEmmanuel Vadot maxItems: 1 288bab661aSEmmanuel Vadot 298bab661aSEmmanuel Vadot reset-gpios: 308bab661aSEmmanuel Vadot description: | 318bab661aSEmmanuel Vadot Should specify the gpio for hub reset 328bab661aSEmmanuel Vadot 338bab661aSEmmanuel Vadot vdd-supply: 348bab661aSEmmanuel Vadot description: | 358bab661aSEmmanuel Vadot Should specify the phandle to the regulator supplying vdd 368bab661aSEmmanuel Vadot 378bab661aSEmmanuel Vadot skip-config: 388bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 398bab661aSEmmanuel Vadot description: | 408bab661aSEmmanuel Vadot Skip Hub configuration, but only send the USB-Attach command 418bab661aSEmmanuel Vadot 428bab661aSEmmanuel Vadot vendor-id: 438bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint16 448bab661aSEmmanuel Vadot default: 0x0424 458bab661aSEmmanuel Vadot description: | 468bab661aSEmmanuel Vadot Set USB Vendor ID of the hub 478bab661aSEmmanuel Vadot 488bab661aSEmmanuel Vadot product-id: 498bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint16 508bab661aSEmmanuel Vadot description: | 518bab661aSEmmanuel Vadot Set USB Product ID of the hub 528bab661aSEmmanuel Vadot 538bab661aSEmmanuel Vadot device-id: 548bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint16 558bab661aSEmmanuel Vadot default: 0x0bb3 568bab661aSEmmanuel Vadot description: | 578bab661aSEmmanuel Vadot Set USB Device ID of the hub 588bab661aSEmmanuel Vadot 598bab661aSEmmanuel Vadot language-id: 608bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint16 618bab661aSEmmanuel Vadot default: 0x0000 628bab661aSEmmanuel Vadot description: | 638bab661aSEmmanuel Vadot Set USB Language ID 648bab661aSEmmanuel Vadot 658bab661aSEmmanuel Vadot manufacturer: 668bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 678bab661aSEmmanuel Vadot description: | 688bab661aSEmmanuel Vadot Set USB Manufacturer string (max 31 characters long) 698bab661aSEmmanuel Vadot 708bab661aSEmmanuel Vadot product: 718bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 728bab661aSEmmanuel Vadot description: | 738bab661aSEmmanuel Vadot Set USB Product string (max 31 characters long) 748bab661aSEmmanuel Vadot 758bab661aSEmmanuel Vadot serial: 768bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 778bab661aSEmmanuel Vadot description: | 788bab661aSEmmanuel Vadot Set USB Serial string (max 31 characters long) 798bab661aSEmmanuel Vadot 808bab661aSEmmanuel Vadot bus-powered: 818bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 828bab661aSEmmanuel Vadot description: | 838bab661aSEmmanuel Vadot selects between self- and bus-powered operation 848bab661aSEmmanuel Vadot (boolean, default is self-powered) 858bab661aSEmmanuel Vadot 868bab661aSEmmanuel Vadot self-powered: 878bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 888bab661aSEmmanuel Vadot description: | 898bab661aSEmmanuel Vadot selects between self- and bus-powered operation 908bab661aSEmmanuel Vadot (boolean, default is self-powered) 918bab661aSEmmanuel Vadot 928bab661aSEmmanuel Vadot disable-hi-speed: 938bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 948bab661aSEmmanuel Vadot description: | 958bab661aSEmmanuel Vadot disable USB Hi-Speed support (boolean) 968bab661aSEmmanuel Vadot 978bab661aSEmmanuel Vadot multi-tt: 988bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 998bab661aSEmmanuel Vadot description: | 1008bab661aSEmmanuel Vadot selects between multi- and single-transaction-translator 1018bab661aSEmmanuel Vadot (boolean, default is multi-tt) 1028bab661aSEmmanuel Vadot 1038bab661aSEmmanuel Vadot single-tt: 1048bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1058bab661aSEmmanuel Vadot description: | 1068bab661aSEmmanuel Vadot selects between multi- and single-transaction-translator 1078bab661aSEmmanuel Vadot (boolean, default is multi-tt) 1088bab661aSEmmanuel Vadot 1098bab661aSEmmanuel Vadot disable-eop: 1108bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1118bab661aSEmmanuel Vadot description: | 1128bab661aSEmmanuel Vadot disable End of Packet generation in full-speed mode (boolean) 1138bab661aSEmmanuel Vadot 1148bab661aSEmmanuel Vadot ganged-sensing: 1158bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1168bab661aSEmmanuel Vadot description: | 1178bab661aSEmmanuel Vadot select over-current sense type in self-powered mode 1188bab661aSEmmanuel Vadot (boolean, default is individual) 1198bab661aSEmmanuel Vadot 1208bab661aSEmmanuel Vadot individual-sensing: 1218bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1228bab661aSEmmanuel Vadot description: | 1238bab661aSEmmanuel Vadot select over-current sense type in self-powered mode 1248bab661aSEmmanuel Vadot (boolean, default is individual) 1258bab661aSEmmanuel Vadot 1268bab661aSEmmanuel Vadot ganged-port-switching: 1278bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1288bab661aSEmmanuel Vadot description: | 1298bab661aSEmmanuel Vadot select port power switching mode (boolean, default is individual) 1308bab661aSEmmanuel Vadot 1318bab661aSEmmanuel Vadot individual-port-switching: 1328bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1338bab661aSEmmanuel Vadot description: | 1348bab661aSEmmanuel Vadot select port power switching mode (boolean, default is individual) 1358bab661aSEmmanuel Vadot 1368bab661aSEmmanuel Vadot dynamic-power-switching: 1378bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1388bab661aSEmmanuel Vadot description: | 1398bab661aSEmmanuel Vadot enable auto-switching from self- to bus-powered operation if the 1408bab661aSEmmanuel Vadot local power source is removed or unavailable (boolean) 1418bab661aSEmmanuel Vadot 1428bab661aSEmmanuel Vadot oc-delay-us: 1438bab661aSEmmanuel Vadot enum: [100, 4000, 8000, 16000] 1448bab661aSEmmanuel Vadot default: 8000 1458bab661aSEmmanuel Vadot description: | 1468bab661aSEmmanuel Vadot Delay time (in microseconds) for filtering the over-current sense 1478bab661aSEmmanuel Vadot inputs. If an invalid value is given, the default is used instead. 1488bab661aSEmmanuel Vadot 1498bab661aSEmmanuel Vadot compound-device: 1508bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1518bab661aSEmmanuel Vadot description: | 1528bab661aSEmmanuel Vadot indicate the hub is part of a compound device (boolean) 1538bab661aSEmmanuel Vadot 1548bab661aSEmmanuel Vadot port-mapping-mode: 1558bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1568bab661aSEmmanuel Vadot description: | 1578bab661aSEmmanuel Vadot enable port mapping mode (boolean) 1588bab661aSEmmanuel Vadot 1598bab661aSEmmanuel Vadot led-usb-mode: 1608bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1618bab661aSEmmanuel Vadot description: | 1628bab661aSEmmanuel Vadot led usb/speed indication mode selection (boolean, default is speed mode) 1638bab661aSEmmanuel Vadot 1648bab661aSEmmanuel Vadot led-speed-mode: 1658bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1668bab661aSEmmanuel Vadot description: | 1678bab661aSEmmanuel Vadot led usb/speed indication mode selection (boolean, default is speed mode) 1688bab661aSEmmanuel Vadot 1698bab661aSEmmanuel Vadot string-support: 1708bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 1718bab661aSEmmanuel Vadot description: | 1728bab661aSEmmanuel Vadot enable string descriptor support (required for manufacturer, product 1738bab661aSEmmanuel Vadot and serial string configuration) 1748bab661aSEmmanuel Vadot 1758bab661aSEmmanuel Vadot non-removable-ports: 1768bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint8-array 1778bab661aSEmmanuel Vadot description: | 1788bab661aSEmmanuel Vadot Should specify the ports which have a non-removable device connected. 1798bab661aSEmmanuel Vadot 1808bab661aSEmmanuel Vadot sp-disabled-ports: 1818bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint8-array 1828bab661aSEmmanuel Vadot description: | 1838bab661aSEmmanuel Vadot Specifies the ports which will be self-power disabled 1848bab661aSEmmanuel Vadot 1858bab661aSEmmanuel Vadot bp-disabled-ports: 1868bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint8-array 1878bab661aSEmmanuel Vadot description: | 1888bab661aSEmmanuel Vadot Specifies the ports which will be bus-power disabled 1898bab661aSEmmanuel Vadot 1908bab661aSEmmanuel Vadot sp-max-total-current-microamp: 1918bab661aSEmmanuel Vadot maximum: 100000 1928bab661aSEmmanuel Vadot default: 1000 1938bab661aSEmmanuel Vadot description: | 1948bab661aSEmmanuel Vadot Specifies max current consumed by the hub from VBUS when 1958bab661aSEmmanuel Vadot operating in self-powered hub. It includes the hub silicon 1968bab661aSEmmanuel Vadot along with all associated circuitry including a permanently 1978bab661aSEmmanuel Vadot attached peripheral. 1988bab661aSEmmanuel Vadot 1998bab661aSEmmanuel Vadot bp-max-total-current-microamp: 2008bab661aSEmmanuel Vadot maximum: 510000 2018bab661aSEmmanuel Vadot default: 100000 2028bab661aSEmmanuel Vadot description: | 2038bab661aSEmmanuel Vadot Specifies max current consumed by the hub from VBUS when 2048bab661aSEmmanuel Vadot operating in self-powered hub. It includes the hub silicon 2058bab661aSEmmanuel Vadot along with all associated circuitry including a permanently 2068bab661aSEmmanuel Vadot attached peripheral. 2078bab661aSEmmanuel Vadot 2088bab661aSEmmanuel Vadot sp-max-removable-current-microamp: 2098bab661aSEmmanuel Vadot maximum: 100000 2108bab661aSEmmanuel Vadot default: 1000 2118bab661aSEmmanuel Vadot description: | 2128bab661aSEmmanuel Vadot Specifies max current consumed by the hub from VBUS when 2138bab661aSEmmanuel Vadot operating in self-powered hub. It includes the hub silicon 2148bab661aSEmmanuel Vadot along with all associated circuitry excluding a permanently 2158bab661aSEmmanuel Vadot attached peripheral. 2168bab661aSEmmanuel Vadot 2178bab661aSEmmanuel Vadot bp-max-removable-current-microamp: 2188bab661aSEmmanuel Vadot maximum: 510000 2198bab661aSEmmanuel Vadot default: 100000 2208bab661aSEmmanuel Vadot description: | 2218bab661aSEmmanuel Vadot Specifies max current consumed by the hub from VBUS when 2228bab661aSEmmanuel Vadot operating in self-powered hub. It includes the hub silicon 2238bab661aSEmmanuel Vadot along with all associated circuitry excluding a permanently 2248bab661aSEmmanuel Vadot attached peripheral. 2258bab661aSEmmanuel Vadot 2268bab661aSEmmanuel Vadot power-on-time-ms: 2278bab661aSEmmanuel Vadot maximum: 510 2288bab661aSEmmanuel Vadot default: 100 2298bab661aSEmmanuel Vadot description: | 2308bab661aSEmmanuel Vadot Specifies the time it takes from the time the host initiates the 2318bab661aSEmmanuel Vadot power-on sequence to a port until the port has adequate power. 2328bab661aSEmmanuel Vadot 2338bab661aSEmmanuel Vadot swap-dx-lanes: 234*f126890aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 2358bab661aSEmmanuel Vadot description: | 2368bab661aSEmmanuel Vadot Specifies the ports which will swap the differential-pair (D+/D-), 2378bab661aSEmmanuel Vadot default is not-swapped. 2388bab661aSEmmanuel Vadot 2398bab661aSEmmanuel VadotadditionalProperties: false 2408bab661aSEmmanuel Vadot 2418bab661aSEmmanuel Vadotrequired: 2428bab661aSEmmanuel Vadot - compatible 2438bab661aSEmmanuel Vadot - reg 2448bab661aSEmmanuel Vadot 2458bab661aSEmmanuel Vadotexamples: 2468bab661aSEmmanuel Vadot - | 2478bab661aSEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 2488bab661aSEmmanuel Vadot 2498bab661aSEmmanuel Vadot i2c { 2508bab661aSEmmanuel Vadot #address-cells = <1>; 2518bab661aSEmmanuel Vadot #size-cells = <0>; 2528bab661aSEmmanuel Vadot 2538bab661aSEmmanuel Vadot usb-hub@2c { 2548bab661aSEmmanuel Vadot compatible = "microchip,usb2512b"; 2558bab661aSEmmanuel Vadot reg = <0x2c>; 2568bab661aSEmmanuel Vadot reset-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; 2578bab661aSEmmanuel Vadot }; 2588bab661aSEmmanuel Vadot 2598bab661aSEmmanuel Vadot usb-hub@2d { 2608bab661aSEmmanuel Vadot compatible = "microchip,usb2514b"; 2618bab661aSEmmanuel Vadot reg = <0x2d>; 2628bab661aSEmmanuel Vadot vendor-id = /bits/ 16 <0x0000>; 2638bab661aSEmmanuel Vadot product-id = /bits/ 16 <0x0000>; 2648bab661aSEmmanuel Vadot string-support; 2658bab661aSEmmanuel Vadot manufacturer = "Foo"; 2668bab661aSEmmanuel Vadot product = "Foo-Bar"; 2678bab661aSEmmanuel Vadot serial = "1234567890A"; 2688bab661aSEmmanuel Vadot /* correct misplaced usb connectors on port 1,2 */ 2698bab661aSEmmanuel Vadot swap-dx-lanes = <1 2>; 2708bab661aSEmmanuel Vadot }; 2718bab661aSEmmanuel Vadot }; 272