Re: [PATCH 3/3] usb: Add Kconfig and Makefile changes to build brcmstb-usb-pinmap

From: Alan Cooper
Date: Thu Aug 13 2020 - 11:01:28 EST


On Thu, Aug 13, 2020 at 1:40 AM Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>
> On Wed, Aug 12, 2020 at 04:20:18PM -0400, Al Cooper wrote:
> > From: Al Cooper <al.cooper@xxxxxxxxxxxx>
> >
> > Add Kconfig and Makefile changes to build brcmstb-usb-pinmap and
> > update MAINTAINERS for the new driver.
>
> This can be part of the previous patch, or at least the Kconfig and
> Makefile changes should be there so that we build the code when we add
> it.

I'll combine the 2 patches.

>
> > refs #SWLINUX-5537
>
> What is this?

This will be removed.

>
> >
> > Signed-off-by: Al Cooper <al.cooper@xxxxxxxxxxxx>
> > ---
> > MAINTAINERS | 8 ++++++++
> > drivers/usb/host/Kconfig | 4 ++++
> > drivers/usb/host/Makefile | 1 +
> > 3 files changed, 13 insertions(+)
> >
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index f0569cf304ca..3a44ac61899b 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -3527,6 +3527,14 @@ S: Maintained
> > F: Documentation/devicetree/bindings/usb/brcm,bcm7445-ehci.yaml
> > F: drivers/usb/host/ehci-brcm.*
> >
> > +BROADCOM BRCMSTB USB PIN MAP DRIVER
> > +M: Al Cooper <alcooperx@xxxxxxxxx>
> > +L: linux-usb@xxxxxxxxxxxxxxx
> > +L: bcm-kernel-feedback-list@xxxxxxxxxxxx
> > +S: Maintained
> > +F: Documentation/devicetree/bindings/usb/brcm,usb-pinmap.yaml
> > +F: drivers/usb/host/brcmstb-usb-pinmap.c
> > +
> > BROADCOM BRCMSTB USB2 and USB3 PHY DRIVER
> > M: Al Cooper <alcooperx@xxxxxxxxx>
> > L: linux-kernel@xxxxxxxxxxxxxxx
> > diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> > index 1cb3004ea7b2..9c285053bb0c 100644
> > --- a/drivers/usb/host/Kconfig
> > +++ b/drivers/usb/host/Kconfig
> > @@ -109,12 +109,16 @@ endif # USB_XHCI_HCD
> > config USB_EHCI_BRCMSTB
> > tristate
> >
> > +config BRCM_USB_PINMAP
> > + tristate
> > +
> > config USB_BRCMSTB
> > tristate "Broadcom STB USB support"
> > depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
> > select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
> > select USB_EHCI_BRCMSTB if USB_EHCI_HCD
> > select USB_XHCI_PLATFORM if USB_XHCI_HCD
> > + select BRCM_USB_PINMAP
> > help
> > Enables support for XHCI, EHCI and OHCI host controllers
> > found in Broadcom STB SoC's.
> > diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile
> > index bc731332fed9..0e63ef94790d 100644
> > --- a/drivers/usb/host/Makefile
> > +++ b/drivers/usb/host/Makefile
> > @@ -90,3 +90,4 @@ obj-$(CONFIG_USB_HCD_BCMA) += bcma-hcd.o
> > obj-$(CONFIG_USB_HCD_SSB) += ssb-hcd.o
> > obj-$(CONFIG_USB_FOTG210_HCD) += fotg210-hcd.o
> > obj-$(CONFIG_USB_MAX3421_HCD) += max3421-hcd.o
> > +obj-$(CONFIG_BRCM_USB_PINMAP) += brcmstb-usb-pinmap.o
>
> Shouldn't this driver be in usb/misc/ with other drivers like this? Why
> host?

That does seem like a better choice, I'll move it.

>
> Wait, why is this a separate driver at all? Why not just build it into
> the USB_BRCMSTB driver?

Of the 20 or so chips supported by the BRCMSTB USB drivers, only one
currently has this functionality so it seems better to have this code
in it's own driver so it can be enabled in device-tree for just this
chip. I also wanted to leave this in it's own driver because in the
future the same hardware functionality may be added for some eMMC
signals.

Thanks
Al

>
> thanks,
>
> greg k-h