Hi,
On 04-04-15 16:02, Paul Kocialkowski wrote:
Le samedi 04 avril 2015 à 15:48 +0200, Hans de Goede a écrit :
Hi,
On 04-04-15 15:42, Paul Kocialkowski wrote:
Le dimanche 29 mars 2015 à 13:18 +0200, Hans de Goede a écrit :
Hi,
On 28-03-15 18:26, Paul Kocialkowski wrote:
musb might be used in gadget mode on sunxi, so we don't want to assume anything
related to host mode, especially USB keyboard support. Thus, there is no reason
to keep USB_KEYBOARD always enabled and in Kconfig: it is much better fit to
enable it in the common sunxi config header, when needed (some devices also have
no USB support at all).
In case gadget mode is not explicitly enabled, this will fallback to host mode.
Signed-off-by: Paul Kocialkowski <[email protected]>
Nack, I'm not going to take any patch which removes config USB_KEYBOARD,
having USB_KEYBOARD always enabled on devices with usb host capability
causes a significant penalty in boot time, and some people may want to turn
it off because of that.
Actually, I said I would give up on this, but there are still parts of
that patch that I need for USB gadget (not related to USB keyboard).
Regarding USB keyboard, the best solution IMO would be to set it
disabled by default in board/sunxi/Kconfig (both because of the boot
time penality and because it's not relevant when using gadget mode) and
have it enabled individually in each configs/*_defconfig that uses USB
in host mode.
We try to offer the best ootb experience with the defconfigs and many
users will not have serial consoles attached, so we really want
usb-keyboard by default. Actually we can currently already use
host mode on ehci and gadget mode on musb and then we still want
usb-keyboard and that is how I expect the majority of the boards
to eventually be configured ootb.
I hadn't thought of that, it makes sense.
The only time when we do not want USB_KEYBOARD is when we've no
usb hosts at all because that will cause linking errors, this
should go away once we move over usb to the device model which
will happen soon.
Of course, the best solution would be to have USB keyboard enabled but
not used at run-time when there is no host available at all.
I'm happy to take patches you need to enable gadget mode, but I
do not think it is a good idea to flip the the default and then
add CONFIG_USB_KEYBOARD=y to pretty much every one of our 55
defconfig files.
Well, the long way to do it without modifying each board would be to:
* switch USB_EHCI to Kconfig
* switch MUSB_HOST and MUSB_GADGET to Kconfig
* default MUSB_GADGET to n
* default MUSB_HOST to y if !MUSB_GADGET
* default USB_KEYBORAD to y if USB_EHCI || MUSB_HOST
That way, we don't have to change the defconfigs and my problem is
solved. What do you think?
This would also be one more step to eliminating
CONFIG_SYS_EXTRA_OPTIONS, which is not a bad thing.
This sounds good to me, note there already is a USB_EHCI_HCD
Kconfig which does what you want in drivers/usb/host/Kconfig
(it automatically defines CONFIG_USB_EHCI to keep non converted
boards working).
So step 1 would be a patch moving sunxi over to stop setting
USB_EHCI in CONFIG_SYS_EXTRA_OPTIONS and instead have it use
define USB_ARCH_HAS_HCD and use USB_EHCI_HCD please
set USB_EHCI_HCD by default in board/sunxi/Kconfig like
how we also set a default for e.g. SYS_CLK_FREQ, I think
in the initial patch it should have a default of:
default y
And then later be changed to:
default y if !MUSB_HOST
As for moving MUSB_HOST / GADGET to Kconfig please coordinate
that with Marek.
Regards,
Hans
_______________________________________________
U-Boot mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/u-boot