Re: [PATCH] iio: accel: bma220: move set_wdt() out of bma220_core

From: Andy Shevchenko

Date: Thu Oct 23 2025 - 14:38:03 EST


On Thu, Oct 23, 2025 at 06:23:18PM +0100, Jonathan Cameron wrote:
> On Wed, 22 Oct 2025 14:50:18 +0300
> Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> > On Tue, Oct 21, 2025 at 01:31:49PM +0300, Petre Rodan wrote:
> > > Move bma220_set_wdt() into bma220_i2c.c instead of using a conditional
> > > based on i2c_verify_client() in bma220_core.c that would make core
> > > always depend on the i2c module.
> >
> > Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> >
> > But Kconfig for this driver is a bit strange. Usually we do other way around,
> > i.e. make user visible selection of the glue drivers, while core is selected if
> > at least one of the leaf driver selected by the user.
> >
> This comes up from time to time. There kind of isn't a right answer
> to my mind in the trade off between complexity of configuration
> and desire for minimum useful set of Kconfig symbols and people wanting
> to build only exactly what they want. So we've ended up with a mix.
>
> I don't mind setting a policy on this for new code going forwards, but
> that means we need to decide which approach we prefer and document
> it somewhere.

One immediate thing from top of my mind why current approach worse than
proposed by me.

- when you have an SPI or I²C enabled the glue driver will be silently build.
As a used on the embedded system with smaller resources (flash/ROM) I prefer
the opposite behaviour, i.e. when _I_ control what SPI/I²C component driver is
needed even if the subsystem is present.

But let's give a time to gather other opinions and justifications.

--
With Best Regards,
Andy Shevchenko