diff options
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.patch | 70 |
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 - |