NOR flash, NAND flash and the steppingstone

Werner Almesberger werner at openmoko.org
Mon Sep 8 05:55:58 CEST 2008


Wolfgang Draxinger wrote:
> If OM[0:1]==01 || OM[0:1]==10, then the 4k of steppingstone SRAM are 
> mapped to 0x4000_0000...0x4000_0fff

Ah, are they ? Didn't know that.

> Anyway. GCS0 means, the NOR will be mapped starting from 
> 0x0000_0000 and GCS3 means, nor starts at 0x1800_0000

Yup, that's what the AND does: make the NOR appear at either location,
so that we can access it also when running from NAND.

> The external SDRAM chip has been connected to GCS7, i.e. it is memory 
> bank7 at 0x3800_0000

It's actually at 0x34..., using the variable bank 6/7 size feature.
See table 5-1 of the 2442 manual. Ignore the left-hand side of figure
5-1 :-)

> In the schematics it is shown, that address lines 
> are connected by one bit shifted.

Are the ? It's just the standard configuration for a 32 bit bus, see
figure 5-11. The CPU takes care of shifting byte and 16-bit word
accesses.

> Finally, to flash the NOR flash, if I understood everything right, one 
> would connect the debug board to the GTA02, supply the NOR_WP line 
> with power (how much volts?),

Ideally, between 1.3V and 1.8V. Vpp can be driven as high as 14V,
but some (very old) boards have R2506 in place, so a high voltage
on nNOR_WP could leak into FLASH_1V8.

> One could also boot 
> with steppingstone enabled, i.e. OM[0:1]==00, but then only the 
> 0x1800_0000 mapping would be avaliable to flash the NOR.

But that's good enough, isn't it ? :-)

By the way, a little known "feature" of the 2442 is that OM is not
latched at reset time. So things at address 0x00... change whenever
AUX is pressed or releases. Took me a while to figure out why the
machine obviously booted from NOR, but when I looked at it with
JTAG (and no longer held AUX), it was gone ...

> Well, that's about it. Did I get everything right?

With the few exceptions above, yes. Good detective work :-)

> Oh, one last question: I expect the NOR flash u-boot has it's very own 
> environment stored in NOR flash, and as such can't be changed, 
> without fiddling with the NOR flash write power line?

Yup. u-boot in NOR is completely self-contained. This is the
script that builds the NOR content:
svn.openmoko.org/trunk/src/host/devirginator/mknor

- Werner



More information about the hardware mailing list