
On Wed, 2003-04-02 at 13:05, Wolfgang Denk wrote:
Hello Erwin,
in message 1049272189.27238.18.camel@drake.erwin.muffin.org you wrote:
U-Boot only allows on setup for BR0/OR0 and resets the bus width, so i hacked the chip select initialization part to not reset the bus width. The question is should u-boot not all ways leave the bus width of CS0 alone ?
What exactly are you talking about? U-Boot does not change the port size of the boot device unless you configure it that way.
Well in cpu/mpc8xx/cpu_init.c br0 and or0 are always set to CFG_BR0_PRELIM and CFG_OR0_PRELIM. So if the bus width is set to 16 in CFG_BR0_PRELIM my board will not run when it is a dual-FLASH version, and when i set it to 32 bit it won't run when its a single-FLASH version. And i don't want to make two different bootloaders, since that flash configuration is the only difference. So what i did was just masking out the BR_PS_MSK to keep those the same as they where on reset, and that works fine.
An other thing that happens is that i didn't really find a generic way to do flash programming. All boards seem to have their own (copied from each other) flash routines. Would it be possible to have more generic FLASH routines, and for example have a config option to select which FLASH chips are possible (to maybe save space)?
It may be possible, but I have not seen such a patch yet. Note that it should not increase size of the existing systems, and it must not break existing code.
Best regards,
Wolfgang Denk
- Erwin