Re: [PATCH 5/5] pinctrl: rockchip: correctly handle arguments ofpinconf options

From: Linus Walleij
Date: Sun Jun 16 2013 - 06:35:50 EST


On Fri, Jun 14, 2013 at 5:44 PM, Heiko Stübner <heiko@xxxxxxxxx> wrote:

> Change the rockchip pinctrl driver to handle the arguments of 0 or 1 to
> the pull pinconfig options correctly, so that the pull gets disabled when
> either the bias_disable options is set or the pull option has the argument 0.
>
> Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>

Patch applied so we can move ahead but:

> case PIN_CONFIG_BIAS_PULL_UP:
> case PIN_CONFIG_BIAS_PULL_DOWN:
> case PIN_CONFIG_BIAS_PULL_PIN_DEFAULT:
> + if (!rockchip_pinconf_pull_valid(info->ctrl, param))
> + return -ENOTSUPP;
> +
> + if (!arg)
> + param = PIN_CONFIG_BIAS_DISABLE;

This is what I think is counter-intuitive.

Can't you rely on the bias-disable here instead?

> - *config = 0;
> + pull = rockchip_get_pull(bank, pin - bank->pin_base);
> + *config = (pull == param) ? 1 : 0;

And then I guess you should emit PIN_CONFIG_BIAS_DISABLE
here as well.

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/