linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment
@ 2016-11-23  0:42 Stefan Agner
  2016-11-23 23:02 ` Fabio Estevam
  0 siblings, 1 reply; 8+ messages in thread
From: Stefan Agner @ 2016-11-23  0:42 UTC (permalink / raw)
  To: shawnguo, kernel
  Cc: Ying.Liu, peter.chen, fabio.estevam, robh+dt, mark.rutland,
	linux-arm-kernel, devicetree, linux-kernel, Stefan Agner

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).

Signed-off-by: Stefan Agner <stefan@agner.ch>
---
 arch/arm/boot/dts/imx7s.dtsi | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/imx7s.dtsi b/arch/arm/boot/dts/imx7s.dtsi
index 0d7d5ac..2b6cb05 100644
--- a/arch/arm/boot/dts/imx7s.dtsi
+++ b/arch/arm/boot/dts/imx7s.dtsi
@@ -643,9 +643,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";
 			};
 		};
-- 
2.10.2

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

* Re: [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment
  2016-11-23  0:42 [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment Stefan Agner
@ 2016-11-23 23:02 ` Fabio Estevam
  2016-12-05  1:26   ` Stefan Agner
  0 siblings, 1 reply; 8+ messages in thread
From: Fabio Estevam @ 2016-11-23 23:02 UTC (permalink / raw)
  To: Stefan Agner
  Cc: Shawn Guo, Sascha Hauer, Mark Rutland, devicetree, linux-kernel,
	robh+dt, Peter Chen, Fabio Estevam, Liu Ying, linux-arm-kernel

On Tue, Nov 22, 2016 at 10:42 PM, Stefan Agner <stefan@agner.ch> wrote:
> 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).
>
> Signed-off-by: Stefan Agner <stefan@agner.ch>

Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>

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

* Re: [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment
  2016-11-23 23:02 ` Fabio Estevam
@ 2016-12-05  1:26   ` Stefan Agner
  2016-12-05  2:01     ` Shawn Guo
  2016-12-05  7:06     ` Uwe Kleine-König
  0 siblings, 2 replies; 8+ messages in thread
From: Stefan Agner @ 2016-12-05  1:26 UTC (permalink / raw)
  To: Shawn Guo
  Cc: Sascha Hauer, Mark Rutland, devicetree, linux-kernel, robh+dt,
	Peter Chen, Fabio Estevam, Liu Ying, linux-arm-kernel,
	Fabio Estevam

Hi Shawn

On 2016-11-23 15:02, Fabio Estevam wrote:
> On Tue, Nov 22, 2016 at 10:42 PM, Stefan Agner <stefan@agner.ch> wrote:
>> 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).
>>
>> Signed-off-by: Stefan Agner <stefan@agner.ch>
> 
> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>

Since this fixes a kernel freeze, is there a chance to get this still in
4.9?

--
Stefan

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

* Re: [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment
  2016-12-05  1:26   ` Stefan Agner
@ 2016-12-05  2:01     ` Shawn Guo
  2016-12-07 20:53       ` Olof Johansson
  2016-12-05  7:06     ` Uwe Kleine-König
  1 sibling, 1 reply; 8+ messages in thread
From: Shawn Guo @ 2016-12-05  2:01 UTC (permalink / raw)
  To: Arnd Bergmann, Olof Johansson
  Cc: Sascha Hauer, Stefan Agner, Mark Rutland, devicetree,
	linux-kernel, robh+dt, Peter Chen, Fabio Estevam, Liu Ying,
	linux-arm-kernel, Fabio Estevam

Hi Arnd, Olof,

On Sun, Dec 04, 2016 at 05:26:58PM -0800, Stefan Agner wrote:
> Hi Shawn
> 
> On 2016-11-23 15:02, Fabio Estevam wrote:
> > On Tue, Nov 22, 2016 at 10:42 PM, Stefan Agner <stefan@agner.ch> wrote:
> >> 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).
> >>
> >> Signed-off-by: Stefan Agner <stefan@agner.ch>
> > 
> > Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
> 
> Since this fixes a kernel freeze, is there a chance to get this still in
> 4.9?

Since we get one more week to the final 4.9, is it possible for you to
send this fix for 4.9 inclusion?  Thanks.

For the patch,

Acked-by: Shawn Guo <shawnguo@kernel.org>

Shawn

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

* Re: [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment
  2016-12-05  1:26   ` Stefan Agner
  2016-12-05  2:01     ` Shawn Guo
@ 2016-12-05  7:06     ` Uwe Kleine-König
  2016-12-05 20:29       ` Stefan Agner
  1 sibling, 1 reply; 8+ messages in thread
From: Uwe Kleine-König @ 2016-12-05  7:06 UTC (permalink / raw)
  To: Stefan Agner
  Cc: Shawn Guo, Mark Rutland, devicetree, Fabio Estevam, linux-kernel,
	robh+dt, Peter Chen, Sascha Hauer, Fabio Estevam, Liu Ying,
	linux-arm-kernel

Hello Stefan,

On Sun, Dec 04, 2016 at 05:26:58PM -0800, Stefan Agner wrote:
> Since this fixes a kernel freeze, is there a chance to get this still in
> 4.9?

a Fixes:-Line would be nice then.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

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

* Re: [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment
  2016-12-05  7:06     ` Uwe Kleine-König
@ 2016-12-05 20:29       ` Stefan Agner
  0 siblings, 0 replies; 8+ messages in thread
From: Stefan Agner @ 2016-12-05 20:29 UTC (permalink / raw)
  To: Uwe Kleine-König
  Cc: Shawn Guo, Mark Rutland, devicetree, Fabio Estevam, linux-kernel,
	robh+dt, Peter Chen, Sascha Hauer, Fabio Estevam, Liu Ying,
	linux-arm-kernel, gary.bisson

On 2016-12-04 23:06, Uwe Kleine-König wrote:
> Hello Stefan,
> 
> On Sun, Dec 04, 2016 at 05:26:58PM -0800, Stefan Agner wrote:
>> Since this fixes a kernel freeze, is there a chance to get this still in
>> 4.9?
> 
> a Fixes:-Line would be nice then.

Good point.

Fixes: e8ed73f691bd ("ARM: dts: imx7d: add lcdif support")

--
Stefan

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

* Re: [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment
  2016-12-05  2:01     ` Shawn Guo
@ 2016-12-07 20:53       ` Olof Johansson
  2016-12-08  0:54         ` Shawn Guo
  0 siblings, 1 reply; 8+ messages in thread
From: Olof Johansson @ 2016-12-07 20:53 UTC (permalink / raw)
  To: Shawn Guo
  Cc: Arnd Bergmann, Sascha Hauer, Stefan Agner, Mark Rutland,
	devicetree, linux-kernel, robh+dt, Peter Chen, Fabio Estevam,
	Liu Ying, linux-arm-kernel, Fabio Estevam

On Mon, Dec 05, 2016 at 10:01:24AM +0800, Shawn Guo wrote:
> Hi Arnd, Olof,
> 
> On Sun, Dec 04, 2016 at 05:26:58PM -0800, Stefan Agner wrote:
> > Hi Shawn
> > 
> > On 2016-11-23 15:02, Fabio Estevam wrote:
> > > On Tue, Nov 22, 2016 at 10:42 PM, Stefan Agner <stefan@agner.ch> wrote:
> > >> 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).
> > >>
> > >> Signed-off-by: Stefan Agner <stefan@agner.ch>
> > > 
> > > Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
> > 
> > Since this fixes a kernel freeze, is there a chance to get this still in
> > 4.9?
> 
> Since we get one more week to the final 4.9, is it possible for you to
> send this fix for 4.9 inclusion?  Thanks.
> 
> For the patch,
> 
> Acked-by: Shawn Guo <shawnguo@kernel.org>

Applied, with the fixes line. In the future, please email arm@kernel.org too,
it's easier to make sure we don't miss it that way.


-Olof

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

* Re: [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment
  2016-12-07 20:53       ` Olof Johansson
@ 2016-12-08  0:54         ` Shawn Guo
  0 siblings, 0 replies; 8+ messages in thread
From: Shawn Guo @ 2016-12-08  0:54 UTC (permalink / raw)
  To: Olof Johansson
  Cc: Arnd Bergmann, Sascha Hauer, Stefan Agner, Mark Rutland,
	devicetree, linux-kernel, robh+dt, Peter Chen, Fabio Estevam,
	Liu Ying, linux-arm-kernel, Fabio Estevam

On Wed, Dec 07, 2016 at 12:53:14PM -0800, Olof Johansson wrote:
> Applied, with the fixes line. In the future, please email arm@kernel.org too,
> it's easier to make sure we don't miss it that way.

Noted.  Thanks, Olof.

Shawn

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

end of thread, other threads:[~2016-12-08  0:55 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-23  0:42 [PATCH] ARM: dts: imx7d: fix LCDIF clock assignment Stefan Agner
2016-11-23 23:02 ` Fabio Estevam
2016-12-05  1:26   ` Stefan Agner
2016-12-05  2:01     ` Shawn Guo
2016-12-07 20:53       ` Olof Johansson
2016-12-08  0:54         ` Shawn Guo
2016-12-05  7:06     ` Uwe Kleine-König
2016-12-05 20:29       ` Stefan Agner

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).