some Blackfin processors have an optional async memory controller which allows 
for up to 4 megs of memory to be mapped.  sometimes these 4 megs are not 
enough, so people extend this by hooking up the higher address pins to GPIOs.  
so if you want to map 8 megs of memory, the highest address pin would be tied 
to a GPIO line while the remaining address pins would be hooked up like 
normal directly to the processor.

there are a few ways i can implement this in u-boot (and ive prototyped a 
couple), but the question is which way to go.  i obviously dont want to pick 
one which will be rejected for $whatever-reason.

possibilities:
- add a command to manually toggle the GPIO lines
 * pros: simple to implement and requires no change to existing code
 * cons: requires user to manually toggle the address lines.  cannot access 
multiple flashes in a single command.  not sure if this would work with 
different types of flashes as the CFI code would only detect the first.
- have memory display / flash write commands toggle the GPIO lines
 * pros: user interface is transparent and not confusing by making it seem 
like 1 flash exists (think software raid 0).  able to use 1 write command and 
the lower layers will automatically split it across multiple flashes.  should 
work with multiple types of flashes.
 * cons: requires modification to cmd_mem.c and cfi_flash.c.

maybe someone else has other/better ideas for how to approach the issue.  i 
didnt seem to find anything relevant from google / bundled docs / wiki.
-mike

Attachment: signature.asc
Description: This is a digitally signed message part.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Reply via email to