mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* IXP4xx support
@ 2010-02-06 21:00 Krzysztof Halasa
  2010-02-07 10:50 ` Marc Kleine-Budde
  0 siblings, 1 reply; 6+ messages in thread
From: Krzysztof Halasa @ 2010-02-06 21:00 UTC (permalink / raw)
  To: barebox

Hi,

I'm thinking about adding Barebox support for a certain platform using
IXP425 (ARM, usually big-endian) CPU. This means the startup code
(trivial, already got it working in little-endian mode), drivers for
hardware Queue Manager, Network Processing Engines and built-in Ethernet
interfaces (all of them easy to port from Linux).

This also means supporting the NOR flash: the CPU has 16-bit, always
big-endian, "value-preserving" EXP bus for connecting such devices. In
LE mode the address has to be XORed with 2, and if it's byte-oriented
data (i.e. not a command/response), it has to be byte-swapped. Only
16-bit writes can be made.

Doing the above in the flash driver would complicate things a lot. The
drivers currently use plain pointers to access the flash. I'm thinking
about moving the low-level access (R/W) routines to arch code (with a
generic defaults), and calling them via the NOR flash platform struct
(which doesn't do anything useful ATM).

The above would also permit supporting flashes which can't be mapped in
normal CPU address space. It would be a bit slower, though.

Opinions?
-- 
Krzysztof Halasa

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-02-11 22:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-02-06 21:00 IXP4xx support Krzysztof Halasa
2010-02-07 10:50 ` Marc Kleine-Budde
2010-02-07 18:44   ` Flash drivers, was: " Krzysztof Halasa
2010-02-08 10:06     ` Sascha Hauer
2010-02-11 22:29       ` Krzysztof Halasa
2010-02-08 13:40   ` Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox