CCM_CLKO2 doesn't work properly

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

CCM_CLKO2 doesn't work properly

2,714 次查看
ko-hey
Senior Contributor II

Hi all

My customer wants to output stably using CCM_CLKO2 using i.MX6S.

They use CCM_CLKO2 for their CMOS sensor clock and the sensor need 24MHz clock when it powered on.

Unfortunately, they can't change the HW design because they have already built a prototype board.

They tried three cases but I have a following problem with CCM_CLKO2.

There are two cases when it set 6MHz.

     ・CCM_CLKO2 outputs after a while ( over 200ms )

     ・CCM_CLKO2 outputs immediately after power on.

There are three cases when it set 12MHz.

     ・CCM_CLKO2 doesn't output. (The probability is 50%)

     ・CCM_CLKO2 outputs after a while ( over 200ms )

     ・CCM_CLKO2 outputs immediately after power on.

There are two cases when it set 24MHz.

     ・CCM_CLKO2 outputs after a while ( over 200ms )

     ・CCM_CLKO2 outputs immediately after power on.

Add info :Their register value

CCM_CCOSR(6MHz)       0x016E0101

CCM_CCOSR(12MHz)     0x012E0101

CCM_CCOSR(24MHz)     0x010E0101

IOMUXC_SW_MUX_CTL_PAD_GPIO03 0x00000004

IOMUXC_SW_PAD_CTL_PAD_GPIO03 0x000000B0

Please advice me what should we check.

Ko-hey

标签 (2)
0 项奖励
回复
9 回复数

2,236 次查看
Yuri
NXP Employee
NXP Employee

Hello,

1.

  How software initialization for the CLKO2 is implemented ?

(why it is expected that CLKO2 outputs immediately after power on )

2.

  Please check power up sequence.

Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励
回复

2,236 次查看
ko-hey
Senior Contributor II

Hi Yuri

Thank you for your response.

1.

I'm sorry for lack of information.

They set the registers in Kernel.

The reason is sensor's specification.

T The sensor has a specification that user can access registers by I2C after inputs 100 cycle.

They can't satisfy the specification of the sensor if the CCM_CLKO2 does not outputs at the same timing.

2.

Okay, I'll check it.

Ko-hey

0 项奖励
回复

2,236 次查看
Yuri
NXP Employee
NXP Employee

Hi,

perhaps it makes sense to configure the CLKO2 in Uboot, before kernel load.

Regards,

Yuri.

0 项奖励
回复

2,236 次查看
ko-hey
Senior Contributor II

Hi Yuri

Thank you for your reply.

Let me confirm about your suggestion.

We should include the configuration in dts file.

Is it correct ?

Ko-hey

0 项奖励
回复

2,236 次查看
Yuri
NXP Employee
NXP Employee

Hi,

I mean initialization in U-boot just after hardware reset and loading U-boot.

Regards,

Yuri.

0 项奖励
回复

2,236 次查看
ko-hey
Senior Contributor II

Hi

Do you mean user have to stop at U-boot and add some command before kernel load ?

I think it isn't suitable for mass production. Because user have to stop at U-boot every time.

So I think I need fix it with source code.

How can I fix it with source code ?

Ko-hey

0 项奖励
回复

2,236 次查看
Yuri
NXP Employee
NXP Employee

Hello,

> Do you mean user have to stop at U-boot and add some command before kernel load ?

No. It is needed to add / design (source) code to original U-boot.

Chapter 1 (Porting U-Boot from an i.MX 6/7 Reference Board to

an i.MX 6/7 Custom Board) in “i.MX_BSP_Porting_Guide.pdf” describes

U-boot specifics for i.MX6.

Regards,

Yuri.

0 项奖励
回复

2,236 次查看
Yuri
NXP Employee
NXP Employee

in particular, ports initialization may be done in DCD tables.

~Yuri.

0 项奖励
回复

2,236 次查看
ko-hey
Senior Contributor II

Yuri

Thank you, I'll try it.

Ko-hey

0 项奖励
回复