PC is busy with USBPORT ISR.

An issue is like this :
2 USB devices are connected with PC and works well. I restart them by sending command . The devices restarts and ,however , PC hangs and recovers for a long time .
Here is output from WinDbg

f7a7dea4 f6ec5241 80545d0c 862b7008 00000000 hal!KfReleaseSpinLock+0x1a (FPO: [0,0,0])
f7a7debc f6ec652a 73706547 80545d0c 862b7008 USBPORT!USBPORT_GetEndpointState+0x8f (FPO: [1,1,4])
f7a7dee4 f6ec9092 86c28028 50457270 86c280e0 USBPORT!USBPORT_CoreEndpointWorker+0x1f2 (FPO: [2,4,4])
f7a7df44 f6ec9f36 022b7008 ffffffff 80545d0c USBPORT!USBPORT_FlushPendingList+0x2dc (FPO: [2,17,0])
f7a7df74 f6ed8023 86c28028 80545d0c 86c28028 USBPORT!USBPORT_DpcWorker+0x192 (FPO: [1,5,4])
f7a7dfb0 f6ed819a 86c28028 00000001 806e4ae4 USBPORT!USBPORT_IsrDpcWorker+0x38f (FPO: [2,9,4])
f7a7dfcc 805450bf 86c2864c 6b755044 00000000 USBPORT!USBPORT_IsrDpc+0x166 (FPO: [4,0,4])
f7a7dff4 80544c2b f7ac5c84 00000000 00000000 nt!KiRetireDpcList+0x61 (FPO: [0,1,0])
f7a7dff8 f7ac5c84 00000000 00000000 00000000 nt!KiDispatchInterrupt+0x2b (FPO: [Uses EBP] [0,0,1])
WARNING: Frame IP not in any known module. Following frames may be wrong.
80544c2b 00000000 00000009 0081850f bb830000 0xf7ac5c84

I set a breakpoint to the entry point of nt!USBPORT_IsrDpc, and it is continuously hit. So I believe that the device possibly trigger a lot of interrupts which flow into the interrupt queue of USBPORT. Right ? ?

To my surprised , If one device is connected , then there isn’t such a issue like that .

Could you help to share some ideas ?

On Mon, Aug 31, 2009 at 6:21 AM, <xiedong_sl> wrote:
> ?I restart them by sending command .

What exactly do you mean by that?

Mark Roddy</xiedong_sl>

After the device is enumerated successfully , we can send customized command to them using our tool . Among all commands , some are designed to notify phone of restarting .

I want to mean I restart these devices by sending commands using tool, instead of manually power down and up .