[PATCH] pinctrl: uniphier: set input-enable before pin-muxing

Linus Walleij linus.walleij at linaro.org
Tue Oct 27 03:09:11 PDT 2015


On Tue, Oct 20, 2015 at 10:25 AM, Masahiro Yamada
<yamada.masahiro at socionext.com> wrote:

> While IECTRL is disabled, input signals are pulled-down internally.
> If pin-muxing is set up first, glitch signals (Low to High transition)
> might be input to hardware blocks.
>
> Bad case scenario:
> [1] The hardware block is already running before pinctrl is handled.
>    (the reset is de-asserted by default or by a firmware, for example)
> [2] The pin-muxing is set up.  The input signals to hardware block
>     are pulled-down by the chip-internal biasing.
> [3] The pins are input-enabled.  The signals from the board reach the
>     hardware block.
>
> Actually, one invalid character is input to the UART blocks for such
> SoCs as PH1-LD4, PH1-sLD8, where UART devices start to run at the
> power on reset.
>
> To avoid such problems, pins should be input-enabled before muxing.
>
> Fixes: 6e9088920258 ("pinctrl: UniPhier: add UniPhier pinctrl core support")
> Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
> Reported-by: Dai Okamura <okamura.dai at socionext.com>
> ---
>
> Hi Linus,
>
> If it is not too late, please apply this fix for Linux 4.3.

It's too late at this point.

Patch is applied for devel and will come into v4.4 and from there
to -stable.

Yours,
Linus Walleij



More information about the linux-arm-kernel mailing list