Skip to contentSkip to conversation

Patch "ARM: dts: imx7d: fix LCDIF clock assignment" has been added to the 4.8-stable tree

PATCH [email protected] 1 participant 1 message Dec 13, 2016

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

ARM: dts: imx7d: fix LCDIF clock assignment

to the 4.8-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
arm-dts-imx7d-fix-lcdif-clock-assignment.patch
and it can be found in the queue-4.8 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 4b707fa00a80b19b80bc8df6f1cbf4bdd9c91402 Mon Sep 17 00:00:00 2001

From: Stefan Agner <[email protected]>
Date: Tue, 22 Nov 2016 16:42:04 -0800
Subject: ARM: dts: imx7d: fix LCDIF clock assignment

From: Stefan Agner <[email protected]>

commit 4b707fa00a80b19b80bc8df6f1cbf4bdd9c91402 upstream.

The eLCDIF IP of the i.MX 7 SoC knows multiple clocks and lists them separately:

Clock      Clock Root              Description
apb_clk    MAIN_AXI_CLK_ROOT       AXI clock
pix_clk    LCDIF_PIXEL_CLK_ROOT    Pixel clock
ipg_clk_s  MAIN_AXI_CLK_ROOT       Peripheral access clock

All of them are switched by a single gate, which is part of the IMX7D_LCDIF_PIXEL_ROOT_CLK clock. Hence using that clock also for the AXI bus clock (clock-name "axi") makes sure the gate gets enabled when accessing registers.

There seem to be no separate AXI display clock, and the clock is optional. Hence remove the dummy clock.

This fixes kernel freezes when starting the X-Server (which disables/re-enables the display controller).

Fixes e8ed73f691bd ("ARM: dts: imx7d: add lcdif support")
---
 arch/arm/boot/dts/imx7s.dtsi |    5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
arch/arm/boot/dts/imx7s.dtsi +2 -3
@@ -640,9 +640,8 @@
 				reg = <0x30730000 0x10000>;
 				interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
 				clocks = <&clks IMX7D_LCDIF_PIXEL_ROOT_CLK>,
-					<&clks IMX7D_CLK_DUMMY>,
-					<&clks IMX7D_CLK_DUMMY>;
-				clock-names = "pix", "axi", "disp_axi";
+					<&clks IMX7D_LCDIF_PIXEL_ROOT_CLK>;
+				clock-names = "pix", "axi";
 				status = "disabled";
 			};
 		};

Patches currently in stable-queue which might be from [email protected] are

queue-4.8/arm-dts-imx7d-fix-lcdif-clock-assignment.patch