MXC_Restart fails (Linux kernel bug?!)

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

MXC_Restart fails (Linux kernel bug?!)

1,227 次查看
erezsteinberg
Contributor IV

Hi experts,

I'm trying to reset my custom iMX6DL board running Linux 3.10.53.

Performing a 'reboot -f' fails.

Looking at the code, I think the value written to WDOG Control Register is incorrect.

The value written is 0x14, but it should be 0x04 --- shouldn't it?

(arch/arm/mach-imx/system.c   function mxc_restart)

In any case-- performing a simple "devmem2 0x20bc000 h 0x0004"  resets the device successfully.

Sincerely,

Erez

标签 (3)
0 项奖励
回复
1 回复

913 次查看
Yuri
NXP Employee
NXP Employee

  Different WDOG settings relate to (board) schematic specifics, where WDOG1_B

signal may be used to power down the chip, and WDOG1_RESET_B_DEB may be

used as reset source for the chip. Please look at Table 70-1 (WDOG External Signals)

of the i.MX6 DQ Reference Manual.

  So, it is possible  to apply Watchdog Control Register(WDOGx_WCR) with 0x14.

I expect in Your case some side effect takes place. In any case, clearing WDOGx_WCR[SRS]
provides immediate (software) reset.

  Also, the erratum ERR004346  (WDOG SRS bit requires to be written twice) may occur,

but it should be already fixed in Linux BSP.


Have a great day,
Yuri

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

0 项奖励
回复