Wednesday, October 06, 2004

First Boot

Having programmed the card, I need to get the winterm to boot from it rather than internal ROM.
The docs say that you need to set CFG2 to 1 to disable internal ROM and map the PCMCIA slot to ROMCS0. A bit of hunting around the ciruit board, and it looks like this CFG2 is wired to one of 2 jumpers near the PCMCIA slot. Time for a bit of trial and error:
  • No flash inserted, short jumper xx - no boot :)
  • No flash inserted, short jumper yy - no boot :)
  • Insert flash, short jumper yy - no boot :(
  • Insert flash, short jumper xx - Alios Boots! :-)
So, alios boots, and starts displaying data on serial 1. Linux boots, but the RAM size is wrong. Alios shows 10MB, whereas WinCE reports 24MB!
The mem report shows 16 bit wide DRAM, which seems a bit odd. So, a quick look at the alios code reveals that it is set for matrix keyboard enabled, which limits dram width to 16bit.
Disabling matrix keyboard, and re-trying reports 24MB 32 bit RAM, plus a small amount in bank 3. This causes Linux to fail, as There isn't really RAM in bank 3.
Back to the docs...
Here I see that bank 3 may be set to an illegal configuration, during the RAM check. If this is the case, then bank 3 must be ignored.
The Alios code does not make this check (as far as I can see), so I need to add this in.

1 Comments:

Blogger Unknown said...

Matt:

I would have emailed you but I can't find your email (probably for a good reason ;) I've been working with a 2315SE and attempting to get the boot ROM's to work off of a flash card and well... it didn't work. I noticed that you had to short out the CFG2 pin on the Elan chip to bypass the internal ROM... how did you go about doing this? The board appears to be a multi-layer PCB and theres not much room (okay, no room) under the chip... Any help would be appreciated!

Kelly K.
kkoehn (a) aspiredillusion.com

1:15 am  

Post a Comment

<< Home