
Dear Steven,
in message 3F993A32.80709@imc-berlin.de you wrote:
By necessity u-boot is already nearing #ifdef hell because it supports so many devel boards (which is good). If we all threw our specific board design stuff in there, I don't think anyone in their right mind would use u-boot.
Probably a misunderstanding!
Yes, on Rick's side.
How I am supposed to setup clocks and PLLs and serial port in the AT91RM9200 if I don't have any informations?
I thought of something like this in start.S:
#ifdef CFG_USE_EXT_CRYSTAL enable_main_oscillator; #endif
/* set up PLL */ set PLLA to CFG_PLLAR set PLLB to CFG_PLLBR ...
Looks clean to me. Probably even better would be to call "init_clocks" (or a function with a similar name) in start.S for _all_ boards, including the "at91rm9200dk".
Just for the record: the "at91rm9200dk" ist just one out of many boards. It is in no way better than any other board. "at91rm9200dk" dependend code shall be removed from the files in the cpu/at91rm9200 directory.
And the user just has to define CFG_USE_EXT_CRYSTAL, CFG_PLLAR etc in his board specific header file. Of course without the need to submit his configuration to the U-Boot CVS.
I don't understand this last sentence.
Either you are maintaining his own private version of U-Boot (in which case we don't care, and you don't need to ask for help on this mailing list which is dedicated to the _public_ source tree only), or you are working with the public version of U-Boot, in which case your board configuration obviously resides in the U-Boot CVS tree.
Best regards,
Wolfgang Denk