joska wrote:mfro wrote:If the Milan's startup sequence is similar to that in FireTOS (which is what I assume), the emulator is only needed to run the card's BIOS once for basic initialization.
The problem is that the x86 emulator spend around 30 seconds to run the VGA BIOS on a Milan060. I haven't even tried on a 040... And this is done on every (re)boot, which is quite annoying.
BaS_gcc contains the x86 emulator from FreeBSD (which is slightly faster than the one in FireTOS which originates from U-Boot AFAIK). The one from FreeBSD - obviously inspired from the knowledge that gcc doesn't optimize too well with lots of global variables - wraps the emulator state variables into a large struct and passes a pointer to it into all its functions. On my m5484 evaluation board (200 MHz), it takes about 2 seconds to execute the ROM BIOS (but this will vary for different cards as well, I have one where it takes remarkably longer).
I don't know about the Milan, is it an auto folder program or executed from ROM? If the former, it might be possible to adapt it to your hardware and give it a try.