1394 and XP-SP2

I have a 1394 device (proprietary interface) that has difficulty
connecting to WinXP Service Pack 2. So far my attempts to solve the
problem have failed. Before pulling out the big iron I thought I would
check here to see if someone might have some insight into what is
going on. Here is what I know:

  • No problems with W2k or XP (base or service pack 1a).

-Under Service
pack 2 getting my device connected becomes a hit or miss business. The
problem occurs with Windows reading the CSR registers from my device
before the driver is loaded and appears to be related to my device
coming up as the root node (I do not implement BM, IRM or cycle
start). Once my driver loads I generally force the host to be root and
everything works fine as it always has.

Debug output from my device shows XP probing the CSR
registers but getting stuck part way through. It appears as if XP has
a miss read, re-trys once and if it fails again it gives up.
Causing bus resets on my device (i.e. the hardware) may succeed in
coaxing XP into continuing its read operations.

Ensuring that my device is fully powered up before connecting the
firewire cable generally ensures success. However, issuing a bus reset
from my device will sometimes cause a surprise removal (presumably
because it has encountered an error doing its partial re-read of the
CSR).

This is not intended to be enough information to debug my problem. I’m
just checking to see if someone on the list may have some knowledge of
what changed in XP-SP2 that could be relevant.

Robert Newton