[PATCH v1 1/3] usb: host: npcm7xx: remove USB EHCI host reset sequence

Arnd Bergmann arnd at arndb.de
Mon Jul 18 22:38:34 AEST 2022


On Mon, Jul 18, 2022 at 2:29 PM Tomer Maimon <tmaimon77 at gmail.com> wrote:
>
>  config USB_EHCI_HCD_NPCM7XX
>         tristate "Support for Nuvoton NPCM7XX on-chip EHCI USB controller"
> -       depends on (USB_EHCI_HCD && ARCH_NPCM7XX) || COMPILE_TEST
> +       depends on (USB_EHCI_HCD && ARCH_NPCM7XX && RESET_NPCM) || COMPILE_TEST
>         default y if (USB_EHCI_HCD && ARCH_NPCM7XX)
>         help
>           Enables support for the on-chip EHCI controller on

I would leave out this Kconfig change, there is really no need to enforce
this specific dependency.  It is expected that a device driver has dependencies
on several other subsystems (irqchip, reset, pinctrl, clock, ....) and will only
work if the required drivers are also built for the same kernel.

Also, forcing the USB driver to be a loadable module when the reset driver
is a module (rather than built-in) does not guarantee that they are initialized
in the correct order. If only the USB driver is built-in and the reset driver is
a module, or both are loadable modules and USB gets loaded first, then
the probe() function should notice this and return -EPROBE_DEFER so
it will be retried after the reset driver is successfully loaded.

        Arnd


More information about the openbmc mailing list