Couldn't you also just link the two via TX/RX and reset lines, reset the target and read and transfer a Hex file from an SD card, via the target bootloader?
That's an idea we had for allowing a user to perform a firmware update on our devices, although we've not tested it yet.