freebsd-dev/sys/powerpc/booke
Justin Hibbits b5d5429449 powerpc/booke: Fix pmap_mapdev_attr() for multi-TLB1 entry mappings
Also, fix pmap_change_attr() to ignore non-kernel mappings.

* Fix a masking bug in mmu_booke_mapdev_attr() which caused it to align
  mappings to the smallest mapping alignment, instead of the largest.  This
  caused mappings to be potentially pessimally aligned, using more TLB
  entries than necessary.
* Return existing mappings from mmu_booke_mapdev_attr() that span more than
  one TLB1 entry.  The drm-current-kmod drivers map discontiguous segments
  of the GPU, resulting in more than one TLB entry being used to satisfy the
  mapping.
* Ignore non-kernel mappings in mmu_booke_change_attr().  There's a bug in
  the linuxkpi layer that causes it to actually try to change physical
  address mappings, instead of virtual addresses.  amd64 doesn't encounter
  this because it ignores non-kernel mappings.

With this it's possible to use drm-current-kmod on Book-E.
2019-11-06 04:40:12 +00:00
..
booke_machdep.c powerpc/booke: Check for the metadata address by physical address 2018-12-03 04:47:28 +00:00
locore.S Add support for building Book-E kernels with clang/lld. 2019-11-02 21:15:56 +00:00
machdep_e500.c sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
machdep_ppc4xx.c sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
mp_cpudep.c sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
platform_bare.c sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
pmap.c powerpc/booke: Fix pmap_mapdev_attr() for multi-TLB1 entry mappings 2019-11-06 04:40:12 +00:00
spe.c powerpc/SPE: Enable SPV bit for EFSCFD instruction emulation 2019-07-20 18:22:01 +00:00
trap_subr.S Add support for building Book-E kernels with clang/lld. 2019-11-02 21:15:56 +00:00