Not Quite Perfect: Troubleshooting Thunderbolt
Thunderbolt as an interface on Apple's Macs has an advantage with regard to integration and validation. The company's control over the ecosystem (from the operating system to the software to the hardware) ensures the technology works exactly like it should. That's not the case with PCs, though. Right now, Windows-based systems face two specific problems relating to daisy-chaining and hot-plugging.
Both issues relate to how Thunderbolt detects system devices, and are complicated by Windows 7 (x86 and x64) driver limitations that prevent PCIe hot-plugging. This becomes a problem because Thunderbolt relies on PCIe signaling to connect devices. Intel’s answer is special BIOS code that works around the issue. But Intel's partners must also make the requisite changes, either in hardware or through a BIOS update.
Ironing Out Thunderbolt's Kinks
In preparing for this piece, we ran across a handful of different issues. Our MSI Z77A-GD80 motherboard required two BIOS updates to help address them. The first one (v1.0) actually caused a BSOD when a Thunderbolt-based device was removed from a running system. The second one (v1.1 B1), intended to resolve the first, created a problem of its own.
More specifically, BIOS v1.0 required you to connect your Thunderbolt device before powering up. Attaching it to a running machine caused the system to incorrectly detect the device. The only solution was to restart.
In this case, unplugging the incorrectly-detected LaCie Little Big Disk resulted in a reproducible blue-screen. The problem would always resolve itself after restarting with the Thunderbolt device attached.
Updating our system to BIOS v1.1 B1 fixed the hot-plugging. However, Windows would then incorrectly detect the Native Host Interface (illustrated in the first picture on this page), which is used for Thunderbolt software protocols and device discovery, resulting in random instability. It is possible to disable NHI in the BIOS, but that'd be self-defeating since NHI is required for hot-plugging.
One other problem with daisy-chaining materialized when we'd restart or wake the machine up from sleep mode, often causing a device in the chain to disappear. Any component downstream from the missing device is subsequently affected, since it's supposed to be attached to that peripheral's PCI root.
We committed to testing three Thunderbolt devices for this story (Promise's Pegasus RAID R6, LaCie's Little Big Disk, and Seagate's GoFlex Thunderbolt). However, our daisy-chaining issue appears to affect devices downstream of the second Thunderbolt device. Each party involved believes they know who's to blame. But rather than point fingers, we'll just say this illustrates the conundrum of Thunderbolt in the PC space, compared to Apple's more tightly-controlled fiefdom.
Fortunately, Intel claims that any of the problems we encountered can be addressed at a software (BIOS) level. We've been told that there is no need to wait for Windows 8 for robust Thunderbolt support from an operating system, since the technology centers on two already-well-established standards: PCIe and DisplayPort. Driver support is seemless. If a PCIe driver exists, you can use it for Thunderbolt.