]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: clk-imx6q: parent lvds_sel input from upstream clock gates
authorLucas Stach <l.stach@pengutronix.de>
Thu, 17 Jul 2014 10:20:14 +0000 (12:20 +0200)
committerShawn Guo <shawn.guo@freescale.com>
Fri, 18 Jul 2014 07:57:17 +0000 (15:57 +0800)
commitfe5942ce23545a902f15aa1edf80fd06ae91c93c
tree4660c9a1092a479dcfffb5099abe39023b376b01
parentc96b1f3a0e5c04e66ef7510b21a312ace9d78993
ARM: clk-imx6q: parent lvds_sel input from upstream clock gates

The i.MX6 reference manual doesn't make a clear distinction
between the fixed clock divider and the enable gate for the
pcie and sata reference clocks. This lead to the lvds mux
inputs in the imx6q clk driver to be parented from the
ref clock (which is the divider) instead of the actual gate,
which in turn prevents the upstream clock to actually be
enabled when lvds clk out is active.

This fixes a hard machine hang regression in kernel 3.16 for
boards where only pcie is active but no sata, as with this
kernel version the imx6-pcie driver is no longer enabling
the upstream clock directly but only lvds clk out.

Reported-by: Arne Ruhnau <arne.ruhnau@target-sg.com>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Tested-by: Arne Ruhnau <arne.ruhnau@target-sg.com>
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
arch/arm/mach-imx/clk-imx6q.c