Date: Mon, 16 Feb 2026 17:50:05 +0000 From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 995090202cae - main - powerpc: document the magic constants for 16MB page size Message-ID: <699358cd.343e7.33bbc623@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=995090202cae47567cc5b0d92301692d49c1c035 commit 995090202cae47567cc5b0d92301692d49c1c035 Author: Adrian Chadd <adrian@FreeBSD.org> AuthorDate: 2026-02-16 17:49:52 +0000 Commit: Adrian Chadd <adrian@FreeBSD.org> CommitDate: 2026-02-16 17:49:52 +0000 powerpc: document the magic constants for 16MB page size After discussion with jhibbits@, we pulled out what is supported here and how it's supported. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55093 --- sys/powerpc/aim/moea64_native.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/sys/powerpc/aim/moea64_native.c b/sys/powerpc/aim/moea64_native.c index 7714187c2f4d..a3f54940ab1a 100644 --- a/sys/powerpc/aim/moea64_native.c +++ b/sys/powerpc/aim/moea64_native.c @@ -130,6 +130,19 @@ /* POWER9 only permits a 64k partition table size. */ #define PART_SIZE 0x10000 +/* + * These values are derived from the POWER8 user manual Version 1.3 + * (16-March-2016), 3.8.4 (large page support) and 3.8.16 (TLBIE Invalidate + * Entry instructions.) + * + * Notably: + * + * + POWER8 supports an MPSS (Multple Page Sizes per Segment) configuration + * of 4KB base, 16MB actual page size + * + RB[56:58] encoding for 16MB page == 100, RB[54:55] segment either 00 or 01 + * + RB[56:58] encoding for 4K page == 000, RB[54:55] segment either 00 or 01 + */ + /* Actual page sizes (to be used with tlbie, when L=0) */ #define AP_4K 0x00 #define AP_16M 0x80home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?699358cd.343e7.33bbc623>
