freebsd-dev/sys/powerpc
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
..
aim Move the powerpc64 direct map base address from zero to high memory. This 2018-03-07 17:08:07 +00:00
booke Fix the psl_userset32 definition. 2018-03-01 04:44:17 +00:00
conf PowerNV: Initial support for OPAL I2C transfers 2018-03-01 14:11:07 +00:00
cpufreq sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
fpu sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
include Move the powerpc64 direct map base address from zero to high memory. This 2018-03-07 17:08:07 +00:00
mambo sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
mikrotik - Allow different slicers for different flash types to be registered 2017-02-22 10:21:39 +00:00
mpc85xx Remove platform_cpu_idle() and platform_cpu_idle_wakeup() interfaces 2018-02-24 01:46:56 +00:00
ofw Move the powerpc64 direct map base address from zero to high memory. This 2018-03-07 17:08:07 +00:00
powermac Fix minor locking issues in the Power Mac Uninorth PCI bridge driver. 2018-01-10 22:19:11 +00:00
powernv Fix use of unitialized variables. 2018-03-06 15:52:43 +00:00
powerpc Move the powerpc64 direct map base address from zero to high memory. This 2018-03-07 17:08:07 +00:00
ps3 Move the powerpc64 direct map base address from zero to high memory. This 2018-03-07 17:08:07 +00:00
pseries Merge AIM and Book-E PCPU fields 2018-02-17 20:59:12 +00:00
psim sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00