[RFC 10/32] i2c: Kconfig: add HAS_IOPORT dependencies

Niklas Schnelle schnelle at linux.ibm.com
Tue Dec 28 04:13:17 PST 2021


On Tue, 2021-12-28 at 11:21 +0100, Geert Uytterhoeven wrote:
> Hi Niklas,
> 
> On Mon, Dec 27, 2021 at 5:49 PM Niklas Schnelle <schnelle at linux.ibm.com> wrote:
> > In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
> > not being declared. We thus need to add HAS_IOPORT as dependency for
> > those drivers using them.
> > 
> > Co-developed-by: Arnd Bergmann <arnd at kernel.org>
> > Signed-off-by: Arnd Bergmann <arnd at kernel.org>
> > Signed-off-by: Niklas Schnelle <schnelle at linux.ibm.com>
> 
> Thanks for your patch!
> 
> > --- a/drivers/i2c/busses/Kconfig
> > +++ b/drivers/i2c/busses/Kconfig
> > @@ -828,6 +828,7 @@ config I2C_NPCM7XX
> > 
> >  config I2C_OCORES
> >         tristate "OpenCores I2C Controller"
> > +       depends on HAS_IOPORT
> 
> While drivers/i2c/busses/i2c-ocores.c does use {in,out}(), I doubt this
> is used to access legacy I/O space.

Hmm, it does use i2c->iobase for inb()/outb() but i2c->base for
ioreadXY()/iowriteXY(). And as it gets i2c->iobase from
platform_get_resource(pdev, IORESOURCE_IO, 0) I'd think that is an I/O
resource/space. It does look like some kind of fallback path though,
the IORESOURCE_IO is only looked at if accessing an IORESOURCE_MEM
fails so maybe that should instead be ifdeffed.

> 
> >         help
> >           If you say yes to this option, support will be included for the
> >           OpenCores I2C controller. For details see
> > @@ -1227,6 +1228,7 @@ config I2C_CP2615
> >  config I2C_PARPORT
> >         tristate "Parallel port adapter"
> >         depends on PARPORT
> > +       depends on HAS_IOPORT
> 
> Same as PRINTER: shouldn't this work with all parport drivers?

Agree, will drop.

> 
> >         select I2C_ALGOBIT
> >         select I2C_SMBUS
> >         help
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
> 
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds




More information about the linux-riscv mailing list