aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iommu/dma-iommu.c
AgeCommit message (Expand)AuthorFilesLines
4 daysMerge tag 'dma-mapping-6.10-2024-05-20' of git://git.infradead.org/users/hch/...Linus Torvalds1-15/+19
5 daysMerge tag 'mm-stable-2024-05-17-19-19' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-1/+1
11 daysMerge branches 'arm/renesas', 'arm/smmu', 'x86/amd', 'core' and 'x86/vt-d' in...Joerg Roedel1-27/+19
2024-05-07iommu/dma: avoid expensive indirect calls for sync operationsAlexander Lobakin1-1/+2
2024-05-07iommu/dma: fix zeroing of bounce buffer padding used by untrusted devicesMichael Kelley1-13/+16
2024-05-07swiotlb: remove alloc_size argument to swiotlb_tbl_map_single()Michael Kelley1-1/+1
2024-04-26iommu/dma: Centralise iommu_setup_dma_ops()Robin Murphy1-12/+6
2024-04-26iommu/dma: Make limit checks self-containedRobin Murphy1-12/+9
2024-04-25change alloc_pages name in dma_map_ops to avoid name conflictsSuren Baghdasaryan1-1/+1
2024-04-15iommu/dma: use iommu_put_pages_list() to releae freelistPasha Tatashin1-3/+4
2024-03-24Merge tag 'dma-mapping-6.9-2024-03-24' of git://git.infradead.org/users/hch/d...Linus Torvalds1-0/+9
2024-03-13iommu/dma: Force swiotlb_max_mapping_size on an untrusted deviceNicolin Chen1-0/+9
2024-03-06iommu/dma: Document min_align_mask assumptionRobin Murphy1-0/+5
2024-01-18Merge tag 'iommu-updates-v6.8' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-0/+3
2024-01-08mm, treewide: rename MAX_ORDER to MAX_PAGE_ORDERKirill A. Shutemov1-1/+1
2023-12-15iommu/dma: Trace bounce buffer usage when mapping buffersIsaac J. Manjarres1-0/+3
2023-10-02iommu/dma: Use a large flush queue and timeout for shadow_on_flushNiklas Schnelle1-18/+32
2023-10-02iommu/dma: Allow a single FQ in addition to per-CPU FQsNiklas Schnelle1-39/+129
2023-07-14iommu: Optimise PCI SAC address trickRobin Murphy1-6/+20
2023-06-29Merge tag 'iommu-updates-v6.5' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-1/+2
2023-06-19iommu/dma: force bouncing if the size is not cacheline-alignedCatalin Marinas1-9/+41
2023-06-19dma-mapping: name SG DMA flag helpers consistentlyRobin Murphy1-4/+4
2023-05-22iommu: Use flush queue capabilityRobin Murphy1-1/+2
2023-04-05mm, treewide: redefine MAX_ORDER sanelyKirill A. Shutemov1-1/+1
2023-04-05iommu: fix MAX_ORDER usage in __iommu_dma_alloc_pages()Kirill A. Shutemov1-2/+2
2023-01-25Merge branch 'iommu-memory-accounting' into coreJoerg Roedel1-5/+13
2023-01-25iommu/dma: Use the gfp parameter in __iommu_dma_alloc_noncontiguous()Jason Gunthorpe1-2/+9
2023-01-25iommu: Add a gfp parameter to iommu_map_sg()Jason Gunthorpe1-2/+3
2023-01-25iommu: Remove iommu_map_atomic()Jason Gunthorpe1-1/+1
2023-01-25iommu: Add a gfp parameter to iommu_map()Jason Gunthorpe1-1/+1
2023-01-25iommu: dma: Use of_iommu_get_resv_regions()Thierry Reding1-0/+3
2022-11-21dma-mapping: reject __GFP_COMP in dma_alloc_attrsChristoph Hellwig1-3/+0
2022-09-09iommu/dma: Make header privateRobin Murphy1-1/+2
2022-09-07iommu/dma: Move public interfaces to linux/iommu.hRobin Murphy1-2/+13
2022-08-06Revert "iommu/dma: Add config for PCI SAC address trick"Linus Torvalds1-1/+1
2022-08-06Merge tag 'dma-mapping-5.20-2022-08-06' of git://git.infradead.org/users/hch/...Linus Torvalds1-14/+91
2022-07-26iommu/dma: support PCI P2PDMA pages in dma-iommu map_sgLogan Gunthorpe1-14/+85
2022-07-19dma-iommu: add iommu_dma_opt_mapping_size()John Garry1-0/+6
2022-07-06ACPI/IORT: Provide a generic helper to retrieve reserve regionsShameer Kolothum1-1/+1
2022-06-22iommu/dma: Fix race condition during iova_domain initializationYunfei Wang1-4/+13
2022-06-22iommu/dma: Add config for PCI SAC address trickRobin Murphy1-1/+1
2022-05-13iommu/dma: Explicitly sort PCI DMA windowsRobin Murphy1-1/+12
2022-05-13iommu/dma: Fix iova map result check bugYunfei Wang1-3/+4
2022-04-28dma-iommu: Check that swiotlb is active before trying to use itMario Limonciello1-0/+5
2022-03-29Merge tag 'dma-mapping-5.18' of git://git.infradead.org/users/hch/dma-mappingLinus Torvalds1-9/+5
2022-03-03dma-mapping: remove CONFIG_DMA_REMAPChristoph Hellwig1-9/+5
2022-02-14iommu/iova: Separate out rcache initJohn Garry1-0/+4
2021-12-20iommu: Move flush queue data into iommu_dma_cookieRobin Murphy1-77/+94
2021-12-20iommu/iova: Move flush queue code to iommu-dmaRobin Murphy1-1/+176
2021-12-20iommu/vt-d: Use put_pages_listMatthew Wilcox (Oracle)1-1/+1
2021-12-20iommu/iova: Squash flush_cb abstractionRobin Murphy1-12/+1
2021-12-20iommu/iova: Squash entry_dtor abstractionRobin Murphy1-15/+2
2021-12-17iommu/iova: Move fast alloc size roundup into alloc_iova_fast()John Garry via iommu1-8/+0
2021-10-31Merge branches 'apple/dart', 'arm/mediatek', 'arm/renesas', 'arm/smmu', 'arm/...Joerg Roedel1-114/+86
2021-10-28iommu/dma: Fix incorrect error return on iommu deferred attachLogan Gunthorpe1-1/+2
2021-10-27iommu/dma: Use kvcalloc() instead of kvzalloc()Gustavo A. R. Silva1-1/+1
2021-09-29iommu/dma: Account for min_align_mask w/swiotlbDavid Stevens1-3/+2
2021-09-29swiotlb: Support aligned swiotlb buffersDavid Stevens1-2/+2
2021-09-29iommu/dma: Check CONFIG_SWIOTLB more broadlyDavid Stevens1-8/+12
2021-09-29iommu/dma: Fold _swiotlb helpers into callersDavid Stevens1-76/+59
2021-09-29iommu/dma: Skip extra sync during unmap w/swiotlbDavid Stevens1-5/+6
2021-09-29iommu/dma: Fix arch_sync_dma for mapDavid Stevens1-9/+7
2021-09-29iommu/dma: Fix sync_sg with swiotlbDavid Stevens1-20/+13
2021-09-28iommu/dma: Unexport IOVA cookie managementRobin Murphy1-7/+0
2021-09-03Merge tag 'iommu-updates-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-17/+34
2021-09-03Merge branch 'stable/for-linus-5.15' of git://git.kernel.org/pub/scm/linux/ke...Linus Torvalds1-6/+6
2021-09-02Merge tag 'dma-mapping-5.15' of git://git.infradead.org/users/hch/dma-mappingLinus Torvalds1-7/+15
2021-08-20Merge branches 'apple/dart', 'arm/smmu', 'iommu/fixes', 'x86/amd', 'x86/vt-d'...Joerg Roedel1-17/+35
2021-08-18iommu: Allow enabling non-strict mode dynamicallyRobin Murphy1-15/+32
2021-08-18iommu: Express DMA strictness via the domain typeRobin Murphy1-4/+6
2021-08-18iommu: Introduce explicit type for non-strict DMA domainsRobin Murphy1-1/+1
2021-08-18iommu: Indicate queued flushes via gather dataRobin Murphy1-0/+1
2021-08-18iommu/dma: Remove redundant "!dev" checksRobin Murphy1-4/+1
2021-08-09iommu/dma: return error code from iommu_dma_map_sg()Logan Gunthorpe1-7/+15
2021-07-26iommu/dma: Fix leak in non-contiguous APIEzequiel Garcia1-0/+1
2021-07-13swiotlb: Update is_swiotlb_buffer to add a struct device argumentClaire Chang1-6/+6
2021-06-25Merge branches 'iommu/fixes', 'arm/rockchip', 'arm/smmu', 'x86/vt-d', 'x86/am...Joerg Roedel1-8/+11
2021-06-25iommu/virtio: Enable x86 supportJean-Philippe Brucker1-0/+1
2021-06-25iommu/dma: Pass address limit rather than size to iommu_setup_dma_ops()Jean-Philippe Brucker1-6/+6
2021-06-08iommu/dma: Fix compile warning in 32-bit buildsJoerg Roedel1-2/+2
2021-06-08iommu/dma: Fix IOVA reserve dma rangesSrinath Mannam1-2/+4
2021-05-04Merge branch 'stable/for-linus-5.13' of git://git.kernel.org/pub/scm/linux/ke...Linus Torvalds1-14/+9
2021-05-04Merge tag 'dma-mapping-5.13' of git://git.infradead.org/users/hch/dma-mappingLinus Torvalds1-32/+71
2021-04-07iommu: remove DOMAIN_ATTR_DMA_USE_FLUSH_QUEUERobin Murphy1-7/+2
2021-04-07iommu: Delete iommu_dma_free_cpu_cached_iovas()John Garry1-9/+0
2021-03-18iommu/dma: Resurrect the "forcedac" optionRobin Murphy1-1/+12
2021-03-17swiotlb: split swiotlb_tbl_sync_singleChristoph Hellwig1-6/+6
2021-03-17swiotlb: remove the alloc_size parameter to swiotlb_tbl_unmap_singleChristoph Hellwig1-8/+3
2021-03-15dma-iommu: implement ->alloc_noncontiguousChristoph Hellwig1-0/+36
2021-03-15dma-iommu: refactor iommu_dma_alloc_remapChristoph Hellwig1-32/+35
2021-03-05Merge tag 'iommu-fixes-v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-7/+8
2021-03-04iommu: Don't use lazy flush for untrusted deviceLu Baolu1-7/+8
2021-02-24Merge tag 'dma-mapping-5.12' of git://git.infradead.org/users/hch/dma-mappingLinus Torvalds1-30/+0
2021-02-09dma-mapping: remove the {alloc,free}_noncoherent methodsChristoph Hellwig1-30/+0
2021-01-28iommu: use the __iommu_attach_device() directly for deferred attachLianbo Jiang1-15/+3
2021-01-28dma-iommu: use static-key to minimize the impact in the fast-pathLianbo Jiang1-6/+11
2021-01-07Revert "iommu: Add quirk for Intel graphic devices in map_sg"Lu Baolu1-27/+0
2020-12-09dma-iommu: remove __iommu_dma_mmapChristoph Hellwig1-16/+1
2020-11-25iommu: Add quirk for Intel graphic devices in map_sgLu Baolu1-0/+27
2020-11-25iommu: Allow the dma-iommu api to use bounce buffersTom Murphy1-13/+149
2020-11-25iommu: Add iommu_dma_free_cpu_cached_iovas()Tom Murphy1-0/+9
2020-11-25iommu: Handle freelists when using deferred flushing in iommu driversTom Murphy1-8/+21
2020-10-15Merge tag 'dma-mapping-5.10' of git://git.infradead.org/users/hch/dma-mappingLinus Torvalds1-6/+40
2020-10-06dma-mapping: merge <linux/dma-noncoherent.h> into <linux/dma-map-ops.h>Christoph Hellwig1-1/+0
2020-10-06dma-mapping: merge <linux/dma-contiguous.h> into <linux/dma-map-ops.h>Christoph Hellwig1-1/+0
2020-10-06dma-mapping: split <linux/dma-mapping.h>Christoph Hellwig1-0/+1
2020-09-25dma-iommu: implement ->alloc_noncoherentChristoph Hellwig1-4/+37
2020-09-25dma-mapping: add a new dma_alloc_pages APIChristoph Hellwig1-0/+2
2020-09-18iommu/dma: Handle init_iova_flush_queue() failure in dma-iommu pathTom Murphy1-2/+5
2020-09-04iommu/dma: Remove broken huge page handlingRobin Murphy1-8/+5
2020-09-04iommu: Rename iommu_tlb_* functions to iommu_iotlb_*Tom Murphy1-1/+1
2020-08-14dma-pool: fix coherent pool allocations for IOMMU mappingsChristoph Hellwig1-2/+2
2020-04-20dma-pool: add additional coherent pools to map to gfp maskDavid Rientjes1-2/+3
2020-03-04iommu/dma: Fix MSI reservation allocationMarc Zyngier1-8/+8
2020-01-07iommu/dma: fix variable 'cookie' set but not usedQian Cai1-3/+0
2019-12-18iommu/dma: Relax locking in iommu_dma_prepare_msi()Robin Murphy1-9/+8
2019-12-17iommu/dma: Rationalise types for DMA masksRobin Murphy1-3/+3
2019-12-02Merge tag 'iommu-updates-v5.5' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-8/+35
2019-11-21dma-mapping: treat dev->bus_dma_mask as a DMA limitNicolas Saenz Julienne1-2/+1
2019-11-20dma-mapping: drop the dev argument to arch_sync_dma_for_*Christoph Hellwig1-5/+5
2019-10-15iommu/dma-iommu: Use the dev->coherent_dma_maskTom Murphy1-5/+7
2019-10-15iommu/dma-iommu: Handle deferred devicesTom Murphy1-1/+26
2019-10-15iommu: Add gfp parameter to iommu_ops::mapTom Murphy1-3/+3
2019-09-19Merge tag 'dma-mapping-5.4' of git://git.infradead.org/users/hch/dma-mappingLinus Torvalds1-15/+14
2019-09-11Merge branches 'arm/omap', 'arm/exynos', 'arm/smmu', 'arm/mediatek', 'arm/qco...Joerg Roedel1-3/+10
2019-09-04dma-mapping: introduce a dma_common_find_pages helperChristoph Hellwig1-12/+3
2019-09-04dma-mapping: always use VM_DMA_COHERENT for generic DMA remapChristoph Hellwig1-3/+3
2019-09-03iommu/dma: add a new dma_map_ops of get_merge_boundary()Yoshihiro Shimoda1-0/+8
2019-08-30iommu/dma: Fix for dereferencing before null checkingYunsheng Lin1-1/+3
2019-08-30Merge branch 'arm/smmu' into arm/mediatekJoerg Roedel1-2/+7
2019-08-23Merge branch 'for-joerg/arm-smmu/updates' of git://git.kernel.org/pub/scm/lin...Joerg Roedel1-2/+7
2019-08-21dma-direct: fix zone selection after an unaddressable CMA allocationChristoph Hellwig1-0/+3
2019-08-14Merge tag 'dma-mapping-5.3-4' of git://git.infradead.org/users/hch/dma-mappingLinus Torvalds1-3/+3
2019-08-10dma-mapping: fix page attributes for dma_mmap_*Christoph Hellwig1-3/+3
2019-08-09iommu/dma: Handle SG length overflow betterRobin Murphy1-1/+1
2019-08-06iommu/dma: Handle MSI mappings separatelyRobin Murphy1-7/+10
2019-07-24iommu: Introduce struct iommu_iotlb_gather for batching TLB flushesWill Deacon1-2/+7
2019-07-12Merge tag 'dma-mapping-5.3' of git://git.infradead.org/users/hch/dma-mappingLinus Torvalds1-10/+4
2019-07-04Merge branches 'x86/vt-d', 'x86/amd', 'arm/smmu', 'arm/omap', 'generic-dma-op...Joerg Roedel1-102/+369
2019-06-24Merge tag 'v5.2-rc6' into generic-dma-opsJoerg Roedel1-1/+1
2019-06-19treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234Thomas Gleixner1-12/+1
2019-06-18iommu: Fix integer truncationArnd Bergmann1-2/+2
2019-06-14iommu/dma: Apply dma_{alloc,free}_contiguous functionsNicolin Chen1-10/+4
2019-06-03iommu/dma: Fix condition check in iommu_dma_unmap_sgNathan Chancellor1-1/+1
2019-05-27iommu/dma: Switch copyright boilerplace to SPDXChristoph Hellwig1-12/+1
2019-05-27iommu/dma: Don't depend on CONFIG_DMA_DIRECT_REMAPChristoph Hellwig1-7/+9
2019-05-27iommu/dma: Refactor iommu_dma_mmapChristoph Hellwig1-35/+11
2019-05-27iommu/dma: Refactor iommu_dma_get_sgtableChristoph Hellwig1-28/+17
2019-05-27iommu/dma: Refactor iommu_dma_alloc, part 2Christoph Hellwig1-30/+35
2019-05-27iommu/dma: Cleanup variable naming in iommu_dma_allocRobin Murphy1-23/+22
2019-05-27iommu/dma: Split iommu_dma_freeRobin Murphy1-4/+8
2019-05-27iommu/dma: Merge the CMA and alloc_pages allocation pathsChristoph Hellwig1-20/+12
2019-05-27iommu/dma: Don't remap CMA unnecessarilyRobin Murphy1-7/+12
2019-05-27iommu/dma: Refactor iommu_dma_allocRobin Murphy1-30/+30
2019-05-27iommu/dma: Refactor iommu_dma_freeRobin Murphy1-40/+33
2019-05-27iommu/dma: Remove __iommu_dma_freeChristoph Hellwig1-19/+2
2019-05-27iommu/dma: Refactor the page array remapping allocatorChristoph Hellwig1-28/+26
2019-05-27iommu/dma: Factor out remapped pages lookupRobin Murphy1-12/+20
2019-05-27iommu/dma: Squash __iommu_dma_{map,unmap}_page helpersRobin Murphy1-18/+7
2019-05-27iommu/dma: Move domain lookup into __iommu_dma_{map,unmap}Robin Murphy1-15/+14
2019-05-27iommu/dma: Move __iommu_dma_mapChristoph Hellwig1-23/+23
2019-05-27iommu/dma: move the arm64 wrappers to common codeChristoph Hellwig1-28/+370
2019-05-27iommu/dma: Use for_each_sg in iommu_dma_allocChristoph Hellwig1-9/+5
2019-05-27iommu/dma: Remove the flush_page callbackChristoph Hellwig1-5/+3
2019-05-19Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-20/+28
2019-05-14Merge tag 'pci-v5.2-changes' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-3/+32
2019-05-14iommu/dma-iommu.c: convert to use vm_map_pages()Souptick Joarder1-11/+1
2019-05-06iommu/dma: Reserve IOVA for PCIe inaccessible DMA addressSrinath Mannam1-3/+32
2019-05-03iommu/dma-iommu: Remove iommu_dma_map_msi_msg()Julien Grall1-20/+0
2019-05-03iommu/dma-iommu: Split iommu_dma_map_msi_msg() in two partsJulien Grall1-9/+37
2019-01-24iommu/dma: Remove unused variableShaokun Zhang1-2/+1
2019-01-01Merge tag 'iommu-updates-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-11/+11
2018-12-17iommu/dma: Use helper functions to access dev->iommu_fwspecJoerg Roedel1-1/+1
2018-12-11iommu/dma: Use NUMA aware memory allocations in __iommu_dma_alloc_pages()Ganapatrao Kulkarni1-10/+10
2018-12-06iommu/dma-iommu: remove the mapping_error dma_map_ops methodChristoph Hellwig1-15/+8
2018-10-10Merge branches 'arm/renesas', 'arm/smmu', 'ppc/pamu', 'x86/vt-d', 'x86/amd' a...Joerg Roedel1-12/+43
2018-10-01iommu/dma: Add support for non-strict modeZhen Lei1-1/+31
2018-09-25iommu/dma: Use fast DMA domain lookupRobin Murphy1-11/+12
2018-07-27iommu/dma: Respect bus DMA limit for IOVAsRobin Murphy1-0/+3
2018-05-03iommu/dma: Move PCI window region reservation back into dma specific path.Shameer Kolothum1-29/+25
2018-02-14iommu/dma: Add HW MSI(GICv3 ITS) address regions reservationShameer Kolothum1-1/+7
2017-10-12iommu/iova: Make rcache flush optional on IOVA allocation failureTomasz Nowicki1-2/+4
2017-09-27iommu/iova: Make dma_32bit_pfn implicitZhen Lei1-17/+1
2017-07-12Merge tag 'iommu-updates-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-1/+1
2017-06-28Merge branches 'iommu/fixes', 'arm/rockchip', 'arm/renesas', 'arm/smmu', 'arm...Joerg Roedel1-1/+1
2017-06-20iommu/dma: don't rely on DMA_ERROR_CODEChristoph Hellwig1-8/+10
2017-05-17iommu/iova: Sort out rbtree limit_pfn handlingRobin Murphy1-1/+1
2017-05-17iommu/dma: Don't touch invalid iova_domain membersRobin Murphy1-5/+8
2017-04-03iommu/dma: Plumb in the per-CPU IOVA cachesRobin Murphy1-20/+17
2017-04-03iommu/dma: Clean up MSI IOVA allocationRobin Murphy1-33/+25
2017-04-03iommu/dma: Convert to address-based allocationRobin Murphy1-52/+67
2017-03-22iommu/dma: Make PCI window reservation genericRobin Murphy1-10/+28
2017-03-22iommu/dma: Handle IOMMU API reserved regionsRobin Murphy1-7/+69
2017-03-22iommu/dma: Don't reserve PCI I/O windowsRobin Murphy1-2/+1
2017-02-06iommu/dma: Remove bogus dma_supported() implementationRobin Murphy1-10/+0
2017-01-30iommu/dma: Implement PCI allocation optimisationRobin Murphy1-6/+15
2017-01-30iommu/dma: Stop getting dma_32bit_pfn wrongRobin Murphy1-5/+18
2017-01-30Merge branch 'iommu/iommu-priv' of git://git.kernel.org/pub/scm/linux/kernel/...Joerg Roedel1-3/+9
2017-01-23iommu/dma: Allow MSI-only cookiesRobin Murphy1-23/+96
2017-01-19arm64/dma-mapping: Implement DMA_ATTR_PRIVILEGEDMitchel Humpherys1-3/+9