ARM: rockchip: disable jtag/sdmmc autoswitching on rk3288
authorHeiko Stübner <heiko@sntech.de>
Sun, 11 Jan 2015 22:09:23 +0000 (23:09 +0100)
committerOlof Johansson <olof@lixom.net>
Sat, 17 Jan 2015 03:10:39 +0000 (19:10 -0800)
commitc9b75d51c940c25587a2ad72ec7ec60490abfb6c
tree7f38d8ac95c2099c541d52a75c4f87dc9dac08bd
parent1dbb36bc7b9f648c489a5a2f73a5120a4ecab1ed
ARM: rockchip: disable jtag/sdmmc autoswitching on rk3288

rk3288 SoCs have a function to automatically switch between jtag/sdmmc pinmux
settings depending on the card state. This collides with a lot of assumptions.

It only works when using the internal card-detect mechanism and breaks
horribly when using either the normal card-detect via the slot-gpio function
or via any other pin. Also there is of course no link between the mmc and jtag
on the software-side, so the jtag clocks may very well be disabled when the
card is ejected and the soc switches back to the jtag pinmux.

Leaving the switching function enabled did result in mmc timeouts and rcu
stalls thus hanging the system on 3.19-rc1. Therefore disable it in all cases,
as we expect the devicetree to explicitly select either mmc or jtag pinmuxes
anyway.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Olof Johansson <olof@lixom.net>
arch/arm/mach-rockchip/rockchip.c