aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/iommu.h
AgeCommit message (Expand)AuthorFilesLines
12 daysMerge branches 'arm/renesas', 'arm/smmu', 'x86/amd', 'core' and 'x86/vt-d' in...Joerg Roedel1-10/+6
2024-04-26iommu: Add ops->domain_alloc_sva()Jason Gunthorpe1-0/+3
2024-04-26iommu/dma: Centralise iommu_setup_dma_ops()Robin Murphy1-7/+0
2024-04-26iommu: Add ops->domain_alloc_sva()Jason Gunthorpe1-0/+3
2024-04-26iommu/vt-d: Remove private data use in fault messageJingqi Liu1-2/+1
2024-04-12iommu: Pass domain to remove_dev_pasid() opYi Liu1-1/+2
2024-03-08Merge branches 'arm/mediatek', 'arm/renesas', 'arm/smmu', 'x86/vt-d', 'x86/am...Joerg Roedel1-78/+217
2024-03-06iommu: Add static iommu_ops->release_domainLu Baolu1-0/+1
2024-03-01iommu: constify fwnode in iommu_ops_from_fwnode()Krzysztof Kozlowski1-2/+2
2024-03-01iommu: constify of_phandle_args in xlateKrzysztof Kozlowski1-2/+2
2024-02-23iommu/sva: Restore SVA handle sharingJason Gunthorpe1-0/+3
2024-02-16iommu: Make iommu_report_device_fault() return voidLu Baolu1-3/+2
2024-02-16iommu: Make iopf_group_response() return voidLu Baolu1-8/+6
2024-02-16iommu: Track iopf group instead of last faultLu Baolu1-4/+2
2024-02-16iommu: Improve iopf_queue_remove_device()Lu Baolu1-3/+2
2024-02-16iommu: Use refcount for fault data accessLu Baolu1-9/+8
2024-02-16iommu: Separate SVA and IOPFLu Baolu1-24/+74
2024-02-16iommu: Make iommu_queue_iopf() more genericLu Baolu1-2/+2
2024-02-16iommu: Prepare for separating SVA and IOPFLu Baolu1-1/+19
2024-02-16iommu: Merge iommu_fault_event and iopf_faultLu Baolu1-19/+8
2024-02-16iommu: Remove iommu_[un]register_device_fault_handler()Lu Baolu1-23/+0
2024-02-16iommu: Merge iopf_device_param into iommu_fault_paramLu Baolu1-4/+14
2024-02-16iommu: Cleanup iopf data structure definitionsLu Baolu1-16/+11
2024-02-16iommu: Remove unrecoverable fault dataLu Baolu1-70/+2
2024-02-16iommu: Move iommu fault data to linux/iommu.hLu Baolu1-1/+151
2024-02-09iommu: Introduce iommu_group_mutex_assert()Vasant Hegde1-0/+8
2024-02-09iommu/amd: Introduce get_amd_iommu_from_dev()Suravee Suthikulpanit1-0/+16
2024-01-18Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-0/+77
2024-01-11iommu: Add iommu_copy_struct_from_user_array helperNicolin Chen1-0/+51
2024-01-11iommu: Add cache_invalidate_user opLu Baolu1-0/+26
2023-12-12iommu: Mark dev_iommu_priv_set() with a lockdepJason Gunthorpe1-4/+1
2023-12-12iommu: Support mm PASID 1:n with sva domainsTina Zhang1-3/+20
2023-12-12mm: Add structure to keep sva informationTina Zhang1-0/+5
2023-12-12iommu: Add mm_get_enqcmd_pasid() helper functionTina Zhang1-0/+12
2023-12-12iommu: Change kconfig around IOMMU_SVAJason Gunthorpe1-1/+1
2023-11-27Merge branch 'iommu/fixes' into coreJoerg Roedel1-0/+1
2023-11-27iommu: Validate that devices match domainsRobin Murphy1-1/+1
2023-11-27iommu: Avoid more races around device probeRobin Murphy1-0/+1
2023-11-09Merge tag 'iommu-updates-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-13/+25
2023-10-27Merge branches 'iommu/fixes', 'arm/tegra', 'arm/smmu', 'virtio', 'x86/vt-d', ...Joerg Roedel1-13/+25
2023-10-26iommu: Move IOMMU_DOMAIN_BLOCKED global statics to ops->blocked_domainJason Gunthorpe1-0/+3
2023-10-26iommu: Add iommu_copy_struct_from_user helperNicolin Chen1-0/+40
2023-10-26iommu: Pass in parent domain with user_data to domain_alloc_user opYi Liu1-3/+24
2023-10-26iommu: Add IOMMU_DOMAIN_NESTEDLu Baolu1-0/+4
2023-10-24iommu: Add iommu_domain ops for dirty trackingJoao Martins1-0/+70
2023-10-16iommu: change iommu_map_sgtable to return signed valuesDan Carpenter1-1/+1
2023-10-10iommu: Add new iommu op to create domains owned by userspaceYi Liu1-1/+10
2023-10-02iommu/dma: Allow a single FQ in addition to per-CPU FQsNiklas Schnelle1-0/+2
2023-10-02iommu: Allow .iotlb_sync_map to fail and handle s390's -ENOMEM returnNiklas Schnelle1-2/+2
2023-09-25iommu: Retire map/unmap opsRobin Murphy1-6/+0
2023-09-25iommu: Add generic_single_device_group()Jason Gunthorpe1-0/+3
2023-09-25iommu: Add ops->domain_alloc_paging()Jason Gunthorpe1-0/+3
2023-09-25iommu: Remove ops->set_platform_dma_ops()Jason Gunthorpe1-4/+0
2023-09-25iommu: Add IOMMU_DOMAIN_PLATFORMJason Gunthorpe1-0/+8
2023-09-25iommu: Add iommu_ops->identity_domainJason Gunthorpe1-0/+3
2023-09-01Merge tag 'iommu-updates-v6.6' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-0/+15
2023-08-21Merge branches 'apple/dart', 'arm/mediatek', 'arm/renesas', 'arm/rockchip', '...Joerg Roedel1-0/+15
2023-08-18iommu: Add new iommu op to get iommu hardware informationLu Baolu1-0/+5
2023-08-18iommu: Move dev_iommu_ops() to private headerYi Liu1-11/+0
2023-08-09iommu: Prevent RESV_DIRECT devices from blocking domainsLu Baolu1-0/+2
2023-08-09iommu: Move global PASID allocation from SVA to coreJacob Pan1-0/+10
2023-08-09iommu: Generalize PASID 0 for normal DMA w/o PASIDJacob Pan1-0/+1
2023-07-14iommu: Optimise PCI SAC address trickRobin Murphy1-0/+2
2023-05-22iommu: Use flush queue capabilityRobin Murphy1-0/+1
2023-05-22iommu: Add a capability for flush queue supportRobin Murphy1-0/+5
2023-04-30Merge tag 'iommu-updates-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-8/+13
2023-04-14iommu: Remove iommu_group_get_by_id()Jason Gunthorpe1-6/+0
2023-04-14iommu: Make iommu_release_device() staticJason Gunthorpe1-1/+0
2023-03-31iommu/ioasid: Rename INVALID_IOASIDJacob Pan1-3/+3
2023-03-31iommu/sva: Move PASID helpers to sva codeJacob Pan1-1/+13
2023-03-23iommu: make the pointer to struct bus_type constantGreg Kroah-Hartman1-5/+5
2023-02-24Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-1/+1
2023-01-30Merge branch 'iommu-memory-accounting' of ssh://gitolite.kernel.org/pub/scm/l...Jason Gunthorpe1-24/+7
2023-01-25Merge branch 'iommu-memory-accounting' into coreJoerg Roedel1-24/+7
2023-01-25iommu: Add a gfp parameter to iommu_map_sg()Jason Gunthorpe1-13/+5
2023-01-25iommu: Remove iommu_map_atomic()Jason Gunthorpe1-9/+0
2023-01-25iommu: Add a gfp parameter to iommu_map()Jason Gunthorpe1-2/+2
2023-01-13iommu: Remove detach_dev callbackLu Baolu1-2/+0
2023-01-13iommu: Remove deferred attach check from __iommu_detach_device()Jason Gunthorpe1-0/+2
2023-01-13iommu: Add set_platform_dma_ops iommu opsLu Baolu1-0/+4
2023-01-11iommu: Remove IOMMU_CAP_INTR_REMAPJason Gunthorpe1-1/+0
2023-01-11iommu: Add iommu_group_has_isolated_msi()Jason Gunthorpe1-0/+1
2022-12-14Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-31/+114
2022-12-07iommu/tegra: Add tegra_dev_iommu_get_stream_id() helperThierry Reding1-0/+21
2022-12-07iommu: Add note about struct iommu_fwspec usageThierry Reding1-0/+4
2022-11-29iommu: Add device-centric DMA ownership interfacesLu Baolu1-0/+12
2022-11-29iommu: Add IOMMU_CAP_ENFORCE_CACHE_COHERENCYJason Gunthorpe1-0/+5
2022-11-03Merge tag 'for-joerg' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/io...Joerg Roedel1-0/+12
2022-11-03iommu: Prepare IOMMU domain for IOPFLu Baolu1-0/+3
2022-11-03iommu: Remove SVA related callbacks from iommu opsLu Baolu1-7/+0
2022-11-03iommu/sva: Refactoring iommu_sva_bind/unbind_device()Lu Baolu1-20/+23
2022-11-03iommu: Add IOMMU SVA domain supportLu Baolu1-2/+23
2022-11-03iommu: Add attach/detach_dev_pasid iommu interfacesLu Baolu1-0/+32
2022-11-03iommu: Remove SVM_FLAG_SUPERVISOR_MODE supportLu Baolu1-5/+3
2022-11-03iommu: Add max_pasids field in struct dev_iommuLu Baolu1-0/+2
2022-11-03iommu: Add max_pasids field in struct iommu_deviceLu Baolu1-0/+2
2022-11-01iommu: Add return value rules to attach_dev op and APIsNicolin Chen1-0/+12
2022-10-21iommu: Add gfp parameter to iommu_alloc_resv_regionLu Baolu1-1/+1
2022-09-07iommu/dma: Move public interfaces to linux/iommu.hRobin Murphy1-0/+36
2022-09-07iommu: Clean up bus_set_iommu()Robin Murphy1-1/+0
2022-09-07iommu: Retire iommu_capable()Robin Murphy1-7/+1
2022-09-07iommu: Remove comment of dev_has_feat in struct docYuan Can1-1/+1
2022-07-15iommu: remove the put_resv_regions methodChristoph Hellwig1-4/+0
2022-07-15iommu: remove iommu_dev_feature_enabledChristoph Hellwig1-9/+0
2022-07-15iommu: remove the unused dev_has_feat methodChristoph Hellwig1-3/+1
2022-07-06ACPI/IORT: Add support to retrieve IORT RMR reserved regionsShameer Kolothum1-0/+8
2022-07-06iommu: Introduce a callback to struct iommu_resv_regionShameer Kolothum1-0/+2
2022-05-20Merge branches 'apple/dart', 'arm/mediatek', 'arm/msm', 'arm/smmu', 'ppc/pamu...Joerg Roedel1-25/+44
2022-04-28iommu: Redefine IOMMU_CAP_CACHE_COHERENCY as the cap flag for IOMMU_CACHEJason Gunthorpe1-2/+1
2022-04-28iommu: Introduce the domain op enforce_cache_coherency()Jason Gunthorpe1-0/+4
2022-04-28iommu: Remove iommu group changes notifierLu Baolu1-23/+0
2022-04-28iommu: Add DMA ownership management interfacesLu Baolu1-0/+31
2022-04-28iommu: Add capability for pre-boot DMA protectionRobin Murphy1-0/+2
2022-04-28iommu: Introduce device_iommu_capable()Robin Murphy1-0/+6
2022-02-28iommu: Split struct iommu_opsLu Baolu1-38/+53
2022-02-28iommu: Remove unused argument in is_attach_deferredLu Baolu1-1/+1
2022-02-28iommu: Use right way to retrieve iommu_opsLu Baolu1-0/+11
2022-02-28iommu: Remove apply_resv_regionLu Baolu1-4/+0
2022-02-28iommu: Remove aux-domain related interfaces and iommu_opsLu Baolu1-29/+0
2022-02-28iommu: Remove guest pasid related interfaces and definitionsLu Baolu1-44/+0
2021-12-20iommu/vt-d: Use put_pages_listMatthew Wilcox (Oracle)1-1/+2
2021-09-03Merge tag 'iommu-updates-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-16/+98
2021-08-20Merge branches 'apple/dart', 'arm/smmu', 'iommu/fixes', 'x86/amd', 'x86/vt-d'...Joerg Roedel1-16/+98
2021-08-20iommu/io-pgtable: Abstract iommu_iotlb_gather accessRobin Murphy1-0/+10
2021-08-18iommu: Express DMA strictness via the domain typeRobin Murphy1-1/+0
2021-08-18iommu: Introduce explicit type for non-strict DMA domainsRobin Murphy1-0/+11
2021-08-18iommu: Indicate queued flushes via gather dataRobin Murphy1-1/+7
2021-08-18iommu: Pull IOVA cookie management into the coreRobin Murphy1-1/+2
2021-08-09iommu: return full error code from iommu_map_sg[_atomic]()Logan Gunthorpe1-11/+11
2021-08-02Merge remote-tracking branch 'korg/core' into x86/amdJoerg Roedel1-1/+10
2021-08-02iommu: Factor iommu_iotlb_gather_is_disjoint() outNadav Amit1-8/+26
2021-08-02iommu: Improve iommu_iotlb_gather helpersRobin Murphy1-5/+33
2021-07-26iommu: Remove mode argument from iommu_set_dma_strict()John Garry1-1/+1
2021-07-26iommu: Add a map_pages() op for IOMMU driversIsaac J. Manjarres1-0/+5
2021-07-26iommu: Add an unmap_pages() op for IOMMU driversIsaac J. Manjarres1-0/+4
2021-04-16iommu: Streamline registration interfaceRobin Murphy1-24/+6
2021-04-16iommu: Statically set module ownerRobin Murphy1-8/+1
2021-04-16Merge branches 'iommu/fixes', 'arm/mediatek', 'arm/smmu', 'arm/exynos', 'unis...Joerg Roedel1-70/+34
2021-04-07iommu: remove iommu_domain_{get,set}_attrChristoph Hellwig1-36/+0
2021-04-07iommu: remove DOMAIN_ATTR_IO_PGTABLE_CFGChristoph Hellwig1-1/+11
2021-04-07iommu: remove DOMAIN_ATTR_DMA_USE_FLUSH_QUEUERobin Murphy1-1/+3
2021-04-07iommu: remove DOMAIN_ATTR_NESTINGChristoph Hellwig1-1/+3
2021-04-07iommu: remove DOMAIN_ATTR_GEOMETRYChristoph Hellwig1-1/+0
2021-04-07iommu: remove DOMAIN_ATTR_PAGINGChristoph Hellwig1-1/+0
2021-04-07iommu/fsl_pamu: enable the liodn when attaching a deviceChristoph Hellwig1-1/+0
2021-04-07iommu/fsl_pamu: replace DOMAIN_ATTR_FSL_PAMU_STASH with a direct callChristoph Hellwig1-1/+0
2021-04-07iommu/fsl_pamu: remove ->domain_window_enableChristoph Hellwig1-17/+0
2021-04-07iommu/fsl_pamu: remove support for multiple windowsChristoph Hellwig1-1/+0
2021-04-07iommu/fsl_pamu: remove fsl_pamu_get_domain_attrChristoph Hellwig1-4/+0
2021-04-07iommu: remove the unused domain_window_disable methodChristoph Hellwig1-2/+0
2021-04-07iommu: Add a page fault handlerJean-Philippe Brucker1-0/+2
2021-04-07iommu: Separate IOMMU_DEV_FEAT_IOPF from IOMMU_DEV_FEAT_SVAJean-Philippe Brucker1-3/+17
2021-04-07iommu/arm-smmu-v3: Use device properties for pasid-num-bitsJean-Philippe Brucker1-2/+0
2021-04-07iommu: Fix comment for struct iommu_fwspecJean-Philippe Brucker1-1/+1
2021-04-07iommu: Fix a boundary issue to avoid performance dropXiang Chen1-1/+1
2021-02-12Merge branches 'arm/renesas', 'arm/smmu', 'x86/amd', 'x86/vt-d' and 'core' in...Joerg Roedel1-16/+5
2021-02-02iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing itJoerg Roedel1-1/+4
2021-01-28iommu: use the __iommu_attach_device() directly for deferred attachLianbo Jiang1-0/+1
2021-01-27iommu: Switch gather->end to the inclusive endYong Wu1-2/+2
2021-01-27iommu: Add iova and size as parameters in iotlb_sync_mapYong Wu1-1/+2
2021-01-27iommu: Delete iommu_dev_has_feature()John Garry1-7/+0
2021-01-27iommu: Delete iommu_domain_window_disable()John Garry1-6/+0
2020-12-08Merge branch 'for-next/iommu/vt-d' into for-next/iommu/coreWill Deacon1-0/+1
2020-11-25iommu/io-pgtable: Add a domain attribute for pagetable configurationSai Prakash Ranjan1-0/+1
2020-11-25iommu: Handle freelists when using deferred flushing in iommu driversTom Murphy1-0/+1
2020-10-14Merge tag 'iommu-updates-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-17/+28
2020-10-01iommu/uapi: Handle data and argsz filled by usersJacob Pan1-9/+19
2020-10-01iommu/uapi: Rename uapi functionsJacob Pan1-15/+16
2020-09-17drm, iommu: Change type of pasid to u32Fenghua Yu1-5/+5
2020-09-04iommu: Rename iommu_tlb_* functions to iommu_iotlb_*Tom Murphy1-5/+5
2020-07-29Merge branches 'arm/renesas', 'arm/qcom', 'arm/mediatek', 'arm/omap', 'arm/ex...Joerg Roedel1-22/+16
2020-07-08iommu: Remove unused IOMMU_SYS_CACHE_ONLY flagWill Deacon1-6/+0
2020-06-30iommu: Move sg_table wrapper out of CONFIG_IOMMU_SUPPORTMarek Szyprowski1-16/+16
2020-06-08Merge tag 'iommu-updates-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-47/+16
2020-06-02Merge branches 'arm/msm', 'arm/allwinner', 'arm/smmu', 'x86/vt-d', 'hyper-v',...Joerg Roedel1-47/+16
2020-05-29iommu: Remove iommu_sva_ops::mm_exit()Jean-Philippe Brucker1-30/+0
2020-05-15iommu: Remove functions that support private domainSai Praneeth Prakhya1-12/+0
2020-05-13iommu: add generic helper for mapping sgtable objectsMarek Szyprowski1-0/+16
2020-05-05iommu: Unexport iommu_group_get_for_dev()Joerg Roedel1-1/+0
2020-05-05iommu: Remove add_device()/remove_device() code-pathsJoerg Roedel1-4/+0
2020-05-05iommu: Export bus_iommu_probe() and make is safe for re-probingJoerg Roedel1-0/+1
2020-05-05iommu: Add probe_device() and release_device() call-backsJoerg Roedel1-0/+9
2020-05-05iommu: Add def_domain_type() callback in iommu_opsSai Praneeth Prakhya1-0/+6
2020-03-27iommu: Move fwspec->iommu_priv to struct dev_iommuJoerg Roedel1-3/+4
2020-03-27iommu: Introduce accessors for iommu private dataJoerg Roedel1-0/+10
2020-03-27iommu: Move iommu_fwspec to struct dev_iommuJoerg Roedel1-4/+8
2020-03-27iommu: Rename struct iommu_param to dev_iommuJoerg Roedel1-2/+2
2020-03-27iommu: Define dev_iommu_fwspec_get() for !CONFIG_IOMMU_APIJoerg Roedel1-0/+4
2020-02-28iommu: Use C99 flexible array in fwspecRobin Murphy1-1/+1
2020-01-24Merge branches 'iommu/fixes', 'arm/smmu', 'x86/amd', 'x86/vt-d' and 'core' in...Joerg Roedel1-3/+16
2020-01-15iommu/arm-smmu-v3: Parse PASID devicetree property of platform devicesJean-Philippe Brucker1-0/+2
2020-01-10drivers/iommu: Initialise module 'owner' field in iommu_device_set_ops()Will Deacon1-2/+9
2019-12-23iommu: Implement generic_iommu_put_resv_regions()Thierry Reding1-0/+2
2019-12-23drivers/iommu: Take a ref to the IOMMU driver prior to ->add_device()Will Deacon1-1/+3
2019-11-12Merge branches 'iommu/fixes', 'arm/qcom', 'arm/renesas', 'arm/rockchip', 'arm...Joerg Roedel1-5/+60
2019-11-07iommu/io-pgtable-arm: Rename IOMMU_QCOM_SYS_CACHE and improve docWill Deacon1-4/+4
2019-10-15iommu: Introduce guest PASID bind functionJacob Pan1-0/+22
2019-10-15iommu: Introduce cache_invalidate APIYi L Liu1-0/+14
2019-10-15iommu: Add gfp parameter to iommu_ops::mapTom Murphy1-1/+20
2019-08-23iommu: Add helpers to set/get default domain typeJoerg Roedel1-0/+16