diff options
author | Alan Stern <stern@rowland.harvard.edu> | 2013-05-14 13:54:12 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-05-15 13:41:39 -0400 |
commit | ccd9509a0b942f7a139f1adb741a746ef0220911 (patch) | |
tree | c10f86ebb69b0cbeb44bf7724437793d23fcd8f1 /drivers/usb/host/Kconfig | |
parent | e4f47e3675e6f1f40906b785b934ce963e9f2eb3 (diff) |
USB: fix Kconfig logic for USB_UHCI_HCD
The Kconfig settings for uhci-hcd are too permissive; they allow the
driver to be built without any bus-glue modules configured
(USB_UHCI_HCD enabled, PCI disabled, SPARC_LEON disabled, ARCH_VT8500
enabled, and USB_UHCI_PLATFORM disabled).
This patch fixes the problem by rearranging the dependencies. Now the
platform-dependent config options don't depend on USB_UHCI_HCD;
instead it depends on them. Furthermore, there is no user-selectable
choice as to which glue modules will be built. If USB_UHCI_HCD is
enabled then all applicable bus glues will be built.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
CC: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/host/Kconfig')
-rw-r--r-- | drivers/usb/host/Kconfig | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig index de94f2699063..344d5e2f87d7 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig | |||
@@ -507,7 +507,7 @@ endif # USB_OHCI_HCD | |||
507 | 507 | ||
508 | config USB_UHCI_HCD | 508 | config USB_UHCI_HCD |
509 | tristate "UHCI HCD (most Intel and VIA) support" | 509 | tristate "UHCI HCD (most Intel and VIA) support" |
510 | depends on PCI || SPARC_LEON || ARCH_VT8500 | 510 | depends on PCI || USB_UHCI_SUPPORT_NON_PCI_HC |
511 | ---help--- | 511 | ---help--- |
512 | The Universal Host Controller Interface is a standard by Intel for | 512 | The Universal Host Controller Interface is a standard by Intel for |
513 | accessing the USB hardware in the PC (which is also called the USB | 513 | accessing the USB hardware in the PC (which is also called the USB |
@@ -524,26 +524,19 @@ config USB_UHCI_HCD | |||
524 | 524 | ||
525 | config USB_UHCI_SUPPORT_NON_PCI_HC | 525 | config USB_UHCI_SUPPORT_NON_PCI_HC |
526 | bool | 526 | bool |
527 | depends on USB_UHCI_HCD | 527 | default y if (SPARC_LEON || USB_UHCI_PLATFORM) |
528 | default y if (SPARC_LEON || ARCH_VT8500) | ||
529 | 528 | ||
530 | config USB_UHCI_PLATFORM | 529 | config USB_UHCI_PLATFORM |
531 | bool "Generic UHCI Platform Driver support" | 530 | bool |
532 | depends on USB_UHCI_SUPPORT_NON_PCI_HC | ||
533 | default y if ARCH_VT8500 | 531 | default y if ARCH_VT8500 |
534 | ---help--- | ||
535 | Enable support for generic UHCI platform devices that require no | ||
536 | additional configuration. | ||
537 | 532 | ||
538 | config USB_UHCI_BIG_ENDIAN_MMIO | 533 | config USB_UHCI_BIG_ENDIAN_MMIO |
539 | bool | 534 | bool |
540 | depends on USB_UHCI_SUPPORT_NON_PCI_HC && SPARC_LEON | 535 | default y if SPARC_LEON |
541 | default y | ||
542 | 536 | ||
543 | config USB_UHCI_BIG_ENDIAN_DESC | 537 | config USB_UHCI_BIG_ENDIAN_DESC |
544 | bool | 538 | bool |
545 | depends on USB_UHCI_SUPPORT_NON_PCI_HC && SPARC_LEON | 539 | default y if SPARC_LEON |
546 | default y | ||
547 | 540 | ||
548 | config USB_FHCI_HCD | 541 | config USB_FHCI_HCD |
549 | tristate "Freescale QE USB Host Controller support" | 542 | tristate "Freescale QE USB Host Controller support" |