This is the mail archive of the
ecos-discuss@sourceware.cygnus.com
mailing list for the eCos project.
Re: Porting to MMUless PPC
- To: Samuel Tardieu <sam at inf dot enst dot fr>
- Subject: Re: [ECOS] Porting to MMUless PPC
- From: Gary Thomas <gthomas at cygnus dot co dot uk>
- Date: Wed, 01 Dec 1999 08:33:56 -0700 (MST)
- Cc: ecos-discuss at sourceware dot cygnus dot com, chandra shekar <chandrag at danlawinc dot com>
On 01-Dec-99 Samuel Tardieu wrote:
> On 1/12, chandra shekar wrote:
>
>| I am trying to port eCos to MPC5XX. It is not having an MMU. Which
>| parts of eCos kernel (not HAL layer) call MMU functions defined in the
>| file hal_misc.c? 'vectors.S' module of HAL calls them. Can I delete
>| those calls without any effect?
>
> Disclaimer: I have not searched in the source, so this answer may be wrong.
>
> As far as I remember, the HAL PPC MMU stuff maps all the zones you give as
> executable and read/write, so the goal seems to let the user define a memory
> map as well as define what zones should be cached. I cannot see any reason
> why the MMU would be further used.
>
Memory Management Units (MMU) are only used in eCos to establish basic mapping,
and in some cases, cacheability.
On the PowerPC, we use BATs (or their equivalent) to set up cacheable/non-cacheable
regions of memory. There are no other uses of memory management in eCos.
The primary concern in a system without an MMU, like the PPC 5xx, would be how
to define cache behaviour (which regions are cached, etc). I'm not familiar
enough with that family to tell you the details, though.