This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: HAL architecture question


On Tue, 2003-11-11 at 22:26, Dinesh Kumar wrote:
> I am little confused about HAL architecture. The
> directory "hal" contains many subdirectories (arm,
> common, i386, powerpc and many more).
> Is subdirectory "common" used by all other
> subdirectories? 
> 
> Now the subdirectory "arm" contains more
> sub-subdirectories (integrator etc, similarly powerpc
> subdirectory also). AFAIK sub-subdirectory
> "integrator" is a target board having ARM 920t
> processor plus a particular configuration of other
> devices or peripherals. While in subdirectory powerpc,
> I see sub-subdirectory like mpc8260, which is a
> processor. My question is sub-subdirectories represent
> an processor architecture or a target board?
> Considering an example, I have a proprietary target
> board having MPC8260 processor. For porting eCos over
> that board, where my HAL source should go?

Firstly, a complete discussion of this can be found in the
online documentation, especially the porting guide.

The HAL is layered into COMMON, ARCHITECTURE, VARIANT and TARGET
  COMMON - stuff common to all HALs, regardless of architecture
  ARCHITECTURE - everything which pertains to a particular class
    of processor, like ARM or PowerPC
  VARIANT - anything which is special to a family of processors
    such as PowerPC MPC8xx or ARM Xscale
  TARGET - Specifics of a particular board (target)

Most targets will need something from each of these categories.
The way that variant and target subdirectories are handled within
the architecture varies, ARM is a little different from PowerPC,
etc, but the result is the same.

Something like .../hal/powerpc/dinesh  (or whatever your board is 
called).  Look at the Rattler (hal/powerpc/rattler) for an example.

Note 1: the mpc8260 directory is old and should be removed.  All
newer targets use the mpc8xxx for processor variant support.

-- 
Gary Thomas <gary@mlbassoc.com>
MLB Associates


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]