On N, 2008-11-13 at 03:11 +0100, Carl-Daniel Hailfinger wrote:
> On 13.11.2008 02:41, Peter Stuge wrote:
> > Carl-Daniel Hailfinger wrote:
> >   
> >> we want to keep Geode targets consistent.
> >>     
> >
> > Says who?
> >   
> 
> I say so and my clone agrees. ;-)
> 
> > If a board is unique and we can't abstract in general code then
> > mainboard/ code is fine.
> >   
> 
> If the abstraction works for all the other boards, there is no reason to
> have different codebases except to confuse people who want to port a new
> similar board.
> 
> We have lots of places in v2 where people made some change to one
> specific board, but the change would have applied to lots of boards.
> Later on, nobody could recall offhand why the files were different. To
> be honest, the amount of code duplication we have in v2 with little
> arbitrary changes sprinkled all over the map is one of the biggest
> reasons why I try to avoid v2 wherever possible. Diffing two boards will
> usually give you lots of differences which are in no way related to the
> board configuration/hardware.

The difference here is that in DBE61 I call that sequence possibly
multiple times, while for all others that is not the case, and it's just
an unnecessary function call.

I suppose we could add such a helper function for all boards if an
inline keyword is added for it.

That said, there's actually some things to improve there regarding what
is called.
For instance cpu_reg_init does many things, and only one part is memory
related - at least where the SPD matters. Some other bits and pieces are
also re-done on second call that might not be necessary.
So I'm not sure if in the long run it's suitable for all boards.
Perhaps that initialize_ram deal could end up in generic code even if
the order of those operations has to always be like that (does it?).


Regards,
Mart Raudsepp


--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to