FEC driver hangs hardware on i.MX6SX

fugang.duan at freescale.com fugang.duan at freescale.com
Sun Jul 20 19:13:39 PDT 2014


From: Shawn Guo <shawn.guo at freescale.com> Data: Monday, July 21, 2014 9:59 AM
>To: Richard Cochran
>Cc: Duan Fugang-B38611; linux-arm-kernel at lists.infradead.org;
>netdev at vger.kernel.org; Li Frank-B20596; David S. Miller
>Subject: Re: FEC driver hangs hardware on i.MX6SX
>
>On Sun, Jul 20, 2014 at 08:20:49AM +0200, Richard Cochran wrote:
>> On Sun, Jul 20, 2014 at 10:57:33AM +0800, Shawn Guo wrote:
>> >
>> > I think the cause is that PTP is still accessing registers after FEC
>> > driver calls fec_enet_clk_enable(ndev, false) to disable FEC clocks.
>> > Can you please try to provide a fix for this regression soon?
>>
>> What do you mean by, "PTP is still accessing registers"?
>>
>> The only access to any register is through the driver, and the driver
>> can and should make sure all register accesses are safe.
>
>Sorry for being vague, Richard.  I meant PTP driver is still accessing
>registers.
>
>With Fugang's clock management patch, FEC clocks will be disabled to save
>power after FEC gets probed.  But at that point, fec_ptp driver already
>launches a timer, which will trigger the read on FEC ATIME register once
>per second.
>
>Shawn
	
Yes, why does it cause at imx6sx platform ?
Because imx5x, imx6q/dl/sl  enet register access don't cause system hang when clock is disab led, just return one error value that is zero.
But for imx6sx, if there disable enet ipg clock, and access register, which cause system hang.

For clock management patch itself, there have no any problem.  
Just ptp driver has one issue which think clock is always on.

I  submit one patch to fix the ptp issue.

Thanks,
Andy



More information about the linux-arm-kernel mailing list