[PATCH] Move from kseg0 to xkphys for 64 bit.

Jayachandran C. c.jayachandran at gmail.com
Mon Aug 16 16:10:03 UTC 2010


I've attached the changes to move the 64bit port to use 64bit XKPHYS
mapping of the physical memory instead of the current KSEG0.  With
this changes the 64bit port will use just one freelist, and can
allocate page table pages from anywhere in the memory.

The changes are mainly to introduce macros like
MIPS_PHYS_TO_DIRECT(pa), MIPS_DIRECT_TO_PHYS(), which will use KSEG0
in 32 bit compilation and XKPHYS in 64 bit compilation. I also ended
up changing the macro based PMAP_LMEM_MAP1(), PMAP_LMEM_MAP2(),
PMAP_LMEM_UNMAP() to inline functions.

I have also introduced a macro MIPS_DIRECT_MAPPABLE(pa), which will
further reduce the cases in which we will need to have a special case
for 64 bit compilation.

Please let me know your comments.

Thanks,
JC.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 64-xkphys.patch
Type: application/octet-stream
Size: 21676 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-mips/attachments/20100816/b52fdb2b/64-xkphys.obj


More information about the freebsd-mips mailing list