usb: xhci: tegra: disable sw WAR for fixes in T124 hw
Ajay Gupta [Mon, 24 Jun 2013 22:14:30 +0000 (15:14 -0700)]
Bug 1301052

Change-Id: I5a6cb9fafb1177fa2e1c020ba2fc35ba81896565
Signed-off-by: Ajay Gupta <ajayg@nvidia.com>
Reviewed-on: http://git-master/r/242047
Reviewed-by: Ashutosh Jha <ajha@nvidia.com>

drivers/usb/host/xhci-tegra.c

index f5e0a21..e9184ad 100644 (file)
@@ -844,6 +844,10 @@ static void tegra_xhci_rx_idle_mode_override(struct tegra_xhci_hcd *tegra,
        struct tegra_xusb_padctl_regs *padregs = tegra->padregs;
        u32 reg;
 
+       /* Issue is only applicable for T114 */
+       if (XUSB_DEVICE_ID_T114 != tegra->device_id)
+               return;
+
        if (tegra->bdata->portmap & TEGRA_XUSB_SS_P0) {
                reg = readl(tegra->padctl_base +
                        padregs->iophy_misc_pad_p0_ctl3_0);
@@ -1593,6 +1597,10 @@ static void tegra_xhci_release_port_ownership(struct tegra_xhci_hcd *tegra,
        struct tegra_xusb_padctl_regs *padregs = tegra->padregs;
        u32 reg;
 
+       /* Issue is only applicable for T114 */
+       if (XUSB_DEVICE_ID_T114 != tegra->device_id)
+               return;
+
        reg = readl(tegra->padctl_base + padregs->usb2_pad_mux_0);
        reg &= ~(USB2_OTG_PAD_PORT_MASK(0) | USB2_OTG_PAD_PORT_MASK(1) |
                        USB2_OTG_PAD_PORT_MASK(2));
@@ -1981,7 +1989,9 @@ tegra_xhci_host_partition_elpg_exit(struct tegra_xhci_hcd *tegra)
        if (tegra->lp0_exit) {
                u32 reg, oc_bits = 0;
 
-               tegra_xhci_war_for_tctrl_rctrl(tegra);
+               /* Issue is only applicable for T114 */
+               if (XUSB_DEVICE_ID_T114 == tegra->device_id)
+                       tegra_xhci_war_for_tctrl_rctrl(tegra);
                /* check if over current seen. Clear if present */
                if (tegra->bdata->portmap & TEGRA_XUSB_USB2_P0)
                        oc_bits |= OC_DET_OC_DETECTED_VBUS_PAD0;