arm64: dts: mba93xxla: Add USB support
authorAlexander Stein <alexander.stein@ew.tq-group.com>
Tue, 23 Apr 2024 09:33:40 +0000 (11:33 +0200)
committerShawn Guo <shawnguo@kernel.org>
Mon, 3 Jun 2024 01:03:40 +0000 (09:03 +0800)
This adds support for both USB host and USB Type-C ports. This includes
the on-board USB hub.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm64/boot/dts/freescale/imx93-tqma9352-mba93xxla.dts

index eb3f4cfb69863e9221ec0a0a8e245a6321cfac5d..da8f19a646a98f0de7ef4e0161ba7dadaf4a3dd4 100644 (file)
                reg = <0x1c>;
        };
 
+       ptn5110: usb-typec@50 {
+               compatible = "nxp,ptn5110", "tcpci";
+               reg = <0x50>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_typec>;
+               interrupt-parent = <&gpio1>;
+               interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
+
+               connector {
+                       compatible = "usb-c-connector";
+                       label = "X17";
+                       power-role = "dual";
+                       data-role = "dual";
+                       try-power-role = "sink";
+                       typec-power-opmode = "default";
+                       pd-disable;
+                       self-powered;
+
+                       port {
+                               typec_con_hs: endpoint {
+                                       remote-endpoint = <&typec_hs>;
+                               };
+                       };
+               };
+       };
+
        eeprom2: eeprom@54 {
                compatible = "nxp,se97b", "atmel,24c02";
                reg = <0x54>;
        pinctrl-0 = <&pinctrl_tpm5>;
 };
 
+&usbotg1 {
+       dr_mode = "otg";
+       hnp-disable;
+       srp-disable;
+       adp-disable;
+       usb-role-switch;
+       disable-over-current;
+       samsung,picophy-pre-emp-curr-control = <3>;
+       samsung,picophy-dc-vol-level-adjust = <7>;
+       status = "okay";
+
+       port {
+               typec_hs: endpoint {
+                       remote-endpoint = <&typec_con_hs>;
+               };
+       };
+};
+
+&usbotg2 {
+       dr_mode = "host";
+       #address-cells = <1>;
+       #size-cells = <0>;
+       disable-over-current;
+       samsung,picophy-pre-emp-curr-control = <3>;
+       samsung,picophy-dc-vol-level-adjust = <7>;
+       status = "okay";
+
+       hub_2_0: hub@1 {
+               compatible = "usb424,2517";
+               reg = <1>;
+               reset-gpios = <&expander1 2 GPIO_ACTIVE_LOW>;
+               vdd-supply = <&reg_3v3>;
+       };
+};
+
 &usdhc2 {
        pinctrl-names = "default", "state_100mhz", "state_200mhz";
        pinctrl-0 = <&pinctrl_usdhc2_hs>, <&pinctrl_usdhc2_gpio>;