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
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!
-----------------------------------------------------------------------------------------------------------------------
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
Hi,
perhaps it makes sense to configure the CLKO2 in Uboot, before kernel load.
Regards,
Yuri.
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
Hi,
I mean initialization in U-boot just after hardware reset and loading U-boot.
Regards,
Yuri.
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
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.
in particular, ports initialization may be done in DCD tables.
~Yuri.
Yuri
Thank you, I'll try it.
Ko-hey