sh: pfc: Fix up GPIO mux type reconfig case.
authorPaul Mundt <lethal@linux-sh.org>
Tue, 25 Sep 2012 02:51:05 +0000 (11:51 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 25 Sep 2012 02:51:05 +0000 (11:51 +0900)
commit16d74ebeb1b056dfc80e69b44cc3a26515db1925
treec82eb0ff60ac6ce9e763fb6d01da4bd0ad563bc7
parent56d27adcb536b7430d5f8a6240df8ad261eb00bd
sh: pfc: Fix up GPIO mux type reconfig case.

Some drivers need to switch pin states between GPIO and pin function at
runtime, which was inadvertently broken in the pinctrl driver for GPIOs
being bound to a specific direction.

This fixes up the request path to ensure that previously configured GPIOs
don't cause us to inadvertently error out with an unsupported mux on
reconfig, which in practice is primarily aimed at trapping pull-up/down
users that have yet to be implemented under the new API.

Fixes up regressions in the TPU PWM driver, amongst others.

Reported-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
drivers/sh/pfc/pinctrl.c