This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: HAL architecture question
- From: Gary Thomas <gary at mlbassoc dot com>
- To: Dinesh Kumar <mljangir at yahoo dot co dot in>
- Cc: ecos-mailing-list <ecos-discuss at sources dot redhat dot com>
- Date: 12 Nov 2003 05:09:11 -0700
- Subject: Re: [ECOS] HAL architecture question
- Organization: MLB Associates
- References: <20031112052621.51995.qmail@web8004.mail.in.yahoo.com>
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