tree ce2d40be8796ebcf9838456fb8f582d463ecfec3
parent aaab76080256872c1a82c7b5cd3dd7f4745bd356
parent 2bd5059c6cc04b02073d4d9f57137ab74e1d8e7a
author Joerg Roedel <jroedel@suse.de> 1715939735 +0200
committer Joerg Roedel <jroedel@suse.de> 1715939735 +0200
mergetag object 2bd5059c6cc04b02073d4d9f57137ab74e1d8e7a
 type commit
 tag iommu-updates-v6.10
 tagger Joerg Roedel <jroedel@suse.de> 1715938459 +0200
 
 IOMMU Updates for Linux v6.10
 
 Including:
 
 	- Core:
 	  - IOMMU memory usage observability - This will make the memory used
 	    for IO page tables explicitly visible.
 	  - Simplify arch_setup_dma_ops()
 
 	- Intel VT-d:
 	  - Consolidate domain cache invalidation
 	  - Remove private data from page fault message
 	  - Allocate DMAR fault interrupts locally
 	  - Cleanup and refactoring
 
 	- ARM-SMMUv2:
 	  - Support for fault debugging hardware on Qualcomm implementations
 	  - Re-land support for the ->domain_alloc_paging() callback
 
 	- ARM-SMMUv3:
 	  - Improve handling of MSI allocation failure
 	  - Drop support for the "disable_bypass" cmdline option
 	  - Major rework of the CD creation code, following on directly from the
 	    STE rework merged last time around.
 	  - Add unit tests for the new STE/CD manipulation logic
 
 	- AMD-Vi:
 	  - Final part of SVA changes with generic IO page fault handling
 
 	- Renesas IPMMU:
 	  - Add support for R8A779H0 hardware
 
 	- A couple smaller fixes and updates across the sub-tree
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEr9jSbILcajRFYWYyK/BELZcBGuMFAmZHJMkACgkQK/BELZcB
 GuND1Q/+M4RN5jM66XCfhqoP8QaI8I7zDlPDd14ismx0bjtOZhoiXpptKkAA8guo
 7mS57MLqBw/hKYucm1mw+F1qi1HnRWSstKXiCPmzDm3UXYgZJlKkrOw6vydFeHJH
 zx2ei7TmBrc0SrsybWK3NWRfVBBkO8enGZTmti0DfHL/rOFcUM0LHegY51GcDaaH
 SlDr+LLDMeGynSQWhRlVNJVmEI5gpVPitY/mDUpVPoELiW9C0WGk8kPlR11z2pCR
 eUNiqGJUcGasOhmfiYnpJR462eg7J41glquu+YHj8ivPbbu3C4wxgruY/tR4dmJG
 8s6AMAWR53JzG2SrCCwtzyRPSXmKfvixF+VKmlB2Ksc7VAn1xA0DYnY5Tx99EtXu
 qcEaR4SICMti0urmBGo/cGFdXi2TB1ccXqwoRtp1N3KiYnnOaQdLNO9qZdl9uUTI
 uleXACzkCVSssSpBfGjFcPyHU4r3WjMfX0f5ZJPpFMoQmvwV1yeMX7xTEZz4Sxew
 cHfBt9FAW9+4mBMTQfokBt0hZ6jwKcYl/z3Xi2oD+Ik/Qrzx5kcLA8LZLEVRXIBa
 SZh2ASazq/dr8YoZ744VRmlmi+nISAIHbbQMeqQEQgYQh0HpwS9g5HtpsBzNP6aB
 91RHqZSccb/zNdi8e+RH79Y7pX/G5QcuVKcW6KQUBcAAb6hAgOg=
 =JUzp
 -----END PGP SIGNATURE-----

Merge tag 'iommu-updates-v6.10'

IOMMU Updates for Linux v6.10

Including:

	- Core:
	  - IOMMU memory usage observability - This will make the memory used
	    for IO page tables explicitly visible.
	  - Simplify arch_setup_dma_ops()

	- Intel VT-d:
	  - Consolidate domain cache invalidation
	  - Remove private data from page fault message
	  - Allocate DMAR fault interrupts locally
	  - Cleanup and refactoring

	- ARM-SMMUv2:
	  - Support for fault debugging hardware on Qualcomm implementations
	  - Re-land support for the ->domain_alloc_paging() callback

	- ARM-SMMUv3:
	  - Improve handling of MSI allocation failure
	  - Drop support for the "disable_bypass" cmdline option
	  - Major rework of the CD creation code, following on directly from the
	    STE rework merged last time around.
	  - Add unit tests for the new STE/CD manipulation logic

	- AMD-Vi:
	  - Final part of SVA changes with generic IO page fault handling

	- Renesas IPMMU:
	  - Add support for R8A779H0 hardware

	- A couple smaller fixes and updates across the sub-tree
