1What: /sys/kernel/iommu_groups/ 2Date: May 2012 3KernelVersion: v3.5 4Contact: Alex Williamson <[email protected]> 5Description: /sys/kernel/iommu_groups/ contains a number of sub- 6 directories, each representing an IOMMU group. The 7 name of the sub-directory matches the iommu_group_id() 8 for the group, which is an integer value. Within each 9 subdirectory is another directory named "devices" with 10 links to the sysfs devices contained in this group. 11 The group directory also optionally contains a "name" 12 file if the IOMMU driver has chosen to register a more 13 common name for the group. 14Users: 15 16What: /sys/kernel/iommu_groups/reserved_regions 17Date: January 2017 18KernelVersion: v4.11 19Contact: Eric Auger <[email protected]> 20Description: /sys/kernel/iommu_groups/reserved_regions list IOVA 21 regions that are reserved. Not necessarily all 22 reserved regions are listed. This is typically used to 23 output direct-mapped, MSI, non mappable regions. Each 24 region is described on a single line: the 1st field is 25 the base IOVA, the second is the end IOVA and the third 26 field describes the type of the region. 27 28What: /sys/kernel/iommu_groups/reserved_regions 29Date: June 2019 30KernelVersion: v5.3 31Contact: Eric Auger <[email protected]> 32Description: In case an RMRR is used only by graphics or USB devices 33 it is now exposed as "direct-relaxable" instead of "direct". 34 In device assignment use case, for instance, those RMRR 35 are considered to be relaxable and safe. 36 37What: /sys/kernel/iommu_groups/<grp_id>/type 38Date: November 2020 39KernelVersion: v5.11 40Contact: Sai Praneeth Prakhya <[email protected]> 41Description: /sys/kernel/iommu_groups/<grp_id>/type shows the type of default 42 domain in use by iommu for this group. See include/linux/iommu.h 43 for possible values. A privileged user could request kernel to 44 change the group type by writing to this file. Presently, only 45 three types of request are supported: 46 1. DMA: All the DMA transactions from the device in this group 47 are translated by the iommu. 48 2. identity: All the DMA transactions from the device in this 49 group are *not* translated by the iommu. 50 3. auto: Change to the type the device was booted with. 51 Note: 52 ----- 53 The default domain type of a group may be modified only when 54 1. The group has *only* one device 55 2. The device in the group is not bound to any device driver. 56 So, the users must unbind the appropriate driver before 57 changing the default domain type. 58 Caution: 59 -------- 60 Unbinding a device driver will take away the driver's control 61 over the device and if done on devices that host root file 62 system could lead to catastrophic effects (the users might 63 need to reboot the machine to get it to normal state). So, it's 64 expected that the users understand what they're doing. 65