Re: pxa25x exception on resume (Windows CE5)




Oops! You're right, when I tried it yesterday it didn't seem to be
compiling so I abandoned it too quickly. Including the right headerfile
fixed that.... I guess I've been hunting suspend/resume bugs too long
;-). I'm now compiling without the touch driver...

Regards,
Niels


Dean Ramsier schreef:

What do you mean you can't call SetSystemPowerState from an app? Of course
you can. Everybody links to coredll (generally), so the functions in it are
available to all.

--
Dean Ramsier - eMVP
BSQUARE Corporation


"Niels Brouwers" <niels.brouwers@xxxxxxxx> wrote in message
news:1166630759.929951.294010@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Thanks for the answer.

Yes, that's what I was thinking as well. However, ss it turned out, the
call stack for user mode was not restored correctly causing a crash
when KCALL got out of supervisor mode. Fixed that now (I think).

So now I got a bit further with this problem, now I'm getting a little
different output that you can see below. It gets out of suspend and
tries to powerup the devices. I have taken out nearly all drivers
except one that the touch is depending on.

Could it be that the touch driver gets an interrupt, trying to access a
driver that is not yet powered up and then creates a priority
inversion? Based on other postings, that's what I can make of it. Any
thoughts appreciated as usual!

Niels

P.s.: I could take out the touchdriver but then....how to go to suspend
(I don't have any other means of input)....ofcourse I could call
setsystempowerstate somewhere but it won't work from an application
(it's in coredll).

--8<-----new output-------8<--------

Call OEMPowerOffAsm()
Return redirectPO()
Return OEMPowerOffAsm()
Back from OEMPowerOff
Calling device manager power proc.
Calling GWES power proc.
DispDrvrPowerHandler
DdsiTouchPanelPowerHandler
Returning to normally scheduled programming.
ler function yield to low priority thread.
DEBUG_BREAK @8011bf94 MD=1f Ignored.
Data Abort: Thread=83d92400 Proc=809c0ca0 'device.exe'
AKY=00000005 PC=f000fb40(???+0xf000fb40) RA=f000fe78(???+0xf000fe78)
BVA=060000f
0 FSR=00000007

Unhandled exception c0000005:
Terminating thread 83d92400
Data Abort: Thread=83d92400 Proc=809c0ca0 'device.exe'
AKY=00000005 PC=f000fb40(???+0xf000fb40) RA=f000feb0(???+0xf000feb0)
BVA=c00000f
5 FSR=000000f5

Unhandled exception c0000005:
Exception 'Data Abort' Thread=83d92400 AKY=00000005 PC=60000010
BVA=c00000f5
R0=f000fb40 R1=00000000 R2=0608fc98 R3=010100a8
R4=00000000 R5=00000000 R6=00000000 R7=00000000
R8=00000000 R9=00000000 R10=00000000 R11=03f87518
R12=0608fc68 SP=f000fe78 Lr=03f8c1d0 Psr=40000010
Can't terminate thread 83d92400, sleeping forever
Undefined Instruction: Thread=83b8d4a8 Proc=809c0d90 'gwes.exe'
AKY=00000009 PC=0834fe90(gwes.exe+0x0033fe90)
RA=0834fe5c(gwes.exe+0x0033fe5c) B
VA=09fff984 FSR=000000f5


.



Relevant Pages