i.MX6Q - LDB clock's parent selection

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX6Q - LDB clock's parent selection

1,274 Views
Ansari
Contributor IV

Hi,

We are using imx6Q custom platform for our development which is based on sabresd platform.

We are using Linux 3.14.28_1.0.0-GA BSP for our development. But initially we used Linux 3.10.53_1.0.0-GA BSP.

From Linux 3.10.53_1.0.0-GA BSP, we have referred the below Linux kernel clock file.

          ~/linux-imx/arch/arm/mach-imx/clk-imx6q.c

We understood that the below function will set the LDB clock parent and the default LDB clock parent is "pll2_pfd0_352m".

"init_ldb_clks"

But In Linux 3.14.28_1.0.0-GA BSP, we couldn't identify the parent clock of LDB clock.   Please help us to understand

In our custom board, we are having LVDS0 800x480 display which is working with Linux 3.10.53_1.0.0-GA BSP.

The issue we are facing is, 

In Linux 3.14.28_1.0.0-GA BSP,  we have modified the corresponding lvds0 timing parameters in device tree. Now we are not getting the LVDS0 display. 

But if we keep the clock frequency as 65Mhz (as used in ~/linux-imx/arch/arm/boot/dts/imx6qdl-sabresd.dtsi) then we are able to get the display.

Please note that, we have changed only clock frequency value and other timing parameters are kept for 800x480 resolution.

We believe, the LDB clock's parent is the problem for our above issue.

Please help us to resolve the issue.

Thank You,

Regards,

Ansari

0 Kudos
3 Replies

469 Views
alejandrolozan1
NXP Employee
NXP Employee

Hi

I know you have seens this discussion:

i.MX6Q LVDS Wrong clock issue

I wonder if you have tried it out. I have been checking the code in 3.14.28 and it seems that it is not possible to change the parent clock the same way that in 3.10.53 (using a environment variable in u-boot).

You can also try the next in the clk-imx6q.c file:

imx_clk_set_parent(clk[IMX6QDL_CLK_LDB_DI0_SEL],clk[IMX6QDL_CLK_PLL3_USB_OTG] );

I have not tried that and comparing with 3.10.53 the clock is set in a totally different way, not so sure if this due a restriction. But as I see the simpler way is to modify u-boot code the way is mentioned in the above discussion.

Best Regards,

Alejandro

0 Kudos

469 Views
Ansari
Contributor IV

Dear Alejandro,

Thank you for your input.

In U-boot level, we are not supporting any display(including LVDS) and we are supporting the displays (including LVDS) in kernel level only.

As per your referred community link, the LVDS clock parent settings has to be added during the "setup_display".

But in our case(in our custom board file) "setup_display" function is not there.

Please suggest us.

Regards,

Ansari

0 Kudos

469 Views
alejandrolozan1
NXP Employee
NXP Employee

Did you try

imx_clk_set_parent(clk[IMX6QDL_CLK_LDB_DI0_SEL],clk[IMX6QDL_CLK_PLL3_USB_OTG] );

In linuk kernel code?

Best Regards,

Alejandro

0 Kudos