You will need three files from this directory: * UpgradeFirmware.efi is the tool that knows how to do the upgrade * mustang_tianocore_media.img is the firmware image itself * apm_upgrade_mustang_tianocore.c_m_d is metadata for the upgrade, including a checksum 1. You'll need an SD card and a USB flash drive to do this process. a. First, write the firmware image raw to the SD card: $ sudo dd if=mustang_tianocore_media.img of=/dev/sdX bs=1M b. Set up the USB flash drive: * create one partition, type "c" (aka "W95 FAT32 (LBA)") * mkfs.vfat that partition * copy all three files above into the root directory of that partition 2. You need to read the current MAC addresses from the Mustang while they're still available: a. Boot U-Boot and interrupt the boot process b. Type "printenv" and you'll see all the settings from U-Boot c. Scroll back and you'll find near the top a few entries looking like: eth1addr=00:01:73:02:20:65 eth2addr=00:01:73:02:20:66 eth3addr=00:01:73:02:20:67 ethact=eth0 ethaddr=00:01:73:02:20:64 e. Save the addresses from those variables - cut and paste them, or write them down. The MAC addresses should be obviously in a block of 4 in sequence. 3. Now power down and open up the Mustang machine. You'll need to change some jumper settings to boot off SD instead of internal flash. a. Find HDR9 (close to HDR8, which is next to the PCIe port). See the photo attached - Mustang-jumpers.jpg b. Locate pins 11-12 and 17-18. They would normally have jumpers available, but disconnected (i.e. only sitting over one of the pins). You need to connect both. c. Insert the SD card into the Mustang's SD port d. Insert the USB flash drive into one of the USB ports e. Power up the Mustang and you should see boot messages on the serial console with Tianocore f. Interrupt the boot process before it starts to boot the "default". g. You should now be at a UEFI menu, giving options like "UEFI shell", "Boot Manager", "Reboot" etc. Select the UEFI shell (typically "1" then enter) h. After a few seconds, the system will drop you to the shell so you can run things directly. i. At the top of the screen, the shell will have listed all the block devices and filesystems it could find. Check that list to find the USB stick - it will most likely be "FS0:" j. Select that filesystem: type "fs0:" then enter. k. Run "UpgradeFirmware.efi apm_upgrade_mustang_tianocore.c_m_d". This will do the actual upgrade step - do NOT interrupt this while it's running. Any errors reported here are fatal - abort NOW and ask for help if you see any. l. Once the upgrade is done, power down the Mustang. 4. Remove the SD card and USB flash drive. Return the jumpers back to normal, i.e. move the jumpers *off* 11-12 and 17-18. Now it will boot from internal flash again. 5. Start the Mustang up. It should now be running UEFI (Tianocore). Again interrupt the boot process before it starts to boot, and drop to the UEFI shell. Our last step of the upgrade is to program the MAC addresses back in so that UEFI will find them. From the UEFI shell: set MAC0 00:01:73:........ (the address you wrote down from ethaddr) set MAC1 00:01:73:........ (the address you wrote down from eth1addr) set MAC2 00:01:73:........ (MAC address you wrote down from eth2addr) set MAC3 00:01:73:........ (MAC address you wrote down from eth3addr) Type "ifconfig -l" finally to validate that the addresses for the ethernet interfaces match what you've just typed in. 6. All done! Turn off power. When you want to reinstall the Mustang, you can simply use any version of Debian installer from 9.1 onwards. The Mustang should boot off a USB stick and install using the normal process.