[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZuvYnXzbM2qfXQPT@infradead.org>
Date: Thu, 19 Sep 2024 09:54:05 +0200
From: Christoph Hellwig <hch@...radead.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, iommu@...ts.linux.dev
Subject: [GIT PULL] dma-mapping updates for Linux 6.12
The following changes since commit 47ac09b91befbb6a235ab620c32af719f8208399:
Linux 6.11-rc4 (2024-08-18 13:17:27 -0700)
are available in the Git repository at:
git://git.infradead.org/users/hch/dma-mapping.git tags/dma-mapping-6.12-2024-09-19
for you to fetch changes up to a5fb217f13f74b2af2ab366ffad522bae717f93c:
dma-mapping: reflow dma_supported (2024-09-12 16:28:00 +0200)
----------------------------------------------------------------
dma-mapping updates for linux 6.12
- support DMA zones for arm64 systems where memory starts at > 4GB
(Baruch Siach, Catalin Marinas)
- support direct calls into dma-iommu and thus obsolete dma_map_ops for
many common configurations (Leon Romanovsky)
- add DMA-API tracing (Sean Anderson)
- remove the not very useful return value from various dma_set_* APIs
(Christoph Hellwig)
- misc cleanups and minor optimizations (Chen Y, Yosry Ahmed,
Christoph Hellwig)
----------------------------------------------------------------
Baruch Siach (2):
arm64: mm: fix DMA zone when dma-ranges is missing
arm64: mm: keep low RAM dma zone
Catalin Marinas (2):
dma-mapping: replace zone_dma_bits by zone_dma_limit
arm64: support DMA zone above 4GB
Chen Yu (1):
dma-direct: optimize page freeing when it is not addressable
Christoph Hellwig (7):
scsi: check that busses support the DMA API before setting dma parameters
dma-mapping: don't return errors from dma_set_min_align_mask
dma-mapping: don't return errors from dma_set_seg_boundary
dma-mapping: don't return errors from dma_set_max_seg_size
vdpa_sim: don't select DMA_OPS
dma-mapping: clearly mark DMA ops as an architecture feature
dma-mapping: reflow dma_supported
Leon Romanovsky (4):
dma-mapping: call ->unmap_page and ->unmap_sg unconditionally
dma-mapping: direct calls for dma-iommu
dma-mapping: use IOMMU DMA calls for common alloc/free page calls
dma-mapping: reliably inform about DMA support for IOMMU
Sean Anderson (1):
dma-mapping: add tracing for dma-mapping API calls
Yosry Ahmed (1):
dma-mapping: use bit masking to check VM_DMA_COHERENT
MAINTAINERS | 1 +
arch/Kconfig | 9 +
arch/alpha/Kconfig | 2 +-
arch/arm/Kconfig | 2 +-
arch/arm64/Kconfig | 1 +
arch/arm64/mm/init.c | 39 ++-
arch/mips/Kconfig | 2 +-
arch/parisc/Kconfig | 2 +-
arch/powerpc/Kconfig | 2 +-
arch/powerpc/mm/mem.c | 5 +-
arch/s390/Kconfig | 2 +-
arch/s390/mm/init.c | 2 +-
arch/sparc/Kconfig | 2 +-
arch/x86/Kconfig | 2 +-
drivers/accel/qaic/qaic_drv.c | 4 +-
drivers/dma/idma64.c | 4 +-
drivers/dma/pl330.c | 5 +-
drivers/dma/qcom/bam_dma.c | 6 +-
drivers/dma/sh/rcar-dmac.c | 4 +-
drivers/dma/ste_dma40.c | 6 +-
drivers/gpu/drm/mediatek/mtk_drm_drv.c | 6 +-
drivers/iommu/Kconfig | 2 +-
drivers/iommu/dma-iommu.c | 104 +++----
drivers/iommu/intel/Kconfig | 1 -
drivers/macintosh/macio_asic.c | 4 +-
.../media/common/videobuf2/videobuf2-dma-contig.c | 3 +-
drivers/media/pci/intel/ipu6/Kconfig | 7 +-
drivers/media/pci/intel/ipu6/ipu6.c | 4 +-
drivers/mmc/host/mmci_stm32_sdmmc.c | 3 +-
drivers/net/ethernet/microsoft/mana/gdma_main.c | 6 +-
drivers/scsi/lpfc/lpfc_init.c | 7 +-
drivers/scsi/scsi_lib.c | 11 +-
drivers/vdpa/Kconfig | 10 +-
drivers/xen/Kconfig | 4 +-
include/linux/device.h | 7 +-
include/linux/dma-direct.h | 2 +-
include/linux/dma-map-ops.h | 19 +-
include/linux/dma-mapping.h | 25 +-
include/linux/iommu-dma.h | 155 ++++++++++
include/trace/events/dma.h | 341 +++++++++++++++++++++
kernel/dma/Kconfig | 7 +-
kernel/dma/Makefile | 4 +-
kernel/dma/direct.c | 8 +-
kernel/dma/dummy.c | 21 ++
kernel/dma/mapping.c | 115 ++++++-
kernel/dma/ops_helpers.c | 14 +-
kernel/dma/pool.c | 4 +-
kernel/dma/remap.c | 6 +-
kernel/dma/swiotlb.c | 6 +-
49 files changed, 782 insertions(+), 226 deletions(-)
create mode 100644 include/linux/iommu-dma.h
create mode 100644 include/trace/events/dma.h
Powered by blists - more mailing lists