On Fri, 2008-05-23 at 09:19 +0200, Markus wrote:
Am Thu, 22 May 2008 23:58:35 -0700 schrieb Philip Loewen philip@tidepool.ca:
A quick follow-up question on this Geode GX1/CS5530 thin client before another lengthy silence:
Right now I only know how to access the 48M of onboard flash memory in this little box using the proprietary tools that run in the proprietary BIOS. If I replace the BIOS with coreboot, I will need some other way to access the NAND flash memory. Is there a known working method for this that runs on Linux? (I have tried adding support for Memory Technology Devices to my kernel, but don't know how to tell if they are working.) Given this, I would be willing to give coreboot a try.
Last week I said I was reluctant to open the case of my thin client. At the time I did not realize that a running thin client can itself be used as a BIOS-ROM programmer. I have extra copies of the machine around, so in fact I do have the hardware resources needed to recover completely from a bad flash experience. Now I am more receptive to the idea of trying something that is not fully guaranteed.
Thanks, Philip
On my Evo T30 the internal flash works as an hda Disk. The only bad thing on this. The fist partition is needed from the proprietary Bios. Are you able to boot an Linux and take a look?
Markus
I've been messing about with a couple of Evo T30 boxes (64M RAM/32M flash) trying to get them to do something more interesting than start Windows CE. I also have a T20 (32M RAM/16M NAND flash).
I've been able to get coreboot doing something on a T30 - it appears more or less identical to the T20 in IC terms with the following exceptions - it has a Super IO chip (NSC PC97307), a TI PCI1410APGE Cardbus controller, and a supporting TI PDU2211A (I'm convinced this is actually a TPS2211A - a single slot PC Card Power Interface Switch). The T30 has a 44pin IDE header on it that in NT embedded and XP embedded devices had the equivalent of a compact flash stuck on it, in CE.Net devices this header is empty and a NAND flash and controlling GAL are soldered to the board, this GAL and NAND flash look identical to that on the T20 (I am unable to confirm the contents of the GAL or NAND chip).
I have spotted that the bi-colour power LED is connected to GPIO10 & 11 on the Super IO, so there clearly are differences between the T20 & T30, and it's not just additional hardware.
Copying the Televideo TC7020 config I was able to get the display up (cute little PLCC/penguin logo in the bottom right) but no serial output. Having spent some time tracing the board I worked out that the NSC Super IO on the T30 has BADDR1 line pulled high, but BADDR0 is low which changes the config port to 0x15c, not 0x2e as it is for the TC7020, and changing the 0x2E in the SERIAL DEV PNP_DEV line I could get output on the serial port.
I've been able to load a FILO payload, but it seems oblivious to the presence of any IDE device. So I removed the 58F256 flash and GAL based on a picture of an NTe device (looking at the traces these are connected to the IDE bus), CF adapters and 2.5" drives are ignored, FILO stating that it's 'Detected floating bus', unfortunately I cannot trace the IDE controller to the 5530A southbridge as the 5530A is a BGA chip.
I then tried etherboot with moderate success - I compiled a very lean kernel and used wraplinux to wrap it and parameters for a serial console for netboot, I can download the kernel but it appears to fail to boot (there's no serial output) - I can netboot the same kernel from the same setup (on albeit (very) different hardware) with no issues.
Not yet giving up I tried memtest86 (and another T30!) memtest86 stops with an unexpected interrupt after a seemingly random period. The second device (with the GAL and NAND flash still onboard) hangs randomly throughout the execution of coreboot.
I cannot boot any of my devices into Linux and cannot run any arbitrary code on them in CE.Net!
I knocked up a PLCC32 adapter from an IOSS BIOS Saviour (I could not find one for a 5V 29C020) from my EPROM programmer/emulator so I can very quickly test new images, I don't believe that should cause an issues as I believe that virtually all the execution of coreboot and payload is from RAM once it has been initialised.
Does anyone have any suggestions on quite where I look next? I've tried several SODIMMs all fail memtest86 and work acceptably in CE.Net and memtest86 in other devices - do you agree it seems unlikely to be faulty hardware and likely to be a configuration issue in netboot? Should I remove the PCI Routing tables for the TC7020 - could this cause issues?
Sorry for such a long first email,
Nick