On Sun, Feb 07, 2010 at 11:50:22AM +0100, Marc Kleine-Budde wrote: > Krzysztof Halasa wrote: > > 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). > > have a look at the current uboot cfi flash driver. They have read/write > functions to access the flash. By default they are macros to IIRC > __raw_read,write. > > From the first look, the driver looks much cleaner than the "old" one > used in barebox (modulo my bugfix from last week). It seems it still has the same driver under the hood. I suggest to remove the "old" driver in favor for the cfi_flash_new driver so that this ongoing confusion ends and Krzysztof has some base to work on. I think the flash accesses can be ported from U-Boot if necessary. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox