[SRU][O:linux-aws][PULL] Backport patches to support NVIDIA GB200
Magali Lemes
magali.lemes at canonical.com
Mon Mar 17 18:42:54 UTC 2025
BugLink: https://bugs.launchpad.net/bugs/2101185
[Impact]
AWS requested the following patchsets to support GB200 to be backported
to 6.8 kernels and newer:
#1: Update SMMUv3 to the modern iommu API (part 2b/3)
(https://lore.kernel.org/linux-iommu/0-v9-5cd718286059+79186-smmuv3_newapi_p2b_jgg@nvidia.com/)
#2: Add Tegra241 (Grace) CMDQV Support (part 1/2)
(https://lore.kernel.org/linux-iommu/cover.1724970714.git.nicolinc@nvidia.com/)
#3: iommu/tegra241-cmdqv: Fix alignment failure at max_n_shift
(https://lore.kernel.org/all/20241111030226.1940737-1-nicolinc@nvidia.com/)
[Fix]
- Patchset #1 is already included in the o:aws tree.
- All patches from patchset #2 are clean cherry-picks. Fixes to commit
918eb5c856f6 ("iommu/arm-smmu-v3: Add in-kernel support for NVIDIA
Tegra241 (Grace) CMDQV"), from patchset 2, which were also clean
cherry-picks, were added.
- Patchset #3's only patch and one fix to it were clean cherry-picks.
[Test Case]
Compile and boot tested.
Tested by AWS.
[Where problems could occur]
These patches introduce significant refactoring and features to the
SMMUv3 driver. Additionally, support to Tegra241's CMDQ-Virtualization
is being added.
[Other info]
SF #00404773
------------------------------------------------------------------------
The following changes since commit f7dffa22504c9b6506d9fbe3368fffaad1469562:
UBUNTU: Ubuntu-aws-6.11.0-1011.12 (2025-02-25 12:47:55 -0500)
are available in the Git repository at:
git://git.launchpad.net/~magalilemes/ubuntu/+source/linux-aws/+git/oracular
gb200
for you to fetch changes up to 225b718bf5084356529e51b91828eae0f93e60cf:
iommu/tegra241-cmdqv: Read SMMU IDR1.CMDQS instead of hardcoding
(2025-03-17 13:32:30 -0300)
----------------------------------------------------------------
Dan Carpenter (1):
iommu/tegra241-cmdqv: Fix ioremap() error handling in probe()
Jason Gunthorpe (1):
iommu/arm-smmu-v3: Add struct arm_smmu_impl_ops
Luis Claudio R. Goncalves (1):
iommu/tegra241-cmdqv: do not use smp_processor_id in preemptible
context
Magali Lemes (1):
UBUNTU: [Config] updateconfigs to enable CONFIG_TEGRA241_CMDQV
Nate Watterson (1):
iommu/arm-smmu-v3: Add in-kernel support for NVIDIA Tegra241
(Grace) CMDQV
Nicolin Chen (14):
iommu/arm-smmu-v3: Issue a batch of commands to the same cmdq
iommu/arm-smmu-v3: Pass in cmdq pointer to
arm_smmu_cmdq_build_sync_cmd
iommu/arm-smmu-v3: Pass in cmdq pointer to arm_smmu_cmdq_init
iommu/arm-smmu-v3: Make symbols public for CONFIG_TEGRA241_CMDQV
iommu/arm-smmu-v3: Add ARM_SMMU_OPT_TEGRA241_CMDQV
iommu/arm-smmu-v3: Add acpi_smmu_iort_probe_model for impl
iommu/arm-smmu-v3: Start a new batch if new command is not supported
iommu/tegra241-cmdqv: Limit CMDs for VCMDQs of a guest owned VINTF
iommu/tegra241-cmdqv: Fix -Wformat-truncation warnings in
lvcmdq_error_header
iommu/tegra241-cmdqv: Drop static at local variable
iommu/tegra241-cmdqv: Do not allocate vcmdq until
dma_set_mask_and_coherent
iommu/tegra241-cmdqv: Staticize cmdqv_debugfs_dir
iommu/tegra241-cmdqv: Fix alignment failure at max_n_shift
iommu/tegra241-cmdqv: Read SMMU IDR1.CMDQS instead of hardcoding
MAINTAINERS | 1 +
debian.aws/config/annotations | 1 +
drivers/iommu/Kconfig | 11 +++
drivers/iommu/arm/arm-smmu-v3/Makefile | 1 +
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 212
++++++++++++++++++++++++++++++++++---------
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 41 +++++++++
drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c | 912
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7 files changed, 1135 insertions(+), 44 deletions(-)
create mode 100644 drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c
More information about the kernel-team
mailing list