U-Boot
U-Boot Port
An experimental U-Boot port for the iPod Nano 5G lives at https://github.com/freemyipod/u-boot/tree/n5g-wip .
It can be started using wInd3x and will start up a CDC-ACM serial console over USB for debugging purposes. Currently it has no storage driver.
The current port expects to be loaded in place of OSOS, eg. by packaging it into an IMG1 and sending it to WTF. This is what wInd3x does. This way, U-Boot does not have to do any of the 'annoying' early boot stuff like bringing up DRAM.
Building
make nano5g_defconfig make CROSS_COMPILE=arm-none-eabi-
Running
After building, connect your iPod Nano 5G in DFU Mode and use wInd3x to start U-Boot:
./wInd3x cfw run u-boot.bin
When successfully started, U-Boot will then enumerate as a CDC-ACM device, eg. appear as /dev/ttyACM0 on Linux hosts. You can use screen /dev/ttyACM0
to connect to the console and experiment with the U-Boot console.