]> git.dujemihanovic.xyz Git - u-boot.git/commit
iommu: apple: Manage IOVA separately from global LMB mem map
authorJanne Grunau <j@jannau.net>
Mon, 11 Nov 2024 06:56:34 +0000 (07:56 +0100)
committerTom Rini <trini@konsulko.com>
Mon, 11 Nov 2024 13:26:44 +0000 (07:26 -0600)
commitf642f344348558e05902175e7517c7a12f2c5562
tree0d5f1dd07cb78b258d8de86c1d40abd8c1ce9ec7
parentf6999cb554954c9fde2070cd70919d2d714daf64
iommu: apple: Manage IOVA separately from global LMB mem map

There is no overlap between the IOVA space managed by the iommu (here
the 32-bit address space) and physical RAM on Apple silicon systems. The
RAM starts at 0x10_0000_0000 or 0x100_0000_0000 so it's not possible to
manage the IOVA with the global memory LMB and use 1:1 translation.
In addition each device has its own iommu and does not need to share the
address space with all other devices. This should not be problem for
u-boot's limited use and hardware support.
Restore the private per instance LMB IOVA map.

Fixes: ed17a33fed2 ("lmb: make LMB memory map persistent and global")
Signed-off-by: Janne Grunau <j@jannau.net>
drivers/iommu/apple_dart.c