This documents my personal flow for downloading and installing a Linux kernel with my xHCI and USB 3.0 code. Until the code is in the upstream kernel and shipping in Linux distributions, you’ll have to follow these directions to get Linux USB 3.0 support.
USB 3.0 support: coming soon to a Linux kernel near you!
#tags usb,usb3,linux,open source
The xHCI (USB 3.0) host controller driver and initial support for USB 3.0 devices is now publicly available on my kernel.org git tree. Greg Kroah-Hartman has queued the patches for 2.6.31, so Linux users should have official USB 3.0 support around September 2009. This is impeccable timing, since NEC recently announced they’ll be producing 1 million xHCI PCI express add-in cards in September.
This means that Linux will be the first operating system with official USB 3.0 support. I’m working with Keve Gabbert (the OSV person in my group at Intel) to make sure that Linux distributions like Ubuntu and Red Hat pick up the xHCI driver. Advanced users can always compile their own kernel on a standard distro install.
I hope that some USB 3.0 vendors who have prototypes will test with my driver. Instructions on how to compile a kernel using my git tree will follow.
This is a giant project that I’ve been working on for the past year and a half. It’s gratifying to see the code finally released, and exciting to know that hardware is on its way.
My Zora List
My friend Maria (@ubergeeke) once mentioned reading about someone’s Zora list.
Without further ado, here is my Zora list:
– Eat 70% of my food from my garden for one summer. Yes, that’s a big garden.
– Sail the San Juan Islands with my husband in our boat.
– Live out of panniers, on a bike, for a month, with no plan and no reservations. This gets at the heart of my greatest fear: being homeless without a plan.
– Be one of those people who the neighbors go to have tea with and talk over their troubles.
– Teach someone to read. Watch them grow and help them to love learning, exploring, and being curious.
– Learn to spin a yarn about my adventures (my family’s tradition).
In search of light
OSTS Conference Adventures
I was invited to a (mostly) Intel-only conference this year, and I had quite an adventure getting there.
Debugging with printks over Netconsole
Netconsole is a powerful Linux kernel debugging tool. The dmesg output from a machine under test is transferred over an ethernet link (via UDP packets) to another machine. That means that you can see the debugging messages from the test machine on the screen of another machine. Netconsole isn’t good for debugging early kernel panics, but it is very useful if your new kernel driver hangs your system.
Advanced Git Tutorial

Feedback is welcome. I might present it again at the Open Source Bridge, a new Portland Open Source convention designed to fill the gap that OSCON left when they packed up for San Jose.
Happy Holidays from the Sharps!
USB 3.0 and Linux
USB is getting a facelift!
In the beginning, there was USB 1.1, with the “low speed” and “full speed” devices (at 1 Mbps and 12 Mbps, respectively). Then USB 2.0 came along with “high speed” devices that ran at 480 Mbps. Now the new USB 3.0 bus specification defines “SuperSpeed” devices that run at 5 Gbps (5,120 Mbps).

Student Day at Linux Plumbers Conference
For the past couple of months, I’ve been helping organize a student mini-conference for LPC, which will take place on September 16th. So far we only have 9 people registered for student day. We would like at least 15 students to make the student mini-conference a full-day event, and this week is the deadline for conference organizers to decide whether they need to scale back.
If you’re a student, and you’re even remotely interested in open source development, I suggest you take a look at the Linux Plumbers Conference Student Day page and register for the event.

