[Bug 2020] Provide support for the PPC 440

bugzilla-daemon at rtems.org bugzilla-daemon at rtems.org
Wed Feb 22 13:00:19 UTC 2012


https://www.rtems.org/bugzilla/show_bug.cgi?id=2020

--- Comment #12 from Sebastian Huber <sebastian.huber at embedded-brains.de> 2012-02-22 07:00:19 CST ---
The problem is that in the BSP area so much is without documentation.  No need
to say sorry if you cause some trouble.

(In reply to comment #10)
> (In reply to comment #8)
> > (In reply to comment #5)
> > > This is not acceptable (multi-lib violation):
> > > 
> > > diff --git a/cpukit/score/cpu/powerpc/rtems/asm.h
> > > b/cpukit/score/cpu/powerpc/rtems/asm.h
> > > index d54c060..e6b90ec 100644
> > > --- a/cpukit/score/cpu/powerpc/rtems/asm.h
> > > +++ b/cpukit/score/cpu/powerpc/rtems/asm.h
> > > @@ -204,6 +204,83 @@
> > >  #define br5     0x085   /* DCR: memory bank register 5             */
> > >  #define br6     0x086   /* DCR: memory bank register 6             */
> > >  #define br7     0x087   /* DCR: memory bank register 7             */
> > > +
> > > +#elif defined(ppc440)
> > 
> > This file already had special register definitions for other PowerPC CPU
> > models. Do you have somewhere else to move them to?  
> 
> Me?  I just tried to follow the existing pattern...

Existing patterns in RTEMS are sometimes best to avoid.  In this particular
case the main issue is that you introduce a new pre-processor dependency in the
cpukit.  The aim of the cpukit is to only depend on a particular GCC multi-lib
provided by the tool chain.  The multi-libs provide the libc.a, libm.a, etc. in
a particular instruction set (e.g. classic PowerPC, Book E PowerPC, with SPE,
etc.).  Please have a look at
"cpukit/score/cpu/powerpc/rtems/powerpc/registers.h".  This file can be used in
assembler and C files.

> 
> > 
> > This is only used as an assembly support file. This isn't a problem for this
> > particular PR. This isn't directly a problem but using these inside cpukit
> > probably would.
> > 
> > > Why introduce ppc_booke_category_table?  I think you can use
> > > e500_category_table instead.
> > 
> > This one I don't know how to solve. Sebastian/Ric ..
> 
> Sorry, I don't know either.  If e500_... is to be used then I suggest that it
> has an inappropriate name.

Yes, but this has historic reasons.  The e500 is a PowerPC core from Freescale
implementing the Book E instruction set.

-- 
Configure bugmail: https://www.rtems.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the bugs mailing list