summaryrefslogtreecommitdiff
path: root/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0021-twl4030-usb-fix-minor-reporting-goofage.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0021-twl4030-usb-fix-minor-reporting-goofage.patch')
-rw-r--r--meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0021-twl4030-usb-fix-minor-reporting-goofage.patch70
1 files changed, 0 insertions, 70 deletions
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0021-twl4030-usb-fix-minor-reporting-goofage.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0021-twl4030-usb-fix-minor-reporting-goofage.patch
deleted file mode 100644
index d9733f92b..000000000
--- a/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0021-twl4030-usb-fix-minor-reporting-goofage.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From c4804e5a447275553c55bbb0ab1748954cb8fbfc Mon Sep 17 00:00:00 2001
-From: David Brownell <dbrownell-Rn4VEauK+AKRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
-Date: Tue, 31 Mar 2009 12:26:10 -0700
-Subject: [PATCH] twl4030-usb: fix minor reporting goofage
-
-Fix a reporting glitch in the twl4030 USB transceiver code.
-It wasn't properly distinguishing the two types of active
-USB link: ID grounded, vs not. In the current code that
-distinction doesn't much matter; in the future this bugfix
-should help support better USB controller communications.
-
-Provide a comment sorting out some of the cryptic bits of
-the manual: different sections use different names for
-key signals, and the register definitions don't help much
-without the explanations and diagrams.
-
-Signed-off-by: David Brownell <dbrownell-Rn4VEauK+AKRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
----
- drivers/usb/otg/twl4030-usb.c | 26 +++++++++++++++++++-------
- 1 files changed, 19 insertions(+), 7 deletions(-)
-
-diff --git a/drivers/usb/otg/twl4030-usb.c b/drivers/usb/otg/twl4030-usb.c
-index d9478d0..f740390 100644
---- a/drivers/usb/otg/twl4030-usb.c
-+++ b/drivers/usb/otg/twl4030-usb.c
-@@ -217,6 +217,7 @@
-
- /* In module TWL4030_MODULE_PM_MASTER */
- #define PROTECT_KEY 0x0E
-+#define STS_HW_CONDITIONS 0x0F
-
- /* In module TWL4030_MODULE_PM_RECEIVER */
- #define VUSB_DEDICATED1 0x7D
-@@ -351,15 +352,26 @@ static enum linkstat twl4030_usb_linkstat(struct twl4030_usb *twl)
- int status;
- int linkstat = USB_LINK_UNKNOWN;
-
-- /* STS_HW_CONDITIONS */
-- status = twl4030_readb(twl, TWL4030_MODULE_PM_MASTER, 0x0f);
-+ /*
-+ * For ID/VBUS sensing, see manual section 15.4.8 ...
-+ * except when using only battery backup power, two
-+ * comparators produce VBUS_PRES and ID_PRES signals,
-+ * which don't match docs elsewhere. But ... BIT(7)
-+ * and BIT(2) of STS_HW_CONDITIONS, respectively, do
-+ * seem to match up. If either is true the USB_PRES
-+ * signal is active, the OTG module is activated, and
-+ * its interrupt may be raised (may wake the system).
-+ */
-+ status = twl4030_readb(twl, TWL4030_MODULE_PM_MASTER,
-+ STS_HW_CONDITIONS);
- if (status < 0)
- dev_err(twl->dev, "USB link status err %d\n", status);
-- else if (status & BIT(7))
-- linkstat = USB_LINK_VBUS;
-- else if (status & BIT(2))
-- linkstat = USB_LINK_ID;
-- else
-+ else if (status & (BIT(7) | BIT(2))) {
-+ if (status & BIT(2))
-+ linkstat = USB_LINK_ID;
-+ else
-+ linkstat = USB_LINK_VBUS;
-+ } else
- linkstat = USB_LINK_NONE;
-
- dev_dbg(twl->dev, "HW_CONDITIONS 0x%02x/%d; link %d\n",
---
-1.6.0.4
-