Verdin Am62 Configuring USB0 as host mod

Hi all,

we are trying to configure usb0 to work as host so that when we connect a device like usb it will read the data from the usb.

our hardware connections are made in a way that Vbus, cc1 and CC2 are connected to the +5v. Usb id is connected to 1v8.

Rest of the connections are USB_1_D_CON_P and USB_1_D_CON_N are connected to the USB-c connector.

below are the device tree configurations:

/* Verdin USB_1_ID */
	pinctrl_usb0_id: main-gpio1-19-pins-default {
		pinctrl-single,pins = <
			AM62X_IOPAD(0x01c4, PIN_INPUT_PULLUP, 7) /* (B14) SPI0_D1.GPIO1_19 */ /* SODIMM 161 */
		>;
	};

/* Verdin USB_1 */
&usbss0 {
	ti,vbus-divider;
	status = "okay";
	
	connector {
	compatible = "gpio-usb-b-connector", "usb-b-connector", "usb-c-connector";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_usb0_id>;
	id-gpios = <&main_gpio1 19 GPIO_ACTIVE_HIGH>;
	label = "USB-C";

		port {
			usb_dr_connector: endpoint {
				remote-endpoint = <&usb0_ep>;
			};
		};
	};
};

&usb0 {
dr_mode = "host";
	usb-role-switch;
	status="okay";
	adb-disable;

	port {
		usb0_ep: endpoint {
			remote-endpoint = <&usb_dr_connector>;
		};
	};
};

with the above configuration when we build we always get,

dwc3-usb:connector: deferred probe pending error

kindly check this and let me know if i am doing something wrong

Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!

Did you like my answer?

:+1: :-1:


The error message “deferred probe pending error” typically indicates that a driver is waiting for a resource or dependency that is not yet available. In the context of configuring USB0 as a host on the Verdin AM62, there are a few things you can check and try to resolve this issue:

  1. Check Dependencies: Ensure that all dependencies for the USB subsystem are correctly configured and available. This includes checking that the power supply (Vbus) and GPIO configurations are correct and that any required kernel modules are loaded.

  2. Verify Pin Configuration: Double-check the pin configuration for the USB ID pin and ensure it matches your hardware setup. The pinctrl settings should correctly reflect the hardware connections.

  3. USB Role Switch: The usb-role-switch property is used for dynamic role switching between host and device modes. Ensure that this is supported and correctly configured in your kernel and device tree.

  4. Kernel Configuration: Make sure that the kernel is configured to support USB host mode and that all necessary drivers are enabled. This includes the DWC3 driver and any other relevant USB host drivers.

  5. Check for Missing or Incorrect Properties: Review the device tree bindings for the USB controller and connector to ensure all required properties are present and correctly set.

  6. Debugging: Enable additional debugging in the kernel for USB and device tree to get more detailed logs that might help identify the missing dependency or misconfiguration.

If these steps do not resolve the issue, you may need to consult the specific documentation for the Verdin AM62 or reach out to Toradex support for further assistance.

Please, also check if these links can help you solve your problem:

Ethernet Address Assign Issue.

Any update on this usb issue related to the host configuration in verdin am62 in usb0

any update on this?

Hi @naveenkumar.muthusam ,

Please share the schematic and also share the pin number of the USB pins that you are trying to configure.