Re: [PATCH 3/4] pinctrl: Add support for additional dynamic states

From: Linus Walleij
Date: Wed Aug 14 2013 - 12:41:19 EST


On Tue, Jul 30, 2013 at 12:01 AM, Stephen Warren <swarren@xxxxxxxxxxxxx> wrote:

> I was thinking more about people writing the device trees that define
> these states; they need to explicitly make the choice re: overlapping
> states or independent states. We should not plan to obsolete any current
> usage of overlapping states since that will mean an incompatible change
> to the DT ABI (deprecate yes so that no more usage is added, but the
> kernel should still support the old way).

This is another reason to not group and encode explicitly the pins
that remain unchanged during state transitions.

I prefer that either:

- when we build up the state containers in the subsystem,
we identify overlapping pins and encode them in the state
container somehow

or:

- when transitioning from state A -> state B we identify
ovelapping pins or groups of pins and do not touch them
by making calls down to the driver ->free() and ->request()
callback pair.

or:

the pinctrl-single.c driver in it's callbacks like ->enable()
->disable(), ->request(), ->free() internally short cuts from
its knowledge of such pin shortcuts and no other drivers
are affected (nor helped) by this optimization.

Yours,
Linus Walleij
--
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/