[PATCH 3/4] ARM: pinctrl: Add Broadcom Capri pinctrl driver
Stephen Warren
swarren at wwwdotorg.org
Mon Nov 4 19:04:14 EST 2013
On 11/04/2013 04:26 PM, Heiko Stübner wrote:
> I remember we had a discussion about how things like bias-disable explicitly
> shouldn't have a value, when they are represented in the list-format:
>
> pcfg_pull_none: pcfg_pull_none {
> bias-disable;
> };
>
> so a bias-disable = <1> was explicitly "forbidden" [for a lack of a better
> word]. And it was similar for other options, the parameter not meant to be
> indicating if they are active but really only setting the "strength" or so.
Pure Boolean values should be represented as a valueless property. If
the property is present, the value is true, otherwise false.
However, pinctrl bindings often don't represent Boolean values, but
rather tri-states, with the following values:
* Don't touch this configuration option at all (missing)
* Enable the option (<1>)
* Disable the option (<0>)
The reason for using tri-states being that you might want to write:
xxx1 {
pins = <PINA>, <PINB>, <PINC>;
function = <...>;
// this node doesn't affect pullup
}
xxx2 {
pins = <PINA>, <PINB>;
// this node doesn't affect function
pull-up = <1>; // change, and enable
}
xxx3 {
pins = <PINAC>;
// this node doesn't affect function
pull-up = <0>; // change, and disable
}
More information about the linux-arm-kernel
mailing list