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.

Linux/DRA726: SGX lockup on DRA726

Part Number: DRA726

Tool/software: Linux

I got this message this morning

Embedded wizard application running on top of weston. yocto rootfs based on latest 3.03 industrial release

[  871.168602] PVR_K:(Error): SGXOSTimer() detected SGX lockup (0xcd6 tasks)
[  871.196961] PVR_K: HWRecoveryResetSGX: SGX Hardware Recovery triggered
[  871.226947] PVR_K: SGX debug (SGX_DDK sgxddk MAIN@3699939)
[  871.248511] PVR_K:(Error): SGX Register Base Address (Linear):   0xf2c80000
[  871.286585] PVR_K:(Error): SGX Register Base Address (Physical): 0x56000000
[  871.316613] PVR_K: Running SGXREG Debug Scripts:
[  871.337189] PVR_K: (HYD)
[  871.350520] PVR_K:   (SGXREG) 0x00004000 : 0x00000000
[  871.355505] PVR_K:   (SGXREG) 0x00004004 : 0x0000000A
[  871.392771] PVR_K:   (SGXREG) 0x00004008 : 0x0000000F
[  871.397758] PVR_K:   (SGXREG) 0x00004024 : 0x00000001
[  871.439601] PVR_K:   (SGXREG) 0x00004118 : 0x00000010
[  871.463027] PVR_K:   (SGXREG) 0x0000412C : 0x00000000
[  871.492220] PVR_K:   (SGXREG) 0x00004404 : 0x00000000
[  871.497206] PVR_K:   (SGXREG) 0x00004C04 : 0x00080000
[  871.533379] PVR_K:   (SGXREG) 0x00004C08 : 0x00000000
[  871.556106] PVR_K:   (SGXREG) 0x00004C74 : 0x00000000
[  871.580421] PVR_K:   (SGXREG) 0x00004C78 : 0x00001000
[  871.605725] PVR_K:   (SGXREG) 0x00004CA8 : 0x00000000
[  871.626549] PVR_K: (P0)
[  871.638351] PVR_K:   (SGXREG) 0x00008000 : 0x002AAAAA
[  871.660305] PVR_K:   (SGXREG) 0x00008004 : 0x0A8A8AAA
[  871.665309] PVR_K:   (SGXREG) 0x00008008 : 0x001800B8
[  871.710501] PVR_K:   (SGXREG) 0x00008118 : 0x000000B0
[  871.729757] PVR_K:   (SGXREG) 0x0000812C : 0x24142E00
[  871.734743] PVR_K:   (SGXREG) 0x000084E4 : 0x0001FFFF
[  871.779161] PVR_K:   (SGXREG) 0x00008658 : 0x00000000
[  871.799754] PVR_K:   (SGXREG) 0x00008A74 : 0x0E208200
[  871.821088] PVR_K:   (SGXREG) 0x00008BA4 : 0x00000014
[  871.847151] PVR_K:   (SGXREG) 0x00008C04 : 0x00080000
[  871.869645] PVR_K:   (SGXREG) 0x00008C08 : 0x00000000
[  871.896772] PVR_K:   (SGXREG) 0x00008C74 : 0x00000000
[  871.917894] PVR_K:   (SGXREG) 0x00008C78 : 0x00001007
[  871.939980] PVR_K:   (SGXREG) 0x00008CB4 : 0x00000000
[  871.944971] PVR_K:   (SGXREG) 0x00008E04 : 0x00000000
[  871.990950] PVR_K:   (SGXREG) 0x00008624 : 0x00000000
[  871.995936] PVR_K:   (SGXREG) 0x00008628 : 0x00000000
[  872.027294] PVR_K:   (SGXREG) 0x00008630 : 0x00000000
[  872.051516] PVR_K:   (SGXREG) 0x00008664 : 0x00000000
[  872.079714] PVR_K:   (SGXREG) 0x00008734 : 0x00000000
[  872.084699] PVR_K:   (SGXREG) 0x00008AA4 : 0xAAAAAAAA
[  872.123503] PVR_K:   (SGXREG) 0x00008AA8 : 0xAAAAAAAA
[  872.128494] PVR_K:   (SGXREG) 0x00008B08 : 0x00019D08
[  872.169898] PVR_K:   (SGXREG) 0x00008B14 : 0x0001CF05
[  872.191685] PVR_K:   (SGXREG) 0x00008B0C : 0x00015E89
[  872.220249] PVR_K:   (SGXREG) 0x00008B18 : 0x000116FA
[  872.225240] PVR_K:   (SGXREG) 0x00008B10 : 0x00010CD6
[  872.263196] PVR_K:   (SGXREG) 0x00008B1C : 0x00010000
[  872.268181] PVR_K:   (SGXREG) 0x00008B80 : 0xAAAAAAAA
[  872.306621] PVR_K:   (SGXREG) 0x00008B84 : 0xAAAAAAAA
[  872.329094] PVR_K:   (SGXREG) 0x00008B88 : 0x0001F741
[  872.334079] PVR_K:   (SGXREG) 0x00008B94 : 0x00019553
[  872.379238] PVR_K:   (SGXREG) 0x00008B8C : 0x0001FDDD
[  872.399023] PVR_K:   (SGXREG) 0x00008B98 : 0x00018749
[  872.425349] PVR_K:   (SGXREG) 0x00008B90 : 0x00010000
[  872.446139] PVR_K:   (SGXREG) 0x00008B9C : 0x00010000
[  872.470300] PVR_K: (P1)
[  872.472758] PVR_K:   (SGXREG) 0x0000C000 : 0x00000000
[  872.504347] PVR_K:   (SGXREG) 0x0000C004 : 0x00000000
[  872.529895] PVR_K:   (SGXREG) 0x0000C008 : 0x00000000
[  872.534881] PVR_K:   (SGXREG) 0x0000C118 : 0x00000000
[  872.573376] PVR_K:   (SGXREG) 0x0000C12C : 0x00000000
[  872.578367] PVR_K:   (SGXREG) 0x0000C4E4 : 0x00000000
[  872.619411] PVR_K:   (SGXREG) 0x0000C658 : 0x00000000
[  872.624402] PVR_K:   (SGXREG) 0x0000CA74 : 0x00000000
[  872.662637] PVR_K:   (SGXREG) 0x0000CBA4 : 0x00000000
[  872.667623] PVR_K:   (SGXREG) 0x0000CC04 : 0x00000000
[  872.714785] PVR_K:   (SGXREG) 0x0000CC08 : 0x00000000
[  872.735319] PVR_K:   (SGXREG) 0x0000CC74 : 0x00000000
[  872.756927] PVR_K:   (SGXREG) 0x0000CC78 : 0x00000000
[  872.778043] PVR_K:   (SGXREG) 0x0000CCB4 : 0x00000000
[  872.805305] PVR_K:   (SGXREG) 0x0000CE04 : 0x00000000
[  872.829461] PVR_K:   (SGXREG) 0x0000C624 : 0x00000000
[  872.834448] PVR_K:   (SGXREG) 0x0000C628 : 0x00000000
[  872.873793] PVR_K:   (SGXREG) 0x0000C630 : 0x00000000
[  872.901816] PVR_K:   (SGXREG) 0x0000C664 : 0x00000000
[  872.906803] PVR_K:   (SGXREG) 0x0000C734 : 0x00000000
[  872.944085] PVR_K:   (SGXREG) 0x0000CAA4 : 0x00000000
[  872.966542] PVR_K:   (SGXREG) 0x0000CAA8 : 0x00000000
[  872.986329] PVR_K:   (SGXREG) 0x0000CB08 : 0x00000000
[  873.008116] PVR_K:   (SGXREG) 0x0000CB14 : 0x00000000
[  873.034603] PVR_K:   (SGXREG) 0x0000CB0C : 0x00000000
[  873.059945] PVR_K:   (SGXREG) 0x0000CB18 : 0x00000000
[  873.081603] PVR_K:   (SGXREG) 0x0000CB10 : 0x00000000
[  873.109565] PVR_K:   (SGXREG) 0x0000CB1C : 0x00000000
[  873.114551] PVR_K:   (SGXREG) 0x0000CB80 : 0x00000000
[  873.154093] PVR_K:   (SGXREG) 0x0000CB84 : 0x00000000
[  873.178737] PVR_K:   (SGXREG) 0x0000CB88 : 0x00000000
[  873.196224] PVR_K:   (SGXREG) 0x0000CB94 : 0x00000000
[  873.217550] PVR_K:   (SGXREG) 0x0000CB8C : 0x00000000
[  873.239378] PVR_K:   (SGXREG) 0x0000CB98 : 0x00000000
[  873.268745] PVR_K:   (SGXREG) 0x0000CB90 : 0x00000000
[  873.273759] PVR_K:   (SGXREG) 0x0000CB9C : 0x00000000
[  873.312678] PVR_K: SGX Register Dump:
[  873.316375] PVR_K: (P0) EUR_CR_CORE_ID:          01191201
[  873.354612] PVR_K: (P0) EUR_CR_CORE_REVISION:    00010106
[  873.377816] PVR_K: (P0) EUR_CR_EVENT_STATUS:     24142E00
[  873.402262] PVR_K: (P0) EUR_CR_EVENT_STATUS2:    000000B0
[  873.438379] PVR_K: (P0) EUR_CR_BIF_CTRL:         00000000
[  873.460073] PVR_K: (P0) EUR_CR_BIF_BANK0:        00001007
[  873.465496] PVR_K: (P0) EUR_CR_BIF_INT_STAT:     00080000
[  873.503341] PVR_K: (P0) EUR_CR_BIF_FAULT:        00000000
[  873.532307] PVR_K: (P0) EUR_CR_BIF_MEM_REQ_STAT: 00000000
[  873.537729] PVR_K: (P0) EUR_CR_CLKGATECTL:       002AAAAA
[  873.580870] PVR_K: (P1) EUR_CR_EVENT_STATUS:     00000000
[  873.609087] PVR_K: (P1) EUR_CR_EVENT_STATUS2:    00000000
[  873.614510] PVR_K: (P1) EUR_CR_BIF_CTRL:         00000000
[  873.655974] PVR_K: (P1) EUR_CR_BIF_BANK0:        00000000
[  873.682058] PVR_K: (P1) EUR_CR_BIF_INT_STAT:     00000000
[  873.687480] PVR_K: (P1) EUR_CR_BIF_FAULT:        00000000
[  873.731285] PVR_K: (P1) EUR_CR_BIF_MEM_REQ_STAT: 00000000
[  873.759874] PVR_K: (P1) EUR_CR_CLKGATECTL:       00000000
[  873.765298] PVR_K:  Host Ctl flags= 0000000c
[  873.803623] PVR_K: SGX Host control:
[  873.807222] PVR_K:   (HC-0) 0x00000001 0x00000000 0x00000000 0x00000000
[  873.849475] PVR_K:   (HC-10) 0x00000001 0x0000000A 0x0004A666 0x00000000
[  873.880385] PVR_K:   (HC-20) 0x00000000 0x00000001 0x00000000 0x00000000
[  873.911137] PVR_K:   (HC-30) 0x0016BC95 0xEF26A540 0x00000000 0x00000000
[  873.941491] PVR_K:   (HC-40) 0x00000000 0x00000000 0x00000000 0x00000000
[  873.948136] PVR_K:   (HC-50) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.005385] PVR_K:   (HC-60) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.031256] PVR_K:   (HC-70) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.063764] PVR_K:   (HC-80) 0x00000000 0x00000000 0x00031E5A 0xBFFFFFFF
[  874.092773] PVR_K: SGX TA/3D control:
[  874.096453] PVR_K:   (T3C-0) 0xF4003000 0xF40031A0 0xF4002000 0x00000000
[  874.139440] PVR_K:   (T3C-10) 0x00000000 0x00000002 0x00000000 0x00000000
[  874.170432] PVR_K:   (T3C-20) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.202856] PVR_K:   (T3C-30) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.233872] PVR_K:   (T3C-40) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.262911] PVR_K:   (T3C-50) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.294589] PVR_K:   (T3C-60) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.328969] PVR_K:   (T3C-70) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.358840] PVR_K:   (T3C-80) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.365571] PVR_K:   (T3C-90) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.418931] PVR_K:   (T3C-A0) 0x00000000 0x00000000 0x00000000 0xF4002B20
[  874.447960] PVR_K:   (T3C-B0) 0x00000000 0xF4000000 0xBB85C000 0x00000000
[  874.481067] PVR_K:   (T3C-C0) 0x00000000 0xF4128300 0xF4002B20 0xF411DA20
[  874.512346] PVR_K:   (T3C-D0) 0xF400FF80 0x00000000 0x00000000 0xF4002FA0
[  874.543802] PVR_K:   (T3C-E0) 0xF411F7C0 0x0070322E 0x00000000 0x00000000
[  874.572538] PVR_K:   (T3C-F0) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.602097] PVR_K:   (T3C-100) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.634870] PVR_K:   (T3C-110) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.669326] PVR_K:   (T3C-120) 0x00000000 0x00006352 0x00006352 0x00000000
[  874.698595] PVR_K:   (T3C-130) 0xF2016010 0xF2016014 0xF2016034 0xF2016030
[  874.730183] PVR_K:   (T3C-140) 0xF4004000 0xF400F820 0xF4002020 0xF411D000
[  874.762593] PVR_K:   (T3C-150) 0xF411EDA0 0x00000000 0x00000001 0x0000031B
[  874.793589] PVR_K:   (T3C-160) 0x0000032F 0x00000000 0x00000000 0x00000000
[  874.823774] PVR_K:   (T3C-170) 0x00000003 0x00000001 0x00000000 0x00000002
[  874.854200] PVR_K:   (T3C-180) 0x00000000 0x00000000 0x00000000 0x00000000
[  874.885663] PVR_K:   (T3C-190) 0x00000000 0x00000000 0xF400FF80 0xF4128300
[  874.919993] PVR_K: SGX Kernel CCB WO:0x74 RO:0x74
[  874.939761] PVR_K: Active syncs
[  874.943009] PVR_K:   SyncInfo 4:
[  874.969571] PVR_K:           Write ops (0xef0010a4): P/C = 8476/8475 (0x0000211c/0x0000211b)
[  875.005773] PVR_K:           Read ops (0xef0010ac): P/C = 0/0 (0x00000000/0x00000000)
[  875.038741] PVR_K:           Read ops 2 (0xef0010b4): P/C = 0/0 (0x00000000/0x00000000)
[  875.070840] PVR_K:   SyncInfo 2:
[  875.074001] PVR_K:           Write ops (0xef001054): P/C = 0/0 (0x00000000/0x00000000)
[  875.121151] PVR_K:           Read ops (0xef00105c): P/C = 25427/25426 (0x00006353/0x00006352)
[  875.157232] PVR_K:           Read ops 2 (0xef001064): P/C = 0/0 (0x00000000/0x00000000)
[  875.189659] PVR_K:   SyncInfo 0:
[  875.192823] PVR_K:           Write ops (0xef001004): P/C = 25427/25426 (0x00006353/0x00006352)
[  875.243141] PVR_K:           Read ops (0xef00100c): P/C = 0/0 (0x00000000/0x00000000)
[  875.273451] PVR_K:           Read ops 2 (0xef001014): P/C = 0/0 (0x00000000/0x00000000)


Michel

  • Hi Michael,

    I have forwarded your question to SGX expert.

    Regards,
    Yordan
  • Hi Michael,

    Thanks for capturing the important traces that would prove to be useful in the analysis. We will look into this further.
    I would like to request for some further information.

    1. Which is the exact version of the SDK that you are using - can you capture the TI download link?
    2. What is the hardware that you are running on - are you using the TI EVM, please provide details about this?
    3. Do you have any changes on top of the TI standard SDK, if yes, then what components have been updated?
    4. Is the issue consistently reproducible - please provide details of the scenario that you see this problem
    5. Would it be possible to share the application with TI inorder to help us debug this a bit more - I can set up a secure file drop if the application is proprietary.

    Regards
    Karthik
  • Karthik,

    1- A customized yocto based on industrial SDK 3.03
    2- Custom board using a DRA726 with a custom 12 inch LVDS display from US Micro, a RGB to LVDS converter is used.
    3- We have two versions, one for development support and one without it. Highly customized but keeping the EGL from TI as is. Packaging used is rpm for better package management.
    4- Random, doesn't happen very often. I don't remember seeing this particular problem with the 7 inch LCD on the TI Beagleboard X15 version.
    5- That could be arranged later on when we have many new boards as we would have to provide you with a board. You would need to talk to my manager about that. That could be a couple of months from now.
    I could provide you with the yocto recipes directory but that would not be much help without hardware.

    Michel Catudal
    ACTIA Corp
  • Hi Michel,

    Thank you for your inputs.

    The information that you shared earlier is not sufficient to root cause the issue.
    We are exploring the possibility of adding relevant debug flags and reproducing the issue.

    Could you please let us know how difficult it is to recreate the issue? I understand that it is random but can you
    a. comment on the ease of reproducing the issue - can you automate the run and let the issue be reproduced or does it involve a sequence of manual actions on the menu to recreate the issue?
    b. in terms of time - roughly how often you see the problem?

    Regards
    Karthik
  • I do not get involved much in the embedded wizard code so I have this disabled for most of my work. My job is more the Linux side of things (u-boot, drivers, kernel)
    During the day that I setup an image to ship to the customer I saw the issue 3 times, purely at random. I seem to have more issue when I display the maps from Navionics but that may just be a coincidence.
    I will need more test to do what you need and this can't happen for several weeks as I will not have any board for a few weeks to work with.

    Michel Catudal
    ACTIA Corp