developer | 41ac1d1 | 2020-05-02 11:35:21 +0200 | [diff] [blame] | 1 | MediaTek xHCI |
| 2 | |
| 3 | The device node for USB3 host controller on MediaTek SoCs. |
| 4 | |
| 5 | Required properties: |
developer | d2a3829 | 2023-02-17 17:04:12 +0800 | [diff] [blame] | 6 | - compatible : should be one of |
| 7 | "mediatek,mtk-xhci" |
| 8 | "mediatek,mt8195-xhci" |
developer | 41ac1d1 | 2020-05-02 11:35:21 +0200 | [diff] [blame] | 9 | - reg : specifies physical base address and size of the registers |
| 10 | - reg-names: should be "mac" for xHCI MAC and "ippc" for IP port control |
| 11 | - power-domains : a phandle to USB power domain node to control USB's |
| 12 | MTCMOS |
| 13 | - vusb33-supply : regulator of USB avdd3.3v |
| 14 | |
| 15 | - clocks : a list of phandle + clock-specifier pairs, one for each |
| 16 | entry in clock-names |
| 17 | - clock-names : must contain |
| 18 | "sys_ck": controller clock used by normal mode, |
| 19 | the following ones are optional: |
| 20 | "ref_ck": reference clock used by low power mode etc, |
| 21 | "mcu_ck": mcu_bus clock for register access, |
| 22 | "dma_ck": dma_bus clock for data transfer by DMA, |
| 23 | "xhci_ck": controller clock |
| 24 | |
| 25 | - phys : list of all the USB PHYs on this HCD |
| 26 | - phy-names: name specifier for the USB PHY |
| 27 | |
| 28 | Optional properties: |
| 29 | - vbus-supply : reference to the VBUS regulator; |
developer | 5a5c948 | 2020-12-23 09:52:21 +0800 | [diff] [blame] | 30 | - mediatek,u3p-dis-msk : mask to disable u3ports, bit0 for u3port0, |
| 31 | bit1 for u3port1, ... etc; |
| 32 | - mediatek,u2p-dis-msk : mask to disable u2ports, bit0 for u2port0, |
| 33 | bit1 for u2port1, ... etc; |
developer | 41ac1d1 | 2020-05-02 11:35:21 +0200 | [diff] [blame] | 34 | |
| 35 | Example: |
| 36 | xhci: usb@1a0c0000 { |
| 37 | compatible = "mediatek,mt7629-xhci", "mediatek,mtk-xhci"; |
| 38 | reg = <0x1a0c0000 0x1000>, <0x1a0c3e00 0x0100>; |
| 39 | reg-names = "mac", "ippc"; |
| 40 | power-domains = <&scpsys MT7629_POWER_DOMAIN_HIF1>; |
| 41 | clocks = <&ssusbsys CLK_SSUSB_SYS_EN>, <&ssusbsys CLK_SSUSB_REF_EN>, |
| 42 | <&ssusbsys CLK_SSUSB_MCU_EN>, <&ssusbsys CLK_SSUSB_DMA_EN>; |
| 43 | clock-names = "sys_ck", "ref_ck", "mcu_ck", "dma_ck"; |
| 44 | phys = <&u2port0 PHY_TYPE_USB2>, <&u3port0 PHY_TYPE_USB3>; |
| 45 | status = "disabled"; |
| 46 | }; |