Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion Groups
End Users
Pocket PCActiveSyncMultimediaEBooksWirelessSmartPhones
Developers
Windows MobileSmartPhonesWinCE ProgrammingVB for WinCEVC++ for WinCEPlatform BuilderTest Tools
PocketPC DirectoryFree SoftwareWeb Resources
Related Topics
PalmMobile PhonesMore Topics ...

Pocket PC Forum / Developers / WinCE Programming / July 2008

Tip: Looking for answers? Try searching our database.

How to debug resume crashes

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
shai - 10 Jul 2008 12:40 GMT
Hi,
When doing a suspend resume cycle (waking up by rtc) I get exceptions
and the image stops working.
I get back from the suspend state and finish the OEMPowerOff call, and
then I get exceptions without specifying in which dll they occur. I
tried to build a thin client without using almost any of my drivers
(in case the problem is in one of the PowerUp function), but the
problem persists. When I ran a release image with KITL and
KernelDebugger I got a debugchk failure in the kcall.c file - line
1152 (this debugchk says that we are trying to wake a non sleeping
thread).
So my question is:
Can you advise me on ways to debug this problem. I have no idea how to
know what is the cause of the exceptions.

My Environment is:
PXA300
WinCE6.0 - including all QFE's - even the june one
BSP based on Zylonite PXA310

I compare the Suspend and resume routines to the ones implemented in
the Zylonite PXA300 WinCE5.0 BSP and they are the same. From my
understanding of the developer manual this is not a problem due to the
difference in the CPU's.

The exceptions I get are as follows:
Return from OEMPowerOff
Exception 'Data Abort'(4) Thread-Id=05b50002(pth=8288b1c8) PC=8003ab30
BVA=c3d0042a, dwInfo = 00000003
R0=60000093  R1=60000013  R2=6000001f  R3=ffffc800
R4=80020fd4  R5=81572014  R6=81572728  R7=81574704
R8=000000f9  R9=00000064 R10=00000000 R11=c031e5c4
R12=8003ab30  SP=d3b4f170  Lr=8003ab30 Psr=6000001f
Exception 'Data Abort'(4) Thread-Id=05b50002(pth=ffffc634) PC=80037734
BVA=c3d0042a, dwInfo = 00000003
R0=ffffc800  R1=80032898  R2=87fdc938  R3=c3d0040e
R4=81572014  R5=00000000  R6=81574704  R7=00000000
R8=00000001  R9=00000000 R10=00000001 R11=00000001
R12=00000000  SP=ffffc784  Lr=80037704 Psr=a0000013
Exception 'Data Abort'(4) Thread-Id=05b50002(pth=8288b1c8) PC=8003ab30
BVA=e5823014, dwInfo = 00000005
R0=60000093  R1=60000013  R2=6000001f  R3=ffffc800
R4=80020fd4  R5=81572014  R6=81572728  R7=81574704
R8=000000f9  R9=00000064 R10=00000000 R11=c031e5c4
R12=8003ab30  SP=d3b4f170  Lr=8003ab30 Psr=6000001f
Exception 'Data Abort'(4) Thread-Id=05b50002(pth=ffffc398) PC=8004004c
BVA=e5823014, dwInfo = 00000005
R0=87ffe09c  R1=80037734  R2=80040048  R3=e5823000
R4=87ffe09c  R5=81572410  R6=80037734  R7=80040048
R8=ffffc538  R9=00000000 R10=ffffc5b0 R11=80037734
R12=00000000  SP=ffffc4e8  Lr=80040130 Psr=a0000013
Exception 'Data Abort'(4) Thread-Id=05b50002(pth=8288b1c8) PC=8003ab30
BVA=e5823014, dwInfo = 00000005
R0=60000093  R1=60000013  R2=6000001f  R3=ffffc800
R4=80020fd4  R5=81572014  R6=81572728  R7=81574704
R8=000000f9  R9=00000064 R10=00000000 R11=c031e5c4
R12=8003ab30  SP=d3b4f170  Lr=8003ab30 Psr=6000001f
Exception 'Data Abort'(4) Thread-Id=05b50002(pth=ffffc0fc) PC=8004004c
BVA=e5823014, dwInfo = 00000005
R0=87ffe09c  R1=8004004c  R2=80040048  R3=e5823000
R4=87ffe09c  R5=81572410  R6=8004004c  R7=80040048
R8=ffffc29c  R9=00000000 R10=ffffc314 R11=8004004c
R12=00000000  SP=ffffc24c  Lr=80040130 Psr=a0000013
Exception 'Data Abort'(4) Thread-Id=05b50002(pth=8288b1c8) PC=8003ab30
BVA=e5823014, dwInfo = 00000005

and on it goes.

Any suggestion on how to debug - or even a thought on the cause - will
be welcomed.

Thanks,
Shai
Michel Verhagen (eMVP) - 13 Jul 2008 22:04 GMT
Well, you can use the exception information to find out exactly in what
function in what module and on what line the exception happens. From
there you should be able to fix the problem.

See this excellent article by Bruce:
http://geekswithblogs.net/BruceEitman/archive/2008/06/02/platform-builder-find-t
he-source-of-a-data-abort-an.aspx


Good luck,

Michel Verhagen, eMVP
Check out my blog: http://GuruCE.com/blog

 GuruCE Ltd.
 Microsoft Embedded Partner
 http://GuruCE.com
 Consultancy, training and development services.

> Hi,
> When doing a suspend resume cycle (waking up by rtc) I get exceptions
[quoted text clipped - 69 lines]
> Thanks,
> Shai
paul_chao@techware.com.tw - 15 Jul 2008 12:06 GMT
> Well, you can use the exception information to find out exactly in what
> function in what module and on what line the exception happens. From
[quoted text clipped - 87 lines]
>
> - 顯示被引用文字 -

Does your SDRAM or DDRRAM has been enabled (return back from self-
refresh mode) resume from OEMPowerOff ?
Looks like the memory access has some problems.

-Paul @ TECHWARE
shai - 15 Jul 2008 12:44 GMT
Thanks for the feedback,

Michel - I took a look at Bruce's blog, but the exception's data seems
to be corrupted, and I could not correlate it to Bruce's post.

Paul - You are right, I am checking it now and I wanted to post back
when I found the root cause. I have two banks of DRAM and it seems
that the 2nd bank is not initialized properly when returning from
suspend. I pinned it to this after trying to jump back to the start of
the image when coming back from suspend, and since nothing should have
changed the image should have started as if we started after a cold
boot, BUT it crashed after trying to register the extended DRAM.

I'll post back when I find the exact problem.

Thanks,
Shai

On Jul 15, 2:06 pm, paul_c...@techware.com.tw wrote:

> > Well, you can use the exception information to find out exactly in what
> > function in what module and on what line the exception happens. From
[quoted text clipped - 93 lines]
>
> -Paul @ TECHWARE
shai - 29 Jul 2008 13:56 GMT
Well for anyone who finds this post useful in the future:
When going to sleep the DMC(Dynamic memory controller) control
register was reset to enable only bank number 1, so enabling DCSE1
when resuming resolved the problem.

Shai

> Thanks for the feedback,
>
[quoted text clipped - 112 lines]
>
> > -Paul @ TECHWARE
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.