freebsd-dev/sys/powerpc/ps3
Nathan Whitehorn f9edb09d70 Move the powerpc64 direct map base address from zero to high memory. This
accomplishes a few things:
- Makes NULL an invalid address in the kernel, which is useful for catching
  bugs.
- Lays groundwork for radix-tree translation on POWER9, which requires the
  direct map be at high memory.
- Similarly lays groundwork for a direct map on 64-bit Book-E.

The new base address is chosen as the base of the fourth radix quadrant
(the minimum kernel address in this translation mode) and because all
supported CPUs ignore at least the first two bits of addresses in real
mode, allowing direct-map addresses to be used in real-mode handlers.
This is required by Linux and is part of the architecture standard
starting in POWER ISA 3, so can be relied upon.

Reviewed by:	jhibbits, Breno Leitao
Differential Revision:	D14499
2018-03-07 17:08:07 +00:00
..
ehci_ps3.c
if_glc.c
if_glcreg.h
mmu_ps3.c
ohci_ps3.c
platform_ps3.c Move the powerpc64 direct map base address from zero to high memory. This 2018-03-07 17:08:07 +00:00
ps3_syscons.c
ps3-hv-asm.awk
ps3-hv-header.awk
ps3-hvcall.h
ps3-hvcall.master
ps3-hvcall.S
ps3bus.c Remove assumption that all physical memory is available to the kernel and 2018-03-03 02:04:40 +00:00
ps3bus.h
ps3cdrom.c
ps3disk.c
ps3pic.c