* [U-Boot] [PATCH 0/3] usb: arrange Kconfig entries for USB host support
@ 2016-07-31 9:24 Masahiro Yamada
2016-07-31 9:24 ` [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig Masahiro Yamada
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Masahiro Yamada @ 2016-07-31 9:24 UTC (permalink / raw)
To: u-boot
We have CONFIG_USB_GADGET, while we do not have an option to
turn on/off USB host support.
In Linux, CONFIG_USB is used to enable the USB host support,
but it is used in U-Boot to enable the whole USB sub-system.
So, as an alternative, this commit adds CONFIG_USB_HOST
and I think it makes sense enough.
Masahiro Yamada (3):
usb: add CONIFG_USB_OHCI_HCD in Kconfig
usb: add CONFIG_USB_UHCI_HCD in Kconfig
usb: add (move) CONFIG_USB_HOST to Kconfig
configs/axs103_defconfig | 1 +
drivers/usb/host/Kconfig | 59 +++++++++++++++++++++++++++++++++++--------
include/configs/am43xx_evm.h | 1 -
include/configs/am57xx_evm.h | 1 -
include/configs/cm_t43.h | 1 -
include/configs/cm_t54.h | 1 -
include/configs/dra7xx_evm.h | 1 -
include/configs/duovero.h | 1 -
include/configs/omap4_panda.h | 1 -
include/configs/omap5_uevm.h | 1 -
10 files changed, 50 insertions(+), 18 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig
2016-07-31 9:24 [U-Boot] [PATCH 0/3] usb: arrange Kconfig entries for USB host support Masahiro Yamada
@ 2016-07-31 9:24 ` Masahiro Yamada
2016-07-31 9:38 ` Robert P. J. Day
2016-08-01 9:14 ` Alexey Brodkin
2016-07-31 9:24 ` [U-Boot] [PATCH 2/3] usb: add CONFIG_USB_UHCI_HCD " Masahiro Yamada
2016-07-31 9:24 ` [U-Boot] [PATCH 3/3] usb: add (move) CONFIG_USB_HOST to Kconfig Masahiro Yamada
2 siblings, 2 replies; 7+ messages in thread
From: Masahiro Yamada @ 2016-07-31 9:24 UTC (permalink / raw)
To: u-boot
Add this option as a common config for all OHCI controllers. Its
help message was copied from Linux. Also, I moved it below EHCI
to respect the order in Linux's Kconfig.
Add CONFIG_USB_OHCI_HCD=y to axs103_defconfig, which is the only
user of OHCI_GENERIC.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---
configs/axs103_defconfig | 1 +
drivers/usb/host/Kconfig | 35 +++++++++++++++++++++++++----------
2 files changed, 26 insertions(+), 10 deletions(-)
diff --git a/configs/axs103_defconfig b/configs/axs103_defconfig
index c8474de..109b021 100644
--- a/configs/axs103_defconfig
+++ b/configs/axs103_defconfig
@@ -25,6 +25,7 @@ CONFIG_ETH_DESIGNWARE=y
CONFIG_SYS_NS16550=y
CONFIG_USB=y
CONFIG_DM_USB=y
+CONFIG_USB_OHCI_HCD=y
CONFIG_USB_OHCI_GENERIC=y
CONFIG_USB_STORAGE=y
CONFIG_USE_PRIVATE_LIBGCC=y
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index 5092251..8e87f77 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -24,15 +24,7 @@ config USB_XHCI_DWC3
Say Y or if your system has a Dual Role SuperSpeed
USB controller based on the DesignWare USB3 IP Core.
-endif
-
-config USB_OHCI_GENERIC
- bool "Support for generic OHCI USB controller"
- depends on OF_CONTROL
- depends on DM_USB
- default n
- ---help---
- Enables support for generic OHCI controller.
+endif # USB_XHCI_HCD
config USB_EHCI_HCD
bool "EHCI HCD (USB 2.0) support"
@@ -100,4 +92,27 @@ config USB_EHCI_GENERIC
---help---
Enables support for generic EHCI controller.
-endif
+endif # USB_EHCI_HCD
+
+config USB_OHCI_HCD
+ bool "OHCI HCD (USB 1.1) support"
+ ---help---
+ The Open Host Controller Interface (OHCI) is a standard for accessing
+ USB 1.1 host controller hardware. It does more in hardware than Intel's
+ UHCI specification. If your USB host controller follows the OHCI spec,
+ say Y. On most non-x86 systems, and on x86 hardware that's not using a
+ USB controller from Intel or VIA, this is appropriate. If your host
+ controller doesn't use PCI, this is probably appropriate. For a PCI
+ based system where you're not sure, the "lspci -v" entry will list the
+ right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI.
+
+if USB_OHCI_HCD
+
+config USB_OHCI_GENERIC
+ bool "Support for generic OHCI USB controller"
+ depends on OF_CONTROL
+ depends on DM_USB
+ ---help---
+ Enables support for generic OHCI controller.
+
+endif # USB_OHCI_HCD
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH 2/3] usb: add CONFIG_USB_UHCI_HCD in Kconfig
2016-07-31 9:24 [U-Boot] [PATCH 0/3] usb: arrange Kconfig entries for USB host support Masahiro Yamada
2016-07-31 9:24 ` [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig Masahiro Yamada
@ 2016-07-31 9:24 ` Masahiro Yamada
2016-07-31 9:24 ` [U-Boot] [PATCH 3/3] usb: add (move) CONFIG_USB_HOST to Kconfig Masahiro Yamada
2 siblings, 0 replies; 7+ messages in thread
From: Masahiro Yamada @ 2016-07-31 9:24 UTC (permalink / raw)
To: u-boot
There is no UHCI driver entry in Kconfig for now, but we have some
UHCI drivers, for example, LEON. This is a placeholder in case we
want to move them to Kconfig in the future.
The help message was copied from Linux.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---
drivers/usb/host/Kconfig | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index 8e87f77..156dae4 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -116,3 +116,20 @@ config USB_OHCI_GENERIC
Enables support for generic OHCI controller.
endif # USB_OHCI_HCD
+
+config USB_UHCI_HCD
+ bool "UHCI HCD (most Intel and VIA) support"
+ ---help---
+ The Universal Host Controller Interface is a standard by Intel for
+ accessing the USB hardware in the PC (which is also called the USB
+ host controller). If your USB host controller conforms to this
+ standard, you may want to say Y, but see below. All recent boards
+ with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
+ i810, i820) conform to this standard. Also all VIA PCI chipsets
+ (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
+ 133) and LEON/GRLIB SoCs with the GRUSBHC controller.
+ If unsure, say Y.
+
+if USB_UHCI_HCD
+
+endif # USB_UHCI_HCD
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH 3/3] usb: add (move) CONFIG_USB_HOST to Kconfig
2016-07-31 9:24 [U-Boot] [PATCH 0/3] usb: arrange Kconfig entries for USB host support Masahiro Yamada
2016-07-31 9:24 ` [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig Masahiro Yamada
2016-07-31 9:24 ` [U-Boot] [PATCH 2/3] usb: add CONFIG_USB_UHCI_HCD " Masahiro Yamada
@ 2016-07-31 9:24 ` Masahiro Yamada
2 siblings, 0 replies; 7+ messages in thread
From: Masahiro Yamada @ 2016-07-31 9:24 UTC (permalink / raw)
To: u-boot
The meaning of CONFIG_USB in U-Boot is different from that in Linux.
As you see in drivers/usb/Kconfig of Linux, CONFIG_USB enables the
USB host controller support, while CONFIG_USB_SUPPORT is used to
enable the whole of the USB sub-system.
When I added CONFIG_USB into Kconfig by commit 6e7e9294d321 ("usb:
add basic USB configs in Kconfig"), I planned to follow the Linux's
convention, i.e. CONFIG_USB to enable/disable the USB host support.
Then, commit 68f7c5db2d1e ("usb: Generic USB Kconfig option, that
fits both host and gadget and comments") changed the logic of the
CONFIG_USB to point to the whole of the USB sub-system. As a result,
currently we do not have an option for USB host.
This commit adds CONFIG_USB_HOST, which will be useful to compile
in the USB host support code.
CONFIG_USB_HOST is not referenced at all, but strangely some boards
define it in board headers. I removed them because USB_HOST will be
selected in Kconfig going forward.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---
drivers/usb/host/Kconfig | 7 +++++++
include/configs/am43xx_evm.h | 1 -
include/configs/am57xx_evm.h | 1 -
include/configs/cm_t43.h | 1 -
include/configs/cm_t54.h | 1 -
include/configs/dra7xx_evm.h | 1 -
include/configs/duovero.h | 1 -
include/configs/omap4_panda.h | 1 -
include/configs/omap5_uevm.h | 1 -
9 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index 156dae4..02ae5cc 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -3,8 +3,12 @@
#
comment "USB Host Controller Drivers"
+config USB_HOST
+ bool
+
config USB_XHCI_HCD
bool "xHCI HCD (USB 3.0) support"
+ select USB_HOST
---help---
The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
"SuperSpeed" host controller hardware.
@@ -28,6 +32,7 @@ endif # USB_XHCI_HCD
config USB_EHCI_HCD
bool "EHCI HCD (USB 2.0) support"
+ select USB_HOST
---help---
The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
"high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
@@ -112,6 +117,7 @@ config USB_OHCI_GENERIC
bool "Support for generic OHCI USB controller"
depends on OF_CONTROL
depends on DM_USB
+ select USB_HOST
---help---
Enables support for generic OHCI controller.
@@ -119,6 +125,7 @@ endif # USB_OHCI_HCD
config USB_UHCI_HCD
bool "UHCI HCD (most Intel and VIA) support"
+ select USB_HOST
---help---
The Universal Host Controller Interface is a standard by Intel for
accessing the USB hardware in the PC (which is also called the USB
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index 361704b..0467953 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -98,7 +98,6 @@
#if defined(CONFIG_SPL_USB_HOST_SUPPORT) || !defined(CONFIG_SPL_BUILD)
#define CONFIG_SYS_USB_FAT_BOOT_PARTITION 1
-#define CONFIG_USB_HOST
#define CONFIG_USB_XHCI_OMAP
#define CONFIG_USB_STORAGE
#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2
diff --git a/include/configs/am57xx_evm.h b/include/configs/am57xx_evm.h
index 2db199d..c9dcfe5 100644
--- a/include/configs/am57xx_evm.h
+++ b/include/configs/am57xx_evm.h
@@ -63,7 +63,6 @@
#define CONFIG_SUPPORT_EMMC_BOOT
/* USB xHCI HOST */
-#define CONFIG_USB_HOST
#define CONFIG_USB_XHCI_OMAP
#define CONFIG_USB_STORAGE
#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2
diff --git a/include/configs/cm_t43.h b/include/configs/cm_t43.h
index 9bb975a..5d94f13 100644
--- a/include/configs/cm_t43.h
+++ b/include/configs/cm_t43.h
@@ -60,7 +60,6 @@
#define CONFIG_SYS_RX_ETH_BUFFER 64
/* USB support */
-#define CONFIG_USB_HOST
#define CONFIG_USB_XHCI_OMAP
#define CONFIG_USB_STORAGE
#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2
diff --git a/include/configs/cm_t54.h b/include/configs/cm_t54.h
index 68851ee..8e9444e 100644
--- a/include/configs/cm_t54.h
+++ b/include/configs/cm_t54.h
@@ -69,7 +69,6 @@
#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \
CONFIG_SYS_SCSI_MAX_LUN)
/* USB UHH support options */
-#define CONFIG_USB_HOST
#define CONFIG_USB_EHCI
#define CONFIG_USB_EHCI_OMAP
#define CONFIG_USB_STORAGE
diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h
index 0d51aeb..c8f1d5f 100644
--- a/include/configs/dra7xx_evm.h
+++ b/include/configs/dra7xx_evm.h
@@ -210,7 +210,6 @@
#define CONFIG_SUPPORT_EMMC_BOOT
/* USB xHCI HOST */
-#define CONFIG_USB_HOST
#define CONFIG_USB_XHCI_OMAP
#define CONFIG_USB_STORAGE
#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2
diff --git a/include/configs/duovero.h b/include/configs/duovero.h
index 98afe27..299c0d5 100644
--- a/include/configs/duovero.h
+++ b/include/configs/duovero.h
@@ -29,7 +29,6 @@
#define CONFIG_SYS_DEFAULT_LPDDR2_TIMINGS
/* USB UHH support options */
-#define CONFIG_USB_HOST
#define CONFIG_USB_EHCI
#define CONFIG_USB_EHCI_OMAP
#define CONFIG_USB_STORAGE
diff --git a/include/configs/omap4_panda.h b/include/configs/omap4_panda.h
index 0d62ccd..ffa22c3 100644
--- a/include/configs/omap4_panda.h
+++ b/include/configs/omap4_panda.h
@@ -17,7 +17,6 @@
*/
/* USB UHH support options */
-#define CONFIG_USB_HOST
#define CONFIG_USB_EHCI
#define CONFIG_USB_EHCI_OMAP
#define CONFIG_USB_STORAGE
diff --git a/include/configs/omap5_uevm.h b/include/configs/omap5_uevm.h
index 4ddc492..2bf955a 100644
--- a/include/configs/omap5_uevm.h
+++ b/include/configs/omap5_uevm.h
@@ -88,7 +88,6 @@
#define CONFIG_SYS_I2C_TCA642X_ADDR 0x22
/* USB UHH support options */
-#define CONFIG_USB_HOST
#define CONFIG_USB_EHCI
#define CONFIG_USB_EHCI_OMAP
#define CONFIG_USB_STORAGE
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig
2016-07-31 9:24 ` [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig Masahiro Yamada
@ 2016-07-31 9:38 ` Robert P. J. Day
2016-07-31 15:15 ` Masahiro Yamada
2016-08-01 9:14 ` Alexey Brodkin
1 sibling, 1 reply; 7+ messages in thread
From: Robert P. J. Day @ 2016-07-31 9:38 UTC (permalink / raw)
To: u-boot
"CONIFG"?
rday
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig
2016-07-31 9:38 ` Robert P. J. Day
@ 2016-07-31 15:15 ` Masahiro Yamada
0 siblings, 0 replies; 7+ messages in thread
From: Masahiro Yamada @ 2016-07-31 15:15 UTC (permalink / raw)
To: u-boot
2016-07-31 18:38 GMT+09:00 Robert P. J. Day <rpjday@crashcourse.ca>:
>
> "CONIFG"?
>
I will fix it in v2.
Thanks!
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig
2016-07-31 9:24 ` [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig Masahiro Yamada
2016-07-31 9:38 ` Robert P. J. Day
@ 2016-08-01 9:14 ` Alexey Brodkin
1 sibling, 0 replies; 7+ messages in thread
From: Alexey Brodkin @ 2016-08-01 9:14 UTC (permalink / raw)
To: u-boot
Hi?Masahiro-san,
On Sun, 2016-07-31 at 18:24 +0900, Masahiro Yamada wrote:
> Add this option as a common config for all OHCI controllers.??Its
> help message was copied from Linux.??Also, I moved it below EHCI
> to respect the order in Linux's Kconfig.
>
> Add CONFIG_USB_OHCI_HCD=y to axs103_defconfig, which is the only
> user of OHCI_GENERIC.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---
There's such a thing like "new OHCI driver" which is enabled by
CONFIG_USB_OHCI_NEW (as of today in config headers) and some OHCI
drivers rely on it.
I'd say it is a very good candidate to go to Kconfig especially for
those boards that use DM_USB.
Not sure if that makes sense for boards except axs103 in your change-set
though.
-Alexey
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-08-01 9:14 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-31 9:24 [U-Boot] [PATCH 0/3] usb: arrange Kconfig entries for USB host support Masahiro Yamada
2016-07-31 9:24 ` [U-Boot] [PATCH 1/3] usb: add CONIFG_USB_OHCI_HCD in Kconfig Masahiro Yamada
2016-07-31 9:38 ` Robert P. J. Day
2016-07-31 15:15 ` Masahiro Yamada
2016-08-01 9:14 ` Alexey Brodkin
2016-07-31 9:24 ` [U-Boot] [PATCH 2/3] usb: add CONFIG_USB_UHCI_HCD " Masahiro Yamada
2016-07-31 9:24 ` [U-Boot] [PATCH 3/3] usb: add (move) CONFIG_USB_HOST to Kconfig Masahiro Yamada
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.