Re: [PATCH v1 3/3] mmc: Add driver for LiteX's LiteSDCard interface

From: Gabriel L. Somlo
Date: Mon Dec 06 2021 - 19:53:22 EST


On Mon, Dec 06, 2021 at 11:51:22PM +0000, Joel Stanley wrote:
> On Mon, 6 Dec 2021 at 12:16, Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote:
>
> > > > + depends on OF && LITEX
> > >
> > > I don't like having litex drivers depend on the LITEX kconfig. The
> > > symbol is not user visible, and to enable it we need to build in the
> > > litex controller driver, which platforms may or may not have.
> > >
> > > The microwatt platform is an example of a SoC that embeds some LITEX
> > > IP, but may or may not be a litex SoC.
> >
> > I do like the LITEX dependency, as it allows us to gate off a bunch of
> > related drivers, and avoid annoying users with questions about them,
> > using a single symbol.
>
> I appreciate your concern.
>
> We could do this:
>
> depends on PPC_MICROWATT || LITEX || COMPILE_TEST

What about the current OF dependency? Is that covered by COMPILE_TEST,
or do we need an additional `depends on` line for it?

Thanks,
--G

> It's unfortunate that kconfig doesn't let us describe the difference
> between "this driver requires this symbol" as it won't build and "this
> driver is only useful when this symbol is enabled". Traditionally I
> write kconfig to represent only the former, whereas you prefer both.
>
> > Originally, people told me the system controller is always present,
> > hence the current logic to have LITEX_SOC_CONTROLLER visible, and
> > an invisible LITEX (which is shorter to type) for individual drivers
> > to depend on.
>
> That's another option. I think LITEX either needs to become visible,
> become selected by microwatt, or we adopt the proposal I made above
> for the litex drivers that the microwatt soc uses.