
The bootstrap.c file is the same as for Canyonlands. Maybe it makes sense to share it between all 460EX boards, by moving it to some common location. Stefan, what do you think ?
I'm not so sure here. Even if those settings might work on most 460EX/GT boards, some custom boards might need different PLL configurations (e.g. different EBC frequency). So it's really more board specific stuff than platform specific and we would end up with multiple "#ifdef's" in this file.
Perhaps it would be doable to extract the board specific stuff into some board file and use common code for the real command and I2C-EEPROM handling. We could move these declarations into the board specific file:
+static char *config_labels[] = { ... +};
+static u8 boot_configs[][17] = { ...
And the rest into a common file. What do you think? Dirk, are you willing to work on this?
I will have a look at it.
By the way Stefan, while trying to cleanup ft_board_setup() I noticed I have a problem.
After powercycling the board I get:
U-Boot 2009.06-00299-ga1170c5-dirty (Jul 13 2009 - 15:34:17) compactcenter 0.02
CPU: AMCC PowerPC 460EX Rev. A at 800 MHz (PLB=200, OPB=100, EBC=100 MHz) Security/Kasumi support Bootstrap Option F - Boot ROM Location I2C (Addr 0x54) Internal PCI arbiter disabled 32 kB I-Cache 32 kB D-Cache Board: CompactCenter I2C: ready DRAM: 256 MB Machine Check Exception. Caused by (from msr): regs 0fe59dd0 TLB Parity Error NIP: 0FF60850 XER: 00000000 LR: 0FF92DF4 REGS: 0fe59dd0 TRAP: 0200 DEAR: 41240120 MSR: 00021000 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00
GPR00: 00000000 0FE59EC0 0FE59F24 3E7DF440 00000000 00000000 00000000 1EB232CC GPR08: 0FF62368 00000000 05F5E101 2FAF080A 42DF7F22 F730108E 0FFB1900 0FFBE000 GPR16: B072824C F5740DEA D5F340C5 F67A0CED 00000000 0FE59DC0 00000000 0FF60450 GPR24: 0FF60D5C 0FE59F24 0FE59F08 FFFFFFFF FF000000 0000003F 0FFB321C 01000000 Call backtrace: 0FF62368 0FF88900 0FF61D08 0FF60710 machine check
I narrowed it down to board_early_init_r() where remove_tlb() is done.
When I do a 'res halt' 'res run' sequence with the BDI the board comes up fine.
Any ideas?
Cheers Dirk