Fixes in this version include: 1. Changed around the DRIVER_LOCK for 2.0.33. This improves reliability and removes some problems I could force with the kernel spinning in an infinite loop. 2. Changes to the abort/reset code. These changes should squash the bug related to No active SCB for reconnecting target, issuing BUS DEVICE RESET messages that could get printed out after a bus recovery operation was performed. 3. Changes to abort/reset code. These changes should squash the bug related to commands queued exceeds queue depth messages. 4. Changes to abort/reset code. These changes should squash the bugs that could cause us to never recover from a reset operation depending on the device negotiation parameters. 5. Changes to the negotiation code in regards to tag commands. This should help devices that die if both WIDE and Sync negotiation is enabled. It also helps the reset code. 6. Fixed the same bug in multiple places where we incorrectly set the SCSISEQ register to 0 instead of the current value &'ed with ~ENSELO. 7. Sparc updates (thanks to Dave Miller for testing these for me and for providing the initial work which I simply incorporated). This driver should work "out of the box" on Sparc machines with a PCI bus now. Additionally, it may work out of the box on PPC machines as well. 8. Changes to message code to get rid of the "panic: AWAITING_MSG for scb that doesn't have a waiting message" problem (closely related to abort/reset fixes). That's it.