summaryrefslogtreecommitdiff
path: root/recipes-kernel/linux/linux-toradex-upstream-6.6/0003-drivers-chipidea-disable-runtime-pm-for-imx6ul.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-kernel/linux/linux-toradex-upstream-6.6/0003-drivers-chipidea-disable-runtime-pm-for-imx6ul.patch')
-rw-r--r--recipes-kernel/linux/linux-toradex-upstream-6.6/0003-drivers-chipidea-disable-runtime-pm-for-imx6ul.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-toradex-upstream-6.6/0003-drivers-chipidea-disable-runtime-pm-for-imx6ul.patch b/recipes-kernel/linux/linux-toradex-upstream-6.6/0003-drivers-chipidea-disable-runtime-pm-for-imx6ul.patch
new file mode 100644
index 0000000..4f5e2c0
--- /dev/null
+++ b/recipes-kernel/linux/linux-toradex-upstream-6.6/0003-drivers-chipidea-disable-runtime-pm-for-imx6ul.patch
@@ -0,0 +1,39 @@
+From 070e2b7b7c3ef6e640e13aeb120c958e09accbb1 Mon Sep 17 00:00:00 2001
+From: Philippe Schenker <philippe.schenker@toradex.com>
+Date: Wed, 2 Nov 2022 14:25:56 +0100
+Subject: [PATCH 3/4] drivers: chipidea: disable runtime-pm for imx6ul
+
+Colibri iMX6ULL does not properly work with runtime-pm enabled. We see
+two issues with that enabled:
+
+1. Runtime PM disconnects the line as it thinks there is no VBUS -
+ because this signal is not hooked up in hardware. The driver gets a
+ wakeup signal from the attached hub after about 2s which leads to a
+ reset loop.
+2. In Dual-Role switching mode usb-device is not detected when plugged
+ in. The reason was never fully understood.
+
+Upstream-Status: Inappropriate [Configuration for colibri-imx6ull]
+
+Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
+---
+ drivers/usb/chipidea/ci_hdrc_imx.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/drivers/usb/chipidea/ci_hdrc_imx.c b/drivers/usb/chipidea/ci_hdrc_imx.c
+index e28bb2f2612d..4da4aa4ee70d 100644
+--- a/drivers/usb/chipidea/ci_hdrc_imx.c
++++ b/drivers/usb/chipidea/ci_hdrc_imx.c
+@@ -57,8 +57,7 @@ static const struct ci_hdrc_imx_platform_flag imx6sx_usb_data = {
+ };
+
+ static const struct ci_hdrc_imx_platform_flag imx6ul_usb_data = {
+- .flags = CI_HDRC_SUPPORTS_RUNTIME_PM |
+- CI_HDRC_TURN_VBUS_EARLY_ON |
++ .flags = CI_HDRC_TURN_VBUS_EARLY_ON |
+ CI_HDRC_DISABLE_DEVICE_STREAMING,
+ };
+
+--
+2.35.3
+