diff options
author | Logan Gunthorpe <logang@deltatee.com> | 2019-02-13 20:54:45 +0300 |
---|---|---|
committer | Joerg Roedel <jroedel@suse.de> | 2019-02-26 12:34:03 +0300 |
commit | 9ca8261173fc06ba1bd3c52e83eae0a0b7146b3b (patch) | |
tree | 2d33a592b18325a57361d9b9df92595b0e8be343 /drivers/iommu/Kconfig | |
parent | f096d6657a7714e62a4799893ac9bdee75be29c8 (diff) | |
download | linux-9ca8261173fc06ba1bd3c52e83eae0a0b7146b3b.tar.xz |
iommu/vt-d: Add helper to set an IRTE to verify only the bus number
The current code uses set_irte_sid() with SVT_VERIFY_BUS and PCI_DEVID
to set the SID value. However, this is very confusing because, with
SVT_VERIFY_BUS, the SID value is not a PCI devfn address, but the start
and end bus numbers to match against.
According to the Intel Virtualization Technology for Directed I/O
Architecture Specification, Rev. 3.0, page 9-36:
The most significant 8-bits of the SID field contains the Startbus#,
and the least significant 8-bits of the SID field contains the Endbus#.
Interrupt requests that reference this IRTE must have a requester-id
whose bus# (most significant 8-bits of requester-id) has a value equal
to or within the Startbus# to Endbus# range.
So to make this more clear, introduce a new set_irte_verify_bus() that
explicitly takes a start bus and end bus so that we can stop abusing
the PCI_DEVID macro.
This helper function will be called a second time in an subsequent patch.
Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Joerg Roedel <joro@8bytes.org>
Cc: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to 'drivers/iommu/Kconfig')
0 files changed, 0 insertions, 0 deletions