diff options
author | Arnd Bergmann <arnd@arndb.de> | 2013-06-04 13:42:22 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-06-06 14:16:44 -0400 |
commit | d9ea21a779278da06d0cbe989594bf542ed213d7 (patch) | |
tree | 5a9e6da43b348c7819b34aa2ce4d79486d917752 | |
parent | 358e91175cac9398b152ad9adc2391ebce34011c (diff) |
usb: host: make USB_ARCH_HAS_?HCI obsolete
The three options USB_ARCH_HAS_{EHCI,OHCI,XHCI} are all well beyond
their recommended shelf life. They have caused numerous build failures
over the years because they are never completely correct, and with
the move to splitting out the platform specific back-ends out of the
driver, there is no real need for them any more. Also, the use of making
USB_ARCH_HAS_HCD depend on it is questionable since one can always enable
dummy_hc these days.
This patch enables them unconditionally for all platforms and
architectures, which means it is now possible to build host controller
drivers for machines that are known not to come with this hardware,
but that is just how we treat most other drivers.
In order to minimise the impact on existing architecture code and
defconfig files, all the Kconfig are left present for now. All platforms
that currently do 'select USB_ARCH_HAS_*' should subsequently be changed
not to select that. All drivers depending on USB_ARCH_HAS_HCD should
be changed to depend on USB_SUPPORT instead.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Cc: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/usb/Kconfig | 69 | ||||
-rw-r--r-- | drivers/usb/host/Kconfig | 3 |
2 files changed, 7 insertions, 65 deletions
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig index 92e1dc94ecc8..73f62caa8609 100644 --- a/drivers/usb/Kconfig +++ b/drivers/usb/Kconfig | |||
@@ -2,59 +2,15 @@ | |||
2 | # USB device configuration | 2 | # USB device configuration |
3 | # | 3 | # |
4 | 4 | ||
5 | # many non-PCI SOC chips embed OHCI | 5 | # These are unused now, remove them once they are no longer selected |
6 | config USB_ARCH_HAS_OHCI | 6 | config USB_ARCH_HAS_OHCI |
7 | boolean | 7 | bool |
8 | # ARM: | 8 | |
9 | default y if SA1111 | ||
10 | default y if ARCH_OMAP | ||
11 | default y if ARCH_S3C24XX | ||
12 | default y if PXA27x | ||
13 | default y if PXA3xx | ||
14 | default y if ARCH_EP93XX | ||
15 | default y if ARCH_AT91 | ||
16 | default y if MFD_TC6393XB | ||
17 | default y if ARCH_W90X900 | ||
18 | default y if ARCH_DAVINCI_DA8XX | ||
19 | default y if ARCH_CNS3XXX | ||
20 | default y if PLAT_SPEAR | ||
21 | default y if ARCH_EXYNOS | ||
22 | # PPC: | ||
23 | default y if STB03xxx | ||
24 | default y if PPC_MPC52xx | ||
25 | # MIPS: | ||
26 | default y if MIPS_ALCHEMY | ||
27 | default y if MACH_JZ4740 | ||
28 | # more: | ||
29 | default PCI | ||
30 | |||
31 | # some non-PCI hcds implement EHCI | ||
32 | config USB_ARCH_HAS_EHCI | 9 | config USB_ARCH_HAS_EHCI |
33 | boolean | 10 | bool |
34 | default y if FSL_SOC | 11 | |
35 | default y if PPC_MPC512x | ||
36 | default y if ARCH_IXP4XX | ||
37 | default y if ARCH_W90X900 | ||
38 | default y if ARCH_AT91 | ||
39 | default y if ARCH_MXC | ||
40 | default y if ARCH_MXS | ||
41 | default y if ARCH_OMAP3 | ||
42 | default y if ARCH_CNS3XXX | ||
43 | default y if ARCH_VT8500 | ||
44 | default y if PLAT_SPEAR | ||
45 | default y if PLAT_S5P | ||
46 | default y if ARCH_MSM | ||
47 | default y if MICROBLAZE | ||
48 | default y if SPARC_LEON | ||
49 | default y if ARCH_MMP | ||
50 | default y if MACH_LOONGSON1 | ||
51 | default y if PLAT_ORION | ||
52 | default PCI | ||
53 | |||
54 | # some non-PCI HCDs implement xHCI | ||
55 | config USB_ARCH_HAS_XHCI | 12 | config USB_ARCH_HAS_XHCI |
56 | boolean | 13 | bool |
57 | default PCI | ||
58 | 14 | ||
59 | menuconfig USB_SUPPORT | 15 | menuconfig USB_SUPPORT |
60 | bool "USB support" | 16 | bool "USB support" |
@@ -71,19 +27,8 @@ config USB_COMMON | |||
71 | default y | 27 | default y |
72 | depends on USB || USB_GADGET | 28 | depends on USB || USB_GADGET |
73 | 29 | ||
74 | # Host-side USB depends on having a host controller | ||
75 | # NOTE: dummy_hcd is always an option, but it's ignored here ... | ||
76 | # NOTE: SL-811 option should be board-specific ... | ||
77 | config USB_ARCH_HAS_HCD | 30 | config USB_ARCH_HAS_HCD |
78 | boolean | 31 | def_bool y |
79 | default y if USB_ARCH_HAS_OHCI | ||
80 | default y if USB_ARCH_HAS_EHCI | ||
81 | default y if USB_ARCH_HAS_XHCI | ||
82 | default y if PCMCIA && !M32R # sl811_cs | ||
83 | default y if ARM # SL-811 | ||
84 | default y if BLACKFIN # SL-811 | ||
85 | default y if SUPERH # r8a66597-hcd | ||
86 | default PCI | ||
87 | 32 | ||
88 | # ARM SA1111 chips have a non-PCI based "OHCI-compatible" USB host interface. | 33 | # ARM SA1111 chips have a non-PCI based "OHCI-compatible" USB host interface. |
89 | config USB | 34 | config USB |
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig index d61a026b9248..881609ef85e8 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig | |||
@@ -17,7 +17,6 @@ config USB_C67X00_HCD | |||
17 | 17 | ||
18 | config USB_XHCI_HCD | 18 | config USB_XHCI_HCD |
19 | tristate "xHCI HCD (USB 3.0) support" | 19 | tristate "xHCI HCD (USB 3.0) support" |
20 | depends on USB_ARCH_HAS_XHCI | ||
21 | ---help--- | 20 | ---help--- |
22 | The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0 | 21 | The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0 |
23 | "SuperSpeed" host controller hardware. | 22 | "SuperSpeed" host controller hardware. |
@@ -43,7 +42,6 @@ endif # USB_XHCI_HCD | |||
43 | 42 | ||
44 | config USB_EHCI_HCD | 43 | config USB_EHCI_HCD |
45 | tristate "EHCI HCD (USB 2.0) support" | 44 | tristate "EHCI HCD (USB 2.0) support" |
46 | depends on USB_ARCH_HAS_EHCI | ||
47 | ---help--- | 45 | ---help--- |
48 | The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 | 46 | The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 |
49 | "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. | 47 | "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. |
@@ -358,7 +356,6 @@ config USB_FUSBH200_HCD | |||
358 | 356 | ||
359 | config USB_OHCI_HCD | 357 | config USB_OHCI_HCD |
360 | tristate "OHCI HCD (USB 1.1) support" | 358 | tristate "OHCI HCD (USB 1.1) support" |
361 | depends on USB_ARCH_HAS_OHCI | ||
362 | select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 | 359 | select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 |
363 | depends on USB_ISP1301 || !ARCH_LPC32XX | 360 | depends on USB_ISP1301 || !ARCH_LPC32XX |
364 | ---help--- | 361 | ---help--- |