Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys/arch



Module Name:    src
Committed By:   thorpej
Date:           Sun Nov 30 23:42:56 UTC 2025

Modified Files:
        src/sys/arch/m68k/include: pmap_68k.h
        src/sys/arch/m68k/m68k: pmap_68k.c
        src/sys/arch/virt68k/virt68k: bootinfo.c

Log Message:
pmap_bootstrap1() has some macros to aid translation between virtual and
physical addresses.  Move these into <m68k/pmap_68k.h> and put them into
two groups.

The first group (PMAP_BOOTSTRAP_RELOC_GLOB() and PMAP_BOOTSTRAP_RELOC_PA())
are for referencing global symbols and physical addresses from within the
context of pmap_bootstrap1() (or similar function) itself.

The second group (PMAP_BOOTSTRAP_VA_TO_PA() and PMAP_BOOTSTRAP_PA_TO_VA())
are for translating addresses that will be used in the context of the running
kernel once the MMU is enabled.

The former group is necessary because some platforms may call pmap_bootstrap1()
with the MMU *enabled* but running on foreign mappings whereby global
references work without relocation but access to physical addresses require
relocation (this is the case on mac68k systems that place the frame buffer
at physical address $0000.0000, in which case MacOS uses the MMU to simulate
the traditional MacOS memory map and we're running on those mappings when
the kernel starts).

Systems with special requirements (see above) can override each of these
macros individually by simply defining them in <machine/pmap.h> before
including <m68k/pmap_68k.k>.


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/m68k/include/pmap_68k.h
cvs rdiff -u -r1.42 -r1.43 src/sys/arch/m68k/m68k/pmap_68k.c
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/virt68k/virt68k/bootinfo.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index