[ECOS] protected mode?

Nick Garnett nickg@ecoscentric.com
Mon Aug 4 17:17:00 GMT 2003


Chuck McManis <ecos@mcmanis.com> writes:

> I had wondered if it were running in real mode because RedBoot prints
> the banner RAM Available 0x00000000 - 0x000a0000, ... and that
> 0x000a0000 is 640K. But my system has 512MB plugged into it. So that
> made be suspicious. Glad it isn't!

That's a bug in RedBoot. It can currently only report the size of a
single contiguous memory region. Since it gets loaded into low RAM, it
reports that. All eCos applications get loaded above the 1M mark.

> However that makes me wonder if
> you've set up the PTES to be a simple 1:1 mapping of virtual to
> physical, if so then I can just pass pointer to the DMA engine and it
> will know how to get there right? (no va_to_pa() translation step
> required).
>

We don't use the paged MMU at all. We just set up the segments to do a
4G 1-1 mapping. So any program address should work correctly with the
DMA engines and PCI devices. However, if you are writing portable
code, there are virtual<->physical mapping macros that you should use.


-- 
Nick Garnett                    eCos Kernel Architect
http://www.ecoscentric.com      The eCos and RedBoot experts


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



More information about the Ecos-discuss mailing list