bcm63xx: make smp kernels boot on older SoCs
[openwrt/svn-archive/archive.git] / target / linux / brcm63xx / patches-3.9 / 117-MIPS-BCM63XX-introduce-BCM63XX_EHCI-configuration-sy.patch
1 From 00da1683364e58c6430a4577123d01037f8faddc Mon Sep 17 00:00:00 2001
2 From: Florian Fainelli <florian@openwrt.org>
3 Date: Mon, 28 Jan 2013 20:06:26 +0100
4 Subject: [PATCH 08/11] MIPS: BCM63XX: introduce BCM63XX_EHCI configuration
5 symbol
6
7 This configuration symbol can be used by CPUs supporting the on-chip
8 EHCI controller, and ensures that all relevant EHCI-related
9 configuration options are selected. So far BCM6328, BCM6358 and BCM6368
10 have an EHCI controller and do select this symbol. Update
11 drivers/usb/host/Kconfig with BCM63XX to update direct unmet
12 dependencies.
13
14 Signed-off-by: Florian Fainelli <florian@openwrt.org>
15 ---
16 arch/mips/bcm63xx/Kconfig | 9 +++++++++
17 drivers/usb/host/Kconfig | 5 +++--
18 2 files changed, 12 insertions(+), 2 deletions(-)
19
20 --- a/arch/mips/bcm63xx/Kconfig
21 +++ b/arch/mips/bcm63xx/Kconfig
22 @@ -12,11 +12,18 @@ config BCM63XX_OHCI
23 select USB_OHCI_BIG_ENDIAN_DESC if USB_OHCI_HCD
24 select USB_OHCI_BIG_ENDIAN_MMIO if USB_OHCI_HCD
25
26 +config BCM63XX_EHCI
27 + bool
28 + select USB_ARCH_HAS_EHCI
29 + select USB_EHCI_BIG_ENDIAN_DESC if USB_EHCI_HCD
30 + select USB_EHCI_BIG_ENDIAN_MMIO if USB_EHCI_HCD
31 +
32 config BCM63XX_CPU_6328
33 bool "support 6328 CPU"
34 select SYS_HAS_CPU_BMIPS4350
35 select HW_HAS_PCI
36 select BCM63XX_OHCI
37 + select BCM63XX_EHCI
38
39 config BCM63XX_CPU_6338
40 bool "support 6338 CPU"
41 @@ -38,18 +45,21 @@ config BCM63XX_CPU_6358
42 select SYS_HAS_CPU_BMIPS4350
43 select HW_HAS_PCI
44 select BCM63XX_OHCI
45 + select BCM63XX_EHCI
46
47 config BCM63XX_CPU_6362
48 bool "support 6362 CPU"
49 select SYS_HAS_CPU_BMIPS4350
50 select HW_HAS_PCI
51 select BCM63XX_OHCI
52 + select BCM63XX_EHCI
53
54 config BCM63XX_CPU_6368
55 bool "support 6368 CPU"
56 select SYS_HAS_CPU_BMIPS4350
57 select HW_HAS_PCI
58 select BCM63XX_OHCI
59 + select BCM63XX_EHCI
60 endmenu
61
62 source "arch/mips/bcm63xx/boards/Kconfig"
63 --- a/drivers/usb/host/Kconfig
64 +++ b/drivers/usb/host/Kconfig
65 @@ -115,14 +115,15 @@ config USB_EHCI_BIG_ENDIAN_MMIO
66 depends on USB_EHCI_HCD && (PPC_CELLEB || PPC_PS3 || 440EPX || \
67 ARCH_IXP4XX || XPS_USB_HCD_XILINX || \
68 PPC_MPC512x || CPU_CAVIUM_OCTEON || \
69 - PMC_MSP || SPARC_LEON || MIPS_SEAD3)
70 + PMC_MSP || SPARC_LEON || MIPS_SEAD3 || \
71 + BCM63XX)
72 default y
73
74 config USB_EHCI_BIG_ENDIAN_DESC
75 bool
76 depends on USB_EHCI_HCD && (440EPX || ARCH_IXP4XX || XPS_USB_HCD_XILINX || \
77 PPC_MPC512x || PMC_MSP || SPARC_LEON || \
78 - MIPS_SEAD3)
79 + MIPS_SEAD3 || BCM63XX)
80 default y
81
82 config XPS_USB_HCD_XILINX