Fabio,
I did not have a board_usb_phy_mode() function in my board file. I added one like how you implemented it and tried again. I am getting the same results as before with no response from the host PC.
Here is my board file content related to USB:
#ifdef CONFIG_USB_EHCI_MX5
static void setup_usb(void)
{
imx_iomux_v3_setup_pad(MX53_PAD_GPIO_0__GPIO1_0);
}
int board_ehci_hcd_init(int port)
{
/* Enable USB_H1_VBUS power with GPIO1_0 */
gpio_direction_output(IMX_GPIO_NR(1, 0), 1);
return 0;
}
#endif
int board_usb_phy_mode(int port)
{
if (port == 1)
return USB_INIT_HOST;
else
return USB_INIT_DEVICE;
}
Then later on in board_init(), I have:
#ifdef CONFIG_USB_EHCI_MX5
setup_usb();
#endif
Additionally here are my #defines for the USB host functionality:
/* USB Host Configs */
#define CONFIG_CMD_USB
#define CONFIG_USB_EHCI
#define CONFIG_USB_EHCI_MX5
#define CONFIG_USB_STORAGE
#define CONFIG_USB_HOST_ETHER
#define CONFIG_USB_ETHER_ASIX
#define CONFIG_USB_ETHER_MCS7830
#define CONFIG_USB_ETHER_SMSC95XX
#define CONFIG_MXC_USB_PORT 1
#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
#define CONFIG_MXC_USB_FLAGS 0
Anything else that I can try out?
Regards,
Matthew Starr