]> git.baikalelectronics.ru Git - kernel.git/commit
drivers/soc: qcom: do not disable the iface clock in probe
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Tue, 23 Sep 2014 19:20:54 +0000 (20:20 +0100)
committerOlof Johansson <olof@lixom.net>
Wed, 24 Sep 2014 04:38:32 +0000 (21:38 -0700)
commita32e0cbaea469e1f90fdf45ab51678e686aa2096
treea7ce87576896e02b50a4f3dd61cba8c0935225a3
parent3598344eedb45a2fb68c41e279d4930275e39000
drivers/soc: qcom: do not disable the iface clock in probe

since commit 38a392e5857a ("tty: serial: msm: Remove direct access to GSBI")'
serial hangs if earlyprintk are enabled.

This hang is noticed only when the GSBI driver is probed and all the
earlyprintks before gsbi probe are seen on the console.
The reason why it hangs is because GSBI driver disables hclk in its
probe function without realizing that the serial IP might be in use by
a bootconsole. As gsbi driver disables the clock in probe the
bootconsole locks up.

Turning off hclk's could be dangerous if there are system components
like earlyprintk using the hclk.

This patch fixes the issue by delegating the clock management to
probe and remove functions in gsbi rather than disabling the clock in probe.

More detailed problem description can be found here:
http://www.spinics.net/lists/linux-arm-msm/msg10589.html

Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
drivers/soc/qcom/qcom_gsbi.c