Re: Host tool for KDP over serial
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com Shantonu Sent from my MacBook On Jun 9, 2009, at 9:46 PM, David Elliott wrote: Hi, -Dave _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/ssen%40apple.com _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... I don't believe we have any plans to provide a tool for this, since the only Mac with built-in serial is the Xserve, which has both firewire and ethernet. Those are the supported transports for doing GDB interactive debugging and saving kernel core dumps. I'd like to run KDP over RS232 serial on an i386 target. Examination of source in osfmk/kdp indicates that the kernel expects to see ethernet frames coming in over RS232 preceded with 0xFA and ending with 0xFB with occasional escaping using 0xFE to indicate an escape, two's complement of the escaped bytes, and 0xFB to end the escape. I have succeeded in hand crafting an ARP packet of this format and when I send it down the wire I appear to get the appropriate response from the kernel. So now I am wondering if Apple has provided or can provide a tool similar to the one for Firewire debugging that listens on UDP 41139 and shuttles the data over a /dev/tty device and back. If not, writing one would be reasonably easy but I figured I'd ask before embarking on that. Source is preferable as I'd prefer to run it on a Linux machine with a hardware serial port as the PL2303- based USB I have on the host side seems to have strange issues with the driver from sourceforge. Also, there's an interesting "bug" of sorts in the code. The IP of the KDP will actually be different depending on whether it's big or little endian. The target's IP is set to 0xABADBABE so on little endian targets the IP is 190.186.173.171 but on big endian targets it would presumably be 171.173.186.190. A bad babe indeed. This email sent to ssen@apple.com This email sent to site_archiver@lists.apple.com
participants (1)
-
Shantonu Sen