diff options
-rw-r--r-- | drivers/usb/chipidea/ci_hdrc_imx.c | 9 | ||||
-rw-r--r-- | include/linux/usb/chipidea.h | 1 |
2 files changed, 7 insertions, 3 deletions
diff --git a/drivers/usb/chipidea/ci_hdrc_imx.c b/drivers/usb/chipidea/ci_hdrc_imx.c index 62dc7990502d..708c486b49a2 100644 --- a/drivers/usb/chipidea/ci_hdrc_imx.c +++ b/drivers/usb/chipidea/ci_hdrc_imx.c @@ -50,7 +50,8 @@ static const struct ci_hdrc_imx_platform_flag imx6q_usb_data = { CI_HDRC_IMX_EHCI_QUIRK | CI_HDRC_DISABLE_STREAMING | CI_HDRC_OVERRIDE_AHB_BURST | - CI_HDRC_OVERRIDE_BURST_LENGTH, + CI_HDRC_OVERRIDE_BURST_LENGTH | + CI_HDRC_IMX_VBUS_EARLY_ON, .ahbburst_config = 0, /*bit0 - bit2 at $BASE + 0x90 */ .burst_length = 0x1010, /*bit0 - bit15 at $BASE + 0x160 */ }; @@ -60,7 +61,8 @@ static const struct ci_hdrc_imx_platform_flag imx6sl_usb_data = { CI_HDRC_IMX_EHCI_QUIRK | CI_HDRC_DISABLE_HOST_STREAMING | CI_HDRC_OVERRIDE_AHB_BURST | - CI_HDRC_OVERRIDE_BURST_LENGTH, + CI_HDRC_OVERRIDE_BURST_LENGTH | + CI_HDRC_IMX_VBUS_EARLY_ON, .ahbburst_config = 0, .burst_length = 0x1010, }; @@ -70,7 +72,8 @@ static const struct ci_hdrc_imx_platform_flag imx6sx_usb_data = { CI_HDRC_IMX_EHCI_QUIRK | CI_HDRC_DISABLE_HOST_STREAMING | CI_HDRC_OVERRIDE_AHB_BURST | - CI_HDRC_OVERRIDE_BURST_LENGTH, + CI_HDRC_OVERRIDE_BURST_LENGTH | + CI_HDRC_IMX_VBUS_EARLY_ON, .ahbburst_config = 0, .burst_length = 0x1010, }; diff --git a/include/linux/usb/chipidea.h b/include/linux/usb/chipidea.h index 6c1acb4b69f6..97f0b5c61bac 100644 --- a/include/linux/usb/chipidea.h +++ b/include/linux/usb/chipidea.h @@ -35,6 +35,7 @@ struct ci_hdrc_platform_data { CI_HDRC_DISABLE_HOST_STREAMING) #define CI_HDRC_OVERRIDE_AHB_BURST BIT(11) #define CI_HDRC_OVERRIDE_BURST_LENGTH BIT(12) +#define CI_HDRC_IMX_VBUS_EARLY_ON BIT(13) enum usb_dr_mode dr_mode; #define CI_HDRC_CONTROLLER_RESET_EVENT 0 #define CI_HDRC_CONTROLLER_STOPPED_EVENT 1 |