On Sun, Aug 14, 2011 at 7:19 AM, Xiaofan Chen <xiaof...@gmail.com> wrote: > On Sat, Aug 13, 2011 at 10:59 PM, Eric Wetzel <thewet...@gmail.com> wrote: >> Alright, I didn't get around to trying your method yet; I've been >> capturing things from Segger's J-Link Linux program. Here's what I >> found. >> >> Segger's program sends two commands that are undocumented by the >> J-Link USB Protocol Reference Manual. >> >> The first is 0xE6, which returns 256 bytes of data. The first four >> bytes returned are the serial number of my unit, and the next row, >> starting from byte 16, is a null-terminated string of the OEM's name >> (in my case 'IAR'). >>
http://lists.berlios.de/pipermail/openocd-development/2009-May/006781.html ReadOTS (OTP Structure) input: 0xE6 (1 byte) output: OTS buffer (256 bytes) +0x00 4 serial no +0x10 16 OEM string +0x20 16 feature string 1 +0x30 16 feature string 2 ... +0x90 16 feature string 8 >> The next undocumented command is 0x09. It seems to consist of 14 bytes >> and returns 76 bytes (but for some reason, my usbmon log is being >> truncated to just 64 bytes). Neither the command nor the response seem >> to contain ASCII strings. For my test cases, I ran the J-Link program, >> waited for it to stabilize, then exitted. I tested conditions like the >> first execution after plugging in the J-Link and successive >> executions, and having a target connected or not. Here are the forms >> of the 0x09 commands (responses not included): >> jlink-trace.txt: 0964a20c 00000000 00000000 0000 >> jlink-trace.txt: 0964a20c 00000000 00000000 0300 >> jlink-trace.txt: 0964a20c 00000000 00000000 0300 >> jlink-trace.txt: 0965a20c 00000000 00000000 0300 >> segger-after-plug-no-target.txt: 0964850e 00000000 00000000 0000 >> segger-after-plug-no-target.txt: 0964850e 00000000 00000000 0200 >> segger-after-plug-no-target.txt: 0965850e 00000000 00000000 0200 >> segger-after-plug-target.txt: 0964890e 00000000 00000000 0000 >> segger-after-plug-target.txt: 0964890e 00000000 00000000 0300 >> segger-after-plug-target.txt: 0964890e 00000000 00000000 0300 >> segger-after-plug-target.txt: 0965890e 00000000 00000000 0300 >> segger-first-plug-no-target.txt: 09647f0e 00000000 00000000 0000 >> segger-first-plug-no-target.txt: 09647f0e 00000000 00000000 0100 >> segger-first-plug-no-target.txt: 09657f0e 00000000 00000000 0100 >> segger-first-plug-target.txt: 0964970e 00000000 00000000 0000 >> segger-first-plug-target.txt: 0964970e 00000000 00000000 0100 >> segger-first-plug-target.txt: 0964970e 00000000 00000000 0100 >> segger-first-plug-target.txt: 0965970e 00000000 00000000 0100 >> > > Just want to say that I did some capture under Linux as well > adn the result is similar to what you have. > > usbmon txt interface will truncate the data to 32 bytes. You > can try to use the binary interface. > http://www.mjmwired.net/kernel/Documentation/usb/usbmon.txt > http://kerneltrap.org/mailarchive/linux-usb/2010/6/2/6261760/thread > > http://people.redhat.com/zaitcev/linux/index.html > Pete Zaitcev is the author and he has the usbmon-6 program > you can try out. > Man file for usbmon-6. > http://www.linuxcertif.com/man/8/usbmon/ > -- Xiaofan _______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development