<> ||<>|| == Debugging kernels with USB earlyprintk == Using this technique one can capture early kernel messages over USB. This uses a special debug port on the targe machine that is to be debugged. Note that this is NOT the same as dumping debug state over a USB serial dongle. This requires two computers with USB 2.0 ports, a special USB debug 'key' and two USB cables, connected together as follows: {{{ target <---- USB cable ---> [ USB debug key ] <---- USB cable ----> capture client }}} The USB debug key available from [[ http://www.plxtech.com/products/NET2000/NET20DC/default.asp|the plextech Net20DC]] or [[http://www.ajaystech.com/net20dc.htm|Ajays Net20DC]]. It must be connected directly to the target without using a USB hub in between. The "target" machine is the machine to be debugged. It must have the special USB debug port capability, one can check for this as follows: {{{ sudo lspci -vv }}} ..and you will see: {{{ 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 04) (prog-if 20 [EHCI]) Subsystem: Lenovo Device 21da Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR-