|
@@ -85,6 +85,8 @@ static struct sunxi_usb_phy {
|
|
#endif
|
|
#endif
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+static int initial_usb_scan_delay = CONFIG_INITIAL_USB_SCAN_DELAY;
|
|
|
|
+
|
|
static int get_vbus_gpio(int index)
|
|
static int get_vbus_gpio(int index)
|
|
{
|
|
{
|
|
switch (index) {
|
|
switch (index) {
|
|
@@ -269,6 +271,11 @@ void sunxi_usb_phy_power_on(int index)
|
|
{
|
|
{
|
|
struct sunxi_usb_phy *phy = &sunxi_usb_phy[index];
|
|
struct sunxi_usb_phy *phy = &sunxi_usb_phy[index];
|
|
|
|
|
|
|
|
+ if (initial_usb_scan_delay) {
|
|
|
|
+ mdelay(initial_usb_scan_delay);
|
|
|
|
+ initial_usb_scan_delay = 0;
|
|
|
|
+ }
|
|
|
|
+
|
|
phy->power_on_count++;
|
|
phy->power_on_count++;
|
|
if (phy->power_on_count != 1)
|
|
if (phy->power_on_count != 1)
|
|
return;
|
|
return;
|