[U-Boot] [PATCH v3] usb: add support for generic EHCI devices

Simon Glass sjg at chromium.org
Tue Dec 1 21:02:13 CET 2015


Hi,

On 1 December 2015 at 12:07, Marek Vasut <marex at denx.de> wrote:
> On Tuesday, December 01, 2015 at 07:54:19 PM, Alexey Brodkin wrote:
>> Hi Marek,
>>
>> On Mon, 2015-11-30 at 19:21 +0100, Marek Vasut wrote:
>> > On Monday, November 30, 2015 at 07:13:30 PM, Alexey Brodkin wrote:
>> > > Hi Marek,
>> > >
>> > > Please check drivers/usb/host/Kconfig.
>> >
>> > The order there seems correct. But how is it possible that your driver
>> > triggered the build error on the ph1_sld8,ph1_sld3,ph1_ld4 boards ? I
>> > suspect because it was enabled by default, but didn't "select" the
>> > EHCI_HCD ?
>>
>> Nope EHCI_HCD gets selected, but... ehci-generic uses CONFIG_DM_USB :)
>> And ehci_degister()/ehci_deregister() are only defined in EHCI_HCD
>> is CONFIG_DM_USB used.
>>
>> So I need to add dependency on CONFIG_DM_USB for ehci_generic.
>>
>> Looking for other examples of dependencies on CONFIG_DM_USB I was
>> surprised to see ehci-exynos, ehci-marvell, ehci-pci, ehci-sunxi and
>> ehci-tegra all are not yet added in Kconfig.
>>
>> I.e. all those drivers are selected in headers (in include/configs/xxx.h).
>>
>> > > > [...]
>> > > >
>> > > > > +static const struct udevice_id ehci_usb_ids[] = {
>> > > > > +     { .compatible = "generic-ehci" },
>> > > > > +     { }
>> > > > > +};
>> > > > > +
>> > > > > +U_BOOT_DRIVER(usb_ehci) = {
>> > > >
>> > > > The driver name should be ehci_generic, not usb_ehci, otherwise this
>> > > > will collide with other drivers who do the same mistake.
>> > >
>> > > Ok but then some other drivers should be fixed as well, right?
>> >
>> > Yes.
>>
>> Ok, I'll fix it for ehci generic as well.
>>
>> And v4 is about to float on mailing list :)
>
> I see, thanks!
>
> I'd like to hear Simon's opinion on this.

Yes, good to fix this. When CONFIG_DM_USB goes away, we can drop them all.

Regards,
Simon


More information about the U-Boot mailing list