CDC делал. Тоже по авторским образцам. Давно уже, правда, забыл. Сумбурно изложу что помню: в исходном варианте иногда при чаcтом втыкании не очухивался. Причина - присвоение usb_connected = TRUE в двух местах: в прерывании и в усб-таске. Второе - после обнаружения событий suspend-reset... в прерывании - делал где-то неподалеку принудительный выход в суперпетлю, т.к. при запросах дескрипторов событие reset выскакивает ммм... невовремя а "ребята об этом поздно узнавали". Все. Боле не помню.