diff options
Diffstat (limited to 'target/linux/brcm63xx/patches-3.8/441-MIPS-BCM63XX-enable-USB-for-BCM6362.patch')
-rw-r--r-- | target/linux/brcm63xx/patches-3.8/441-MIPS-BCM63XX-enable-USB-for-BCM6362.patch | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-3.8/441-MIPS-BCM63XX-enable-USB-for-BCM6362.patch b/target/linux/brcm63xx/patches-3.8/441-MIPS-BCM63XX-enable-USB-for-BCM6362.patch new file mode 100644 index 0000000000..86e2a1aa6a --- /dev/null +++ b/target/linux/brcm63xx/patches-3.8/441-MIPS-BCM63XX-enable-USB-for-BCM6362.patch @@ -0,0 +1,71 @@ +From fb9e98936590637c26b66d60137a7b44b329a254 Mon Sep 17 00:00:00 2001 +From: Jonas Gorski <jonas.gorski@gmail.com> +Date: Sun, 12 Feb 2012 14:40:56 +0100 +Subject: [PATCH 59/84] MIPS: BCM63XX: enable USB for BCM6362 + +BCM6362 has the same USB controller as BCM6368. + +Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com> +--- + arch/mips/bcm63xx/Kconfig | 2 ++ + arch/mips/bcm63xx/clk.c | 4 ++++ + arch/mips/bcm63xx/dev-usb-ehci.c | 3 ++- + arch/mips/bcm63xx/dev-usb-ohci.c | 2 +- + drivers/usb/host/ehci-bcm63xx.c | 2 +- + drivers/usb/host/ohci-bcm63xx.c | 2 +- + 6 files changed, 11 insertions(+), 4 deletions(-) + +--- a/arch/mips/bcm63xx/Kconfig ++++ b/arch/mips/bcm63xx/Kconfig +@@ -40,6 +40,8 @@ config BCM63XX_CPU_6358 + config BCM63XX_CPU_6362 + bool "support 6362 CPU" + select HW_HAS_PCI ++ select BCM63XX_OHCI ++ select BCM63XX_EHCI + + config BCM63XX_CPU_6368 + bool "support 6368 CPU" +--- a/arch/mips/bcm63xx/clk.c ++++ b/arch/mips/bcm63xx/clk.c +@@ -167,6 +167,8 @@ static void usbh_set(struct clk *clk, in + bcm_hwclock_set(CKCTL_6328_USBH_EN, enable); + else if (BCMCPU_IS_6348()) + bcm_hwclock_set(CKCTL_6348_USBH_EN, enable); ++ else if (BCMCPU_IS_6362()) ++ bcm_hwclock_set(CKCTL_6362_USBH_EN, enable); + else if (BCMCPU_IS_6368()) + bcm_hwclock_set(CKCTL_6368_USBH_EN, enable); + else +--- a/arch/mips/bcm63xx/dev-usb-ehci.c ++++ b/arch/mips/bcm63xx/dev-usb-ehci.c +@@ -81,7 +81,8 @@ static struct platform_device bcm63xx_eh + + int __init bcm63xx_ehci_register(void) + { +- if (!BCMCPU_IS_6328() && !BCMCPU_IS_6358() && !BCMCPU_IS_6368()) ++ if (!BCMCPU_IS_6328() && !BCMCPU_IS_6358() && !BCMCPU_IS_6362() && ++ !BCMCPU_IS_6368()) + return 0; + + ehci_resources[0].start = bcm63xx_regset_address(RSET_EHCI0); +--- a/arch/mips/bcm63xx/usb-common.c ++++ b/arch/mips/bcm63xx/usb-common.c +@@ -100,7 +100,7 @@ void bcm63xx_usb_priv_ohci_cfg_set(void) + bcm_rset_writel(RSET_USBH_PRIV, 0x1c0020, + USBH_PRIV_TEST_6358_REG); + +- } else if (BCMCPU_IS_6328() || BCMCPU_IS_6368()) { ++ } else if (BCMCPU_IS_6328() || BCMCPU_IS_6362() || BCMCPU_IS_6368()) { + reg = bcm_rset_readl(RSET_USBH_PRIV, USBH_PRIV_SWAP_6368_REG); + reg &= ~USBH_PRIV_SWAP_OHCI_ENDN_MASK; + reg |= USBH_PRIV_SWAP_OHCI_DATA_MASK; +@@ -135,7 +135,7 @@ void bcm63xx_usb_priv_ehci_cfg_set(void) + bcm_rset_writel(RSET_USBH_PRIV, 0x1c0020, + USBH_PRIV_TEST_6358_REG); + +- } else if (BCMCPU_IS_6328() || BCMCPU_IS_6368()) { ++ } else if (BCMCPU_IS_6328() || BCMCPU_IS_6362() || BCMCPU_IS_6368()) { + reg = bcm_rset_readl(RSET_USBH_PRIV, USBH_PRIV_SWAP_6368_REG); + reg &= ~USBH_PRIV_SWAP_EHCI_ENDN_MASK; + reg |= USBH_PRIV_SWAP_EHCI_DATA_MASK; |