]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
iommu/io-pgtable-dart: Add 4-level page table support
authorHector Martin <marcan@marcan.st>
Thu, 21 Aug 2025 10:15:59 +0000 (12:15 +0200)
committerJoerg Roedel <joerg.roedel@amd.com>
Fri, 5 Sep 2025 12:27:31 +0000 (14:27 +0200)
commit74a0e72f03ffd01b5d88b411f02d9b9861fdb99e
treed3652c4d1c3643e150b64a89678603481354fcb4
parent126889008694934f10a385cc05afc0e25b9e75ef
iommu/io-pgtable-dart: Add 4-level page table support

DARTs on t602x SoCs are of the t8110 variant but have an IAS of 42,
which means optional support for an extra page table level.

Refactor the PTE management to support an arbitrary level count, and
then calculate how many levels we need for any given configuration.

Signed-off-by: Hector Martin <marcan@marcan.st>
Signed-off-by: Janne Grunau <j@jannau.net>
Reviewed-by: Sven Peter <sven@kernel.org>
Reviewed-by: Neal Gompa <neal@gompa.dev>
Link: https://lore.kernel.org/r/20250821-apple-dart-4levels-v2-2-e39af79daa37@jannau.net
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
drivers/iommu/io-pgtable-dart.c
include/linux/io-pgtable.h