在内核中配置clk1_N/P

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

在内核中配置clk1_N/P

2,032 Views
steven_zhang
Contributor V

在设备驱动中可以把clk1_N/P 配置成24 mhz 输出,用writel函数可以直接写ccm_anotop_misc寄存器来完成配置,但这样做事有风险的。有没有使用clk_set_rate(),clk_prepare(),clk_enable()这样的函数在内核中直接配置?在clk-imx6q.c文件中已经指定了lvds1_sel 的parent为sata_ref_100m.但实际上使能后相关寄存器并没有修改。

Labels (4)
0 Kudos
2 Replies

1,677 Views
787316657
Contributor I

您好,

      我们现在IMX6Q芯片与FPGA的PCIE进行通信,需先将FPGA芯片复位,再复位IMX6Q才可以建链,如再次复位IMX6Q,则无法建链,测量CLK1_N和CLK1_P管脚,只有在复位后大概有1S的时间有100Mhz的时钟信号,然后就一直为低电平,请问是否可以让这两个管脚一直输出100Mhz的差分时钟信号?

谢谢!

0 Kudos

1,677 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello Steven,

     关于时钟的调整或者配置,你可以使用clk_set_rate(),clk_prepare(),clk_enable()等函数在内核中为你的需要配置好。默认情况下CLK1_N/P会输出100MHz做为PCIe GEN2 时钟来使用。这个时钟的配置应该和ENET时钟有关,因为ENET时钟也使用了100MHz。 具体的配置过程,你需要参考Reference Manual中的clock tree来重新为您的需求进行配置。

     另外,24MHZ的时钟,有2个位置可以从CPU PAD输出出来,一个是CLKO1 & CLKO2,你也可以使用这2个脚。

Regards

Weidong

0 Kudos