devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/4] arm64: allwinner: a64: fix video output on Pinebook
@ 2025-01-04  7:36 Vasily Khoruzhick
  2025-01-04  7:36 ` [PATCH v2 1/4] dt-bindings: clock: sunxi: Export PLL_VIDEO_2X and PLL_MIPI Vasily Khoruzhick
                   ` (4 more replies)
  0 siblings, 5 replies; 15+ messages in thread
From: Vasily Khoruzhick @ 2025-01-04  7:36 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
	Jernej Skrabec, Samuel Holland, Michael Turquette, Stephen Boyd,
	Maxime Ripard, Roman Beranek, devicetree, linux-arm-kernel,
	linux-sunxi, linux-kernel, linux-clk
  Cc: Vasily Khoruzhick

Since commit ca1170b69968 ("clk: sunxi-ng: a64: force select PLL_MIPI
in TCON0 mux"), TCON0 clock parent is always set to PLL_MIPI, but
unfortunately it breaks video output on Pinebook.

I did an experiment: I manually configured PLL_MIPI and PLL_VIDEO0_2X
to the same clock rate and flipped the switch with devmem. Experiment
clearly showed that whenever PLL_MIPI is selected as TCON0 clock
parent, the video output stops working.

To fix the issue, I partially reverted mentioned commit and added explicit
TCON0 clock parent assignment to device tree. By default, it will be
PLL_MIPI, and the only users with RGB output - Pinebook and Teres-I will
override it in their dts.

v2:
  - split device tree binding change into its own patch
  - add rationale into commit message and into comment in the code
  - gather the tags

Vasily Khoruzhick (4):
  dt-bindings: clock: sunxi: Export PLL_VIDEO_2X and PLL_MIPI
  clk: sunxi-ng: a64: drop redundant CLK_PLL_VIDEO0_2X and CLK_PLL_MIPI
  arm64: dts: allwinner: a64: explicitly assign clock parent for TCON0
  clk: sunxi-ng: a64: stop force-selecting PLL-MIPI as TCON0 parent

 .../boot/dts/allwinner/sun50i-a64-pinebook.dts      |  2 ++
 .../arm64/boot/dts/allwinner/sun50i-a64-teres-i.dts |  2 ++
 arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi       |  2 ++
 drivers/clk/sunxi-ng/ccu-sun50i-a64.c               | 13 ++++---------
 drivers/clk/sunxi-ng/ccu-sun50i-a64.h               |  2 --
 include/dt-bindings/clock/sun50i-a64-ccu.h          |  2 ++
 6 files changed, 12 insertions(+), 11 deletions(-)

-- 
2.47.1


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2025-01-06 15:46 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-04  7:36 [PATCH v2 0/4] arm64: allwinner: a64: fix video output on Pinebook Vasily Khoruzhick
2025-01-04  7:36 ` [PATCH v2 1/4] dt-bindings: clock: sunxi: Export PLL_VIDEO_2X and PLL_MIPI Vasily Khoruzhick
2025-01-04 10:16   ` Krzysztof Kozlowski
2025-01-04 10:18     ` Krzysztof Kozlowski
2025-01-04 20:44       ` Vasily Khoruzhick
2025-01-04 10:23   ` Chen-Yu Tsai
2025-01-04 10:33     ` Krzysztof Kozlowski
2025-01-04 12:02       ` Andre Przywara
2025-01-04 12:13         ` Chen-Yu Tsai
2025-01-04 20:47           ` Vasily Khoruzhick
2025-01-04 12:41         ` Dragan Simic
2025-01-04  7:36 ` [PATCH v2 2/4] clk: sunxi-ng: a64: drop redundant CLK_PLL_VIDEO0_2X and CLK_PLL_MIPI Vasily Khoruzhick
2025-01-04  7:36 ` [PATCH v2 3/4] arm64: dts: allwinner: a64: explicitly assign clock parent for TCON0 Vasily Khoruzhick
2025-01-04  7:37 ` [PATCH v2 4/4] clk: sunxi-ng: a64: stop force-selecting PLL-MIPI as TCON0 parent Vasily Khoruzhick
2025-01-06 15:46 ` [PATCH v2 0/4] arm64: allwinner: a64: fix video output on Pinebook Chen-Yu Tsai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).