[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Etrax 100Lx MCM8+2 + 2 external flashes


ETRAX 100LX has two flash chip selects:

cse0: 0x00000000
cse1: 0x04000000

You can use two flashes on cse1 by adding external logic that
activates the first flash at 0x04000000 and the second at
0x04200000. So CE for the first flash is !(!CSE1 & !A21) and 
!(!CSE & A21) for the second. DeMorgan's theorem is useful 
to transform them into CSE1 |A21 and CSE1 |!A21.

There is one ETRAX customer who uses 4*8 MB on CSE1 :-)


-----Original Message-----
From: owner-dev-etrax@xxxxxxx.com">mailto:owner-dev-etrax@xxxxxxx.com] On
Behalf Of Johann Dantant
Sent: Wednesday, March 03, 2004 5:07 PM
To: dev-etrax
Subject: Etrax 100Lx MCM8+2 + 2 external flashes


Our device is dedicated to long time event logging. Basically we use the
2+8 with an external flash. The kernel + romfs + jffs2 fits in the
2MB flash, and an external 2MB flash is available as device /dev/cflash4

Here's the related ptablespec :
rescue 0x010000 ro          rescue    rescue.img
flash1 0x110000 ro          kernel    flash1.img
flash2 0x0e0000 rw          jffs2     flash2.img
logdev1 0x200000 rw          raw       param.img <-- empty file, not
actually written into the target flash device

Everything runs fine, the network boot loader sees both internal and
external flash (the external is CFI), the MTD driver discovers both
and /dev/cflash4 is available for reading and writing.

Now we want to add a second external 2MB flash, and have it discovered
/dev/cflash5 , adding for instance this line to ptablespec :
logdev2 0x200000 rw          raw       param.img

In the 2.4.22 kernel, the axisflashmap.c says that the flash_probe
will probe each chip select individually for flash chips (*chips*, not
chip), and that the only known restriction to how you can mount your
is that each chip select must hold similar flash chips. But you need
external hardware to do that anyway [...].

So, my question is, how am I suppose to add the second external chip to
design ? Is there somewhere a reference design or an explanation of the
recommended hardware needed to do this ?

Best regards,