[patch 14/14] Bamboo zImage wrapper

Josh Boyer jwboyer at linux.vnet.ibm.com
Thu Jul 19 03:51:13 EST 2007


On Wed, 2007-07-18 at 12:21 -0500, Milton Miller wrote:
> Sorry for the broken reply but the list is broken.
> 
> On Wed Jul 18 04:16:01 EST 2007, Josh Boyer wrote:
> > Add a bootwrapper for Bamboo
> 
> bamboo is what, an evaluation board? for which processor?

Yes, 440EP.

> > --- linux-2.6.orig/arch/powerpc/boot/Makefile
> > +++ linux-2.6/arch/powerpc/boot/Makefile
> > @@ -143,6 +143,7 @@ image-$(CONFIG_PPC_83xx)            += cuImage.83x
> >  image-$(CONFIG_PPC_85xx)               += cuImage.85xx
> >  image-$(CONFIG_EBONY)                  += treeImage.ebony 
> > cuImage.ebony
> >  image-$(CONFIG_WALNUT)                 += treeImage.walnut
> > +image-$(CONFIG_BAMBOO)                 += treeImage.bamboo
> >  endif
> 
> You are only making one target.

Yes... why is that a problem?

> > +static void bamboo_fixups(void)
> > +{
> > +       unsigned long sysclk = 33333333;
> > +       ibm440ep_fixup_clocks(sysclk, 11059200);
> > +       ibm4xx_fixup_memsize();
> > +       ibm4xx_reset_eth((u32 *)0xef600e00, (u32 *)0xef600f00);
> > +}
> 
> This seems to have board specific information ..

I should hope so... it's a wrapper for the bamboo board.

> > --- /dev/null
> > +++ linux-2.6/arch/powerpc/boot/treeboot-bamboo.c
> > @@ -0,0 +1,27 @@
> ... [copyright header]
> > +#include "ops.h"
> > +#include "stdio.h"
> > +#include "44x.h"
> > +
> > +extern char _end[];
> > +
> > +BSS_STACK(4096);
> > +
> > +void platform_init(void)
> > +{
> > +       unsigned long end_of_ram = 0x8000000;
> > +       unsigned long avail_ram = end_of_ram - (unsigned long)_end;
> > +
> > +       simple_alloc_init(_end, avail_ram, 32, 64);
> > +       bamboo_init();
> > +}
> 
> Is there some reason they should not all be merged into this one 
> platform file?

"they" meaning what?

> I can understand wanting the dcr fixups as a library, but lets wait to 
> do the file splits until there are actually users.  Its also easier to 
> see what's going to called when all the platform ops are filled in at 
> one spot, not spread over multiple files.

I copied this from Ebony.  There are multiple users already.  You have
two parts.  The truly common stuff in 4xx.c and the board specific
wrappers that do the things needed for the board.

You've thoroughly confused me.

josh




More information about the Linuxppc-dev mailing list