Hi DS! > Since 0 and o and pretty close on the keyboard, maybe it was just a > typo that happened if the command line was retyped by hand instead > of a copy/paste? Just a thought.
Oh no, there is a lot more going on than just a typo! First of all, the FLUID option to select the old boot entry protocol which is not supposed to ever work on Calypso 26 MHz platforms is -oO (lowercase 'o' followed by uppercase 'O'), whereas the option to use the boot ROM protocol that works like it should is -oo (two lowercase 'o's) - there is no '0' (digit zero) anywhere. The earliest (in chronological terms) piece of evidence I could find of Openmoko engaging in paranormal occult matters is this post by Werner Almesberger: http://lists.openmoko.org/pipermail/openmoko-devel/2008-April/002605.html In that post the NDA-worshipping coward was taunting the community with instructions on how to use OM's modified version of FLUID at the time when neither this FLUID nor firmware m0 files were made available to any mere mortals, but here are the two incriminating pieces: 1) The -oO option is there on the fluid.exe invokation line; 2) The other really big incriminating piece is this one: > FLUID should now say something like this: > > (fluid, version 3) ok > Checksumming (269 * 8kB = 2152kB): ok > Flash Detect: (0xEC, 0x22A0) Samsung K5A3240CT ok > Program: (34 sectors, 267*8k=2136k) (*******************) ok The smoking gun is the "(fluid, version 3) ok" line, while the remaining messages are exactly as expected for FLUID operating on OM's modem with their flash and their devices.txt file. I invite you to look at the FLUID source on our FTP site (look at pc/machine.c inside the ZIP) and confirm for yourself that FLUID emits that status line on stdout ONLY if it has made bootloader entry via the old -oO protocol; when it makes bootloader entry via the Calypso boot ROM (-oo), it prints "(ROM, version ?) ok" instead. So there we have it, Werner Almesberger made a public post demonstrating that he did something that ought to be completely impossible according to our known understanding of physics. If he did it in England before 1951, he could have been legally prosecuted for witchcraft. It appears that OM changed their mind and made their fluid.exe binary and firmware m0 files public about 6 months after WA's 2008-04-25 taunt: the first revision of the modem flashing wiki page was made on 2008-10-28: http://wiki.openmoko.org/index.php?title=Flashing_the_GSM_Firmware&oldid=58504 The witchcraft instructions are still there: -oO option on the fluid.exe invokation line and the highly incriminating "(fluid, version 3) ok" line in the shown expected output. Whatever warp or tear in the spacetime continuum that happened that allowed fluid.exe talking at 115200 baud to communicate with TI's broken FRBL talking at 230400 baud and still miraculously work despite the baud rate mismatch was not limited in its effect to the inside of OM's castle walls: community members outside of OM started following those instructions (including the -oO) once the bits were made public, and it worked for them. Of course even if this baud rate mismatch issue wasn't there, using that old fluid -oO mode would still be a supremely bad idea: that mode only works for as long as the bootloader in flash is good, and if you brick that bootloader, then you can't use fluid -oO any more. Back when TI used this mechanism in pre-Calypso days, they always had JTAG as the fallback to reload blank or bricked flash - but there is no Calypso JTAG access on Openmoko devices. But Calypso JTAG is not needed when you have the boot ROM enabled instead (like it is on OM devices), you just need to use the boot ROM protocol instead of the old FLUID boot protocol, meaning -oo rather than -oO if you are using FLUID rather than fc-loadtool. Apparently OM's people realized this basic fact by around 2008-11-27, as they started instructing users to use fluid -oo for recovery: http://wiki.openmoko.org/index.php?title=Flashing_the_GSM_Firmware&oldid=60704 But note that even this revision of the wiki page still lists -oO as the first choice, and then presents -oo as an alternative for recovery if you bricked your FRBL. So the paranormal mystery remains: how did this fluid -oO mode work for all those OM people all those years ago when it should have never worked at all because of the baud rate mismatch? When I first discovered this bizarre historical oddity, I could rationally think of only two possibilities: either OM modified their version of FLUID to talk at 230400 baud in -oO mode, or they somehow patched the FRBL in their mokoN firmwares to talk at 115200 baud, fixing TI's bug in this regard. But neither seems to be the case: * Running OM's fluid.exe under strace shows it setting B115200 in termios in -oO mode, no sight of B230400 anywhere. * I diffed the FRBL portion of the fw across different mokoN versions, and I never found any mokoN version in which FRBL had been modified relative to what we know and understand as TI's original. It would also have been quite difficult for OM to make such a change, as this code is a binary-only lib at least in the semi-src we've recovered. Adding the necessary fix to set the right bit in the FFFF:FD02 register would require a code insertion, which would obviously be much more difficult - patching a byte or two in the blob with a hex editor (which both I and OM's Dieter Spaar have done on other occasions) won't do it here. And to complete the paranormal mystery, the occult magic of fluid -oO done by OM all those years ago appears to be no longer reproducible, or at least I couldn't reproduce it on my GTA02. Who knows, maybe it really was some kind of aberration in spacetime that has repaired itself since then, and the laws of physics have now gone back to what we are used to, such that processor A talking at 115200 baud cannot successfully communicate with processor B talking at 230400 baud. Stuck in the Twilight Zone, Mother Mychaela P.S. Is there any chance that Werner Almesberger might actually be Warlock Almesberger? _______________________________________________ Community mailing list [email protected] https://www.freecalypso.org/mailman/listinfo/community
