[coreboot] [PATCH 3/5] artecgroup/dbe61: Gather RAM initialization function calls to one helper function.

Mart Raudsepp mart.raudsepp at artecdesign.ee
Thu Nov 13 04:12:51 CET 2008


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





More information about the coreboot mailing list