]> git.baikalelectronics.ru Git - kernel.git/commit
MIPS: Rearrange PTE bits into fixed positions.
authorSteven J. Hill <Steven.Hill@imgtec.com>
Fri, 27 Feb 2015 00:16:37 +0000 (18:16 -0600)
committerRalf Baechle <ralf@linux-mips.org>
Wed, 18 Mar 2015 15:19:35 +0000 (16:19 +0100)
commite4641ac505e25c0cbcaaf06ed1cabc03f8076d14
treeac11320b12f980d1b97eee052de84f86917f8e36
parent84539b0b6e1554aff26bf225b12781fa1c0a6a27
MIPS: Rearrange PTE bits into fixed positions.

This patch rearranges the PTE bits into fixed positions for R2
and later cores. In the past, the TLB handling code did runtime
checking of RI/XI and adjusted the shifts and rotates in order
to fit the largest PFN value into the PTE. The checking now
occurs when building the TLB handler, thus eliminating those
checks. These new arrangements also define the largest possible
PFN value that can fit in the PTE. HUGE page support is only
available for 64-bit cores. Layouts of the PTE bits are now:

   64-bit, R1 or earlier:     CCC D V G [S H] M A W R P
   32-bit, R1 or earler:      CCC D V G M A W R P
   64-bit, R2 or later:       CCC D V G RI/R XI [S H] M A W P
   32-bit, R2 or later:       CCC D V G RI/R XI M A W P

[ralf@linux-mips.org: Fix another build error *rant* *rant*]

Signed-off-by: Steven J. Hill <Steven.Hill@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/9353/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/include/asm/pgtable-bits.h
arch/mips/include/asm/pgtable.h
arch/mips/mm/tlbex.c