Hi Ti Expert:
i want to use DM1868 watchdog under DVRRDK_03.50.00.05, but we found a issue.
when restart system by watchdog, a crash print will occurs. we found it is occurs when run "load_vpss.sh"
how can i solve this problem?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi Ti Expert:
i want to use DM1868 watchdog under DVRRDK_03.50.00.05, but we found a issue.
when restart system by watchdog, a crash print will occurs. we found it is occurs when run "load_vpss.sh"
how can i solve this problem?
dm816x login: root
root@dm816x:~# cd /opt/dvr_rdk/ti816x/ && ./Capture_init_load_run.sh
*** Bootargs Validated for mem param ***
*** Bootargs Validated for notifyk.vpssm3 params ***
*** Kernel Base address validated ***
Kernel bootargs validated
amixer: Cannot find the given element from control default
amixer: Cannot find the given element from control default
[c6xdsp ] Remote Debug Shared Memory @ 0xbf000000
[m3video] Remote Debug Shared Memory @ 0xbf005020
[m3vpss ] Remote Debug Shared Memory @ 0xbf00a040
SysLink version : 2.20.02.20
SysLink module created on Date:May 23 2013 Time:16:24:40
Trace enabled
Trace SetFailureReason enabled
Setting DMM priority for [DUCATI ] to [0] ( 0x4e000624 = 0x08000000 )
Setting DMM priority for [HDVICP0 ] to [2] ( 0x4e000634 = 0x0000000a )
Setting DMM priority for [HDVICP1 ] to [2] ( 0x4e000634 = 0x000a0000 )
Setting DMM priority for [HDVICP2 ] to [2] ( 0x4e000634 = 0x00a00000 )
*** dl fpga : START ***
open HD-EX1002F.rbf
dlCount = 247942
rtnVal:1
errCount:0,okCount:1
download FPGA OK
*** dl fpga : END ***
*** TVP5158 probe : START ***
TI VS EVM : TVP5158 device address : 0x58, 0x5a, 0x5c, 0x5e
TI DVR : TVP5158 device address : 0x5c, 0x5d, 0x5e, 0x5f
Device found : I2C (0xXX): 0x08 = 0x51
I2C (0xXX): 0x09 = 0x58
Device NOT found : I2C (0xXX): Read ERROR !!! (reg[0x08], count = 2)
I2C (0x58): Read ERROR !!! (reg[0x08], count = 2)
I2C (0x5a): Read ERROR !!! (reg[0x08], count = 2)
I2C (0x5c): Read ERROR !!! (reg[0x08], count = 2)
I2C (0x5d): Read ERROR !!! (reg[0x08], count = 2)
I2C (0x5e): Read ERROR !!! (reg[0x08], count = 2)
I2C (0x5f): Read ERROR !!! (reg[0x08], count = 2)
*** TVP5158 probe : END ***
/opt/dvr_rdk/ti816x
Unhandled fault: external abort on non-linefetch (0x1808) at 0xf9020000
Internal error: : 1808 [#1]
last sysfs file: /sys/kernel/uevent_seqnum
Modules linked in: syslink
CPU: 0 Not tainted (2.6.37 #17)
PC is at DM8168DUCATIMMU_enable+0x60/0xa0 [syslink]
LR is at DM8168DUCATIMMU_enable+0x28/0xa0 [syslink]
pc : [<bf0171dc>] lr : [<bf0171a4>] psr: 00000013
sp : cd3c2ff0 ip : d3004000 fp : cd3c3004
r10: 00000000 r9 : cd3c2000 r8 : bf0af318
r7 : bf07c7c0 r6 : d3001000 r5 : 00000000 r4 : d3001000
r3 : 00010000 r2 : f9020000 r1 : 00060000 r0 : bf061340
Flags: nzcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control: 10c5387d Table: 8deb8019 DAC: 00000015
Process fw_load.out (pid: 998, stack limit = 0xcd3c22e8)
Stack: (0xcd3c2ff0 to 0xcd3c4000)
2fe0: d3004000 00000000 cd3c3034 cd3c3008
3000: bf0168d0 bf017188 00000008 f9020000 00000000 d3001000 cd3c3e34 d300a000
3020: cd3c3ea4 00000000 cd3c3054 cd3c3038 bf0047e8 bf0167e0 cd3c3e34 bf01c100
3040: cd3c3ea4 cd3c3078 cd3c3e5c cd3c3058 bf004160 bf00478c cd3c3ea4 00000000
3060: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3080: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
30a0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
30c0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
30e0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3100: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3120: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3140: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3160: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3180: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
31a0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
31c0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
31e0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3200: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3220: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3240: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3260: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3280: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
32a0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
32c0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
32e0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3300: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3320: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3340: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3360: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3380: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
33a0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
33c0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
33e0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3400: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3420: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3440: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3460: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3480: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
34a0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
34c0: 00000000 00000000 00000000 00000000 00000000 00000000 ce429600 00000001
34e0: cd3c3524 cd3c34f0 c00738c8 c00735f8 c00933dc c0093368 cd3c3524 cd3c3508
3500: c007268c c00933c0 c050ac78 c050ac78 ce429600 00000001 cd3c3544 cd3c3528
3520: c007277c c00738a4 c050ac78 ce429600 ce5dda00 ce536d08 cd3c3554 cd3c3548
3540: c00a44dc c00a5838 cd3c3574 cd3c3558 cdc59e28 ce747680 cd3c357c cd3c3568
3560: c03264f4 c0325e94 cdc59e28 ce747680 cd3c3594 cd3c3580 c0325c60 c03264e4
3580: 60000113 ce747680 cd3c35a4 cd3c3598 c0325d40 c0325c58 cd3c35b4 cd3c35a8
35a0: c005b728 c005b6a4 cd3c35c4 cd3c35b8 c00a58cc c005b708 cd3c35dc cd3c35c8
35c0: c00a581c c00a58b8 c050deb0 00020000 cd3c35fc cd3c35e0 c00a5780 c00a580c
35e0: c050deb0 c050deb0 0000002b ce563b4c cd3c3614 cd3c3600 c00a4a80 c00a5768
3600: 60000113 c050deb0 ce563800 ce7fa080 00000081 ce7fa080 d08f5020 ce7fa080
3620: cd3c3674 cd3c3630 c0268f8c c0052f7c 00000000 c00a4f58 000000b6 cdd5d096
3640: cdc59e28 00000000 cd3c366c ce563800 cdc59e28 ce563b40 ce563a08 ce563800
3660: c03d218c ce747780 cd3c369c cd3c3678 c0267c90 c0268dfc 00000000 000000d0
3680: cdc59e28 ce747680 cd3c36ac cd3c3698 c03264f4 c0325e94 cdc59e28 ce747680
36a0: cd3c36c4 cd3c36b0 c0325c60 c03264e4 60000113 ce747680 cd3c36d4 cd3c36c8
36c0: c0325d40 c0325c58 cdc590a8 ce747680 cd3c36f4 cd3c36e0 c03264f4 c0325e94
36e0: cdc590a8 ce747680 cd3c370c cd3c36f8 c0325c60 c03264e4 60000113 ce747680
3700: cd3c371c cd3c3710 c0325d40 c0325c58 cd3c372c cd3c3720 c005b728 c005b6a4
3720: ce563800 ce7fa080 000000f3 ce7fa080 d08f5e60 ce7fa080 cd3c378c cd3c3748
3740: c0268f8c c0052f7c 00000000 cd3c3758 000000b6 cdc46896 cdc590a8 00000000
3760: cd3c3784 ce563800 cdc590a8 ce563b40 ce563a08 ce563800 c03d218c ce747780
3780: cd3c37b4 cd3c3790 c0267c90 c0268dfc 00000000 000000d0 cdc590a8 ce747680
37a0: cd3c37c4 cd3c37b0 c03264f4 c0325e94 cdc590a8 ce747680 cd3c37dc cd3c37c8
37c0: c0325c60 c03264e4 60000113 bf0af3ec cd3c3824 cd3c37e0 bf02d00c bf01c100
37e0: bf022f7c bf01c100 bf0af3ec 0000000c cd3c384c cdcaf100 00000005 00000005
3800: cd3c3824 cdcaf880 00000012 00000001 be8ed698 be8ed698 cd3c3ef4 cd3c3828
3820: bf050e18 bf01c100 c024f352 be8ed698 0000002b ce563b4c cd3c385c be8ed698
3840: c00a4a80 c00a5768 60000113 00000000 00000000 00000000 c00a4fb4 c00a4a20
3860: ce563b50 ce563b40 00000004 ce563b4c cd3c38ac cd3c3880 c0267f74 c00a4f58
3880: ffffdc7b 00010000 ce563b4c 00000040 0000000c 00000001 0000012c ffffdc7d
38a0: cd3c38d4 cd3c38b0 c032d950 c0267d30 cd3c2000 00000100 cd3c38d4 cd3c38c8
38c0: cd3c2000 00000100 cd3c390c cd3c38d8 c007bd0c c007bb7c cd3c3904 cd3c38e8
38e0: c050de5c 0000002a 00000000 0000fa60 cdc70480 00000007 cdc59000 000005a8
3900: cd3c391c cd3c3910 c007bd78 c00723bc cd3c3934 cd3c3920 c0042080 c007bd30
3920: ffffffff fa200000 cd3c3994 cd3c3938 c03b0674 c004200c 00000000 cdc59000
3940: 00000000 cdc46e80 cdc70480 cdc70480 41e5d4cf 0000fa60 cd3c397c cd3c3968
3960: c03215f8 c0081a3c cdc70480 41e5d4cf cd3c3994 cd3c3980 c035fac4 c03215e8
3980: cdc70480 41e5d4cf cd3c39fc cd3c3998 c0362b04 c035fa3c cd3c39d4 cd3c39a8
39a0: 00000000 00000001 000005a8 00000001 cdc704f4 cdc59018 cdc59000 00000020
39c0: 00000680 c035633c cd3c39fc cd3c39d8 c0326b44 cdc70480 cdc59000 00000074
39e0: 00000000 00000000 cdc70480 cdc59000 cd3c3a1c cd3c3a00 c03212f4 c007c060
3a00: cdc70480 cdc59000 00000074 00000000 cd3c3a9c cd3c3a20 c0356eac c0321220
3a20: cd3c3a64 cd3c3a30 c0394ac4 cd3c3be0 00000000 00004040 000005a8 00000000
3a40: 00000074 00000000 cdc46078 000005a8 00000001 cdc704f4 cd3c2000 00000000
3a60: c0155ab8 00000000 00000000 000005a8 cd3c3aa4 cdc70480 cd3c3ac0 cd3c3bc4
3a80: 00000074 cd3c3bc4 ce004c00 cd3c3bc4 cd3c3abc cd3c3aa0 c0372858 c035640c
3aa0: 00000000 00000000 ce004c00 00000074 cd3c3b9c cd3c3ac0 c031e638 c03727f8
3ac0: cd3c3af4 cd3c3ad0 00000000 00000001 ffffffff 00000000 00000000 00000000
3ae0: 00000000 00000000 cdf05080 cd3c3af8 00000000 00000000 00000000 cd3c3b08
3b00: cd3c3b38 cd3c3b10 c03b27d4 c03b279c 00000000 cdf05080 cd3c3b4c cd3c3b28
3b20: c050acc0 c050ace0 c08e0136 00000000 00000000 00000001 cd3c3b6c cd3c3b48
3b40: c0073304 00000074 ce004c00 ce428580 00000000 cd3c3bc4 ce4285b0 c03942b8
3b60: cdf05080 ce4285b0 cdf050b0 c050ac78 cdf05080 ce4285b0 cd3c3bac cd3c2000
3b80: bf000000 cdc68574 00000000 00000000 cd3c3bb4 cd3c3ba0 c031e69c c031e59c
3ba0: 00004040 00000000 cd3c3c14 cd3c3bb8 c0392320 c031e660 00000074 00000000
3bc0: cd3c3bf4 00000000 cdf05080 cdf05080 00000000 00000000 fffffffd 00000000
3be0: cd3c3c14 cd3c3bf0 c03b274c c00481c4 c04f001c cdf05080 00000017 c04f30d0
3c00: cd3c2000 c03942b8 cd3c3c2c cd3c3c18 c03b27ac c03b2724 00000000 cd3c3cb4
3c20: cd3c3c44 cd3c3c30 00007e7f 000000e1 000000d2 003fffff cd3c3c8c cd3c3c48
3c40: bf02b56c bf01c100 cd3c3cbc cd3c3c58 c00adde8 c00ab98c 00000041 003fffff
3c60: 00000000 000200d2 000000d2 cdcaf900 00000001 00000013 000000d2 003fffff
3c80: cd3c3cf4 cd3c3c90 000000d2 003fffff cd3c3d04 cd3c3ca0 c00adde8 c00ab98c
3ca0: 00000041 00000000 00000000 000200d2 c0539e40 00000000 00000000 ffffffff
3cc0: 00000001 c0539584 bf023200 c07980a8 003fffff c0539584 bf023200 000000d2
3ce0: 003fffff 000000d2 bf023200 ffffffff cd3c2000 00000000 cd3c3d84 cd3c3d08
3d00: c00ae25c c00add68 00000001 00000041 c0539584 00000000 00000000 cdea1440
3d20: 000000cf d3040000 00000001 cd3c3d94 cdea1580 000000d2 bf023200 ffffffff
3d40: cd3c2000 000000cf cd3c3d6c cd3c3d58 c00c6d84 c00c6bf4 cd3c3d94 cdea1580
3d60: c0751760 00693ce1 cd3c3d9c cd3c3d78 c00ad990 c00bb43c 00000000 c0751740
3d80: 00000000 00000020 cd3c3da4 cd3c3d98 c01be938 c01be884 cd3c3dc4 cd3c3da8
3da0: c00a84b8 c01be930 00000000 cdeb8000 cdcc0300 00000000 cd3c3e0c cd3c3dc8
3dc0: 0008db5a 8db5a30f cd3c3de4 cd3c3dd8 c00c7cac c00c7c40 cd3c3df4 cd3c3de8
3de0: c074cb40 00000000 cd3c3e0c cd3c3df8 c00a8808 c008dd7c c074cb40 8db5a30f
3e00: cd3c3e5c cd3c3e10 c00bc69c c00a87d0 00001208 00000000 00000200 cdeab8a0
3e20: 00000000 00000020 cd3c3ea4 00000000 cd3c3e5c cd3c3ea4 cd3c3ea4 cdcaf380
3e40: cd3c2000 be8eda64 be8eda64 00000000 cd3c3ef4 cd3c3e60 bf00511c bf0040c8
3e60: c00ce0a0 be8eda64 00000000 00000000 d300a000 be8edaa4 cdc59900 000000a0
3e80: cd3c3ea4 cd3c3e90 c00d7de8 c00e5990 cdcaf900 cdc6b000 00000200 cd3c3fb0
3ea0: cdf05080 00000000 00000000 cd3c3eb8 c0092174 c01c0764 cd3c3efc cd3c3ec8
3ec0: c03b25cc c0092170 d300a000 00000000 00000000 00000000 cdcaf380 00000008
3ee0: 00000008 be8eda64 cd3c3f04 cd3c3ef8 c00dc144 bf004954 cd3c3f74 cd3c3f08
3f00: c00dc854 c00dc128 c00db94c c00db86c 00000000 cdcaf680 00000013 00001003
3f20: 00000000 cdcaf900 cdda8604 cd3c2000 cdc86700 ce142c00 c00e3eec 00000013
3f40: cdc6b000 00001002 00000001 00000000 be8eda64 c00ce0a0 00000008 cdcaf380
3f60: cd3c2000 00000000 cd3c3fa4 cd3c3f78 c00dc8ec c00dc360 c00dbec0 00000001
3f80: 00000013 be8eda64 00000000 00000000 00000036 c004cfa8 00000000 cd3c3fa8
3fa0: c004ce00 c00dc8a0 be8eda64 00000000 00000008 c00ce0a0 be8eda64 00000001
3fc0: be8eda64 00000000 00000000 00000036 0007ea54 000515d8 0007e73c 00000000
3fe0: c00ce0a0 be8eda30 0002a360 402baaec 60000010 00000008 00000000 00000000
Backtrace:
[<bf01717c>] (DM8168DUCATIMMU_enable+0x0/0xa0 [syslink]) from [<bf0168d0>] (DM8168DUCATIPWR_on+0xfc/0x150 [syslink])
r5:00000000 r4:d3004000
[<bf0167d4>] (DM8168DUCATIPWR_on+0x0/0x150 [syslink]) from [<bf0047e8>] (PwrMgr_attach+0x68/0xa0 [syslink])
r8:00000000 r7:cd3c3ea4 r6:d300a000 r5:cd3c3e34 r4:d3001000
[<bf004780>] (PwrMgr_attach+0x0/0xa0 [syslink]) from [<bf004160>] (ProcMgr_attach+0xa4/0x1d4 [syslink])
r5:cd3c3078 r4:cd3c3ea4
[<bf0040bc>] (ProcMgr_attach+0x0/0x1d4 [syslink]) from [<bf00511c>] (ProcMgrDrv_ioctl+0x7d4/0x170c [syslink])
[<bf004948>] (ProcMgrDrv_ioctl+0x0/0x170c [syslink]) from [<c00dc144>] (vfs_ioctl+0x28/0x44)
r8:be8eda64 r7:00000008 r6:00000008 r5:cdcaf380 r4:00000000
[<c00dc11c>] (vfs_ioctl+0x0/0x44) from [<c00dc854>] (do_vfs_ioctl+0x500/0x540)
[<c00dc354>] (do_vfs_ioctl+0x0/0x540) from [<c00dc8ec>] (sys_ioctl+0x58/0x7c)
[<c00dc894>] (sys_ioctl+0x0/0x7c) from [<c004ce00>] (ret_fast_syscall+0x0/0x30)
r8:c004cfa8 r7:00000036 r6:00000000 r5:00000000 r4:be8eda64
Code: 0afffffc e59c2010 e3a03801 e3a01806 (e5823000)
---[ end trace b98e994f26de0d4b ]---
We have this error too. Actually lots of people are seeing this error and it is entirely because TI decided that the hardware watchdog should not reset the HDVICPs when the hardware watchdog is triggered ("warm reset"). This was a design mistake in my opinion.
The work around is to manually reset the HDVICPs at boot time (or you could wire up the hardware watchdog pin such that it performs a full cold reset as opposed to the warm reset that is done from the hardware watchdog). There are instructions on manually resetting the HDVICPs (which must be done BEFORE running your script) in the TRM, section 18.5.8. Let me know how it goes - we haven't got it working yet.
Hi,
Watchdog reset is a warm reset and hence it doesn't reset all the modules. This is the reason for the above hang/ errors.
Please try this uboot patch :
diff --git a/arch/arm/cpu/arm_cortexa8/start.S b/arch/arm/cpu/arm_cortexa8/start.S index 423b01b..260dbc7 100644 --- a/arch/arm/cpu/arm_cortexa8/start.S +++ b/arch/arm/cpu/arm_cortexa8/start.S @@ -95,6 +95,11 @@ FIQ_STACK_START: .word 0x0badc0de #endif + +#define PRM_DEVICE_RSTTST 0x481800A8 +prm_device_rsttst: + .word PRM_DEVICE_RSTTST + /* * the actual reset code */ @@ -107,6 +112,15 @@ reset: bic r0, r0, #0x1f orr r0, r0, #0xd3 msr cpsr,r0 + /*Force cold reset if a + warm reset is detected*/ + ldr r0, prm_device_rsttst + ldr r1, [r0] + str r1, [r0] + cmp r1, #2 + beq reset_cpu + cmp r1, #8 + beq reset_cpu #if (CONFIG_OMAP34XX) /* Copy vectors to mask ROM indirect addr */ diff --git a/board/ti/ti8168_dvr/dvr.c b/board/ti/ti8168_dvr/dvr.c index d6ab5f1..38733f2 100644 --- a/board/ti/ti8168_dvr/dvr.c +++ b/board/ti/ti8168_dvr/dvr.c @@ -1246,6 +1246,8 @@ void s_init(u32 in_ddr) #ifdef CONFIG_TI816X_VOLT_SCALE voltage_scale_init(); #endif + + udelay(100); } /* optionally do something like blinking LED */
Please refer to thread http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/p/276202/1026048.aspx#1026048 for more details on the above changes.
Regards,
Reshma