|
@@ -566,8 +566,13 @@ int udc_init(void)
|
|
|
writel(~0x0, &udc_regs_p->dev_int_mask);
|
|
|
writel(~0x0, &udc_regs_p->endp_int_mask);
|
|
|
|
|
|
+#ifndef CONFIG_USBD_HS
|
|
|
writel(DEV_CONF_FS_SPEED | DEV_CONF_REMWAKEUP | DEV_CONF_SELFPOW |
|
|
|
DEV_CONF_PHYINT_16, &udc_regs_p->dev_conf);
|
|
|
+#else
|
|
|
+ writel(DEV_CONF_HS_SPEED | DEV_CONF_REMWAKEUP | DEV_CONF_SELFPOW |
|
|
|
+ DEV_CONF_PHYINT_16, &udc_regs_p->dev_conf);
|
|
|
+#endif
|
|
|
|
|
|
writel(DEV_CNTL_SOFTDISCONNECT, &udc_regs_p->dev_cntl);
|
|
|
|
|
@@ -577,6 +582,11 @@ int udc_init(void)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
+int is_usbd_high_speed(void)
|
|
|
+{
|
|
|
+ return (readl(&udc_regs_p->dev_stat) & DEV_STAT_ENUM) ? 0 : 1;
|
|
|
+}
|
|
|
+
|
|
|
/*
|
|
|
* udc_setup_ep - setup endpoint
|
|
|
* Associate a physical endpoint with endpoint_instance
|