ok, so the teensy is configured as a CDC class device, which is pretty different from FTDI devices. (the latter are not class-compliant at all, hence need for driver to support arbitrary endpoints for setting baudrate, &c; and hence the all-on mask for the class/protocol fields.)
so, the broad story is that we are using the HAL stack called the Atmel Software Framework (now the Advanced Software Framework, since Atmel -> Microchip)
the ASF includes the USB host stack and device drivers for standard USB device classes, including CDC. through some convoluted makefiles, the ASF host driver pulls in our conf_usb_host.h, which is where we say which UHIs we support (UHI == USB Host Interface
)
somewhere in the non-stripped-down version of the ASF you should be able to find a demo of using a CDC device with an AVR32 host. you will want to add a new UHI for these devices alongside FTDI, HID, MSC and MIDI.
libavr32 UHI sources for class-compliant devices (not FTDI) are pretty simple, they just lightly customize the generic templates from the ASF to do different things with the data.
the CDC UHI template stuff is in asf/common/services/usb/class/cdc/host.
oh, those are in asf/common/services/usb/usb_protocol.h, and are standard fields in the USB2 data structures.
hope this helps a little, sorry my memory is a little fuzzy.
and very sorry for those disgusting sourcefiles, omg