Re: [PATCH 4/4] regulator: Convert tps65023 to use regmap API

From: Mark Brown
Date: Mon Jul 18 2011 - 05:44:14 EST


On Sun, Jul 17, 2011 at 06:00:11PM -0600, Grant Likely wrote:
> On Sun, Jul 17, 2011 at 05:53:44PM +0200, Jean Delvare wrote:

> > What's wrong with the more direct approach:
> > drivers/regmap/regmap-core.c
> > drivers/regmap/regmap-i2c.c
> > drivers/regmap/regmap-spi.c
> > ?

> > At least you would have everything in one place and under your control.
> > With your current plan, every update is likely to spawn
> > cross-subsystems, which always results in delays and conflicts.

This was exactly what the orginal patch set looked like, there have just
been a couple of git mvs since then.

> > Now if you have a good reason for the current design, that's OK with
> > me, I can live with that. Simply it seems more complex than needed.

> Hahaha. Mark *did* do it that way and I suggested splitting up into
> the i2c and spi directories to keep bus specific infrastructure
> together. Very well, if you feel strongly about it then I withdraw my
> comment.

Actually you weren't the only person to suggest this, but the other
suggestions were pretty weak and like you say all together was my
original preference. Since we seem to have achieved consensus I'll flip
everything back.

The reason for drivers/base was that this is more utility code like the
firmware loader than it is an actual thing.

> > Also, your Kconfig setup is such that all bindings will be selected as
> > soon as any driver needs one. And the selection (module vs. built-in)
> > will be aligned on the core setting (e.g. CONFIG_I2C) rather than the
> > drivers which use it. I'd rather have e.g. REGULATOR_TPS65023 select
> > REGMAP_I2C, and in turn have REGMAP_I2C select REGMAP. This should
> > address the issues I pointed out.

Yeah, the problem is that select doesn't actually work terribly well as
it causes dependencies of the selected thing to get ignored which is
annoying and means that the thing doing the selecting needs to select
them too. The bus interfaces are small enough that I'm not really
worried about the extra size and if need be we can always sort it out
layer.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/