summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorKan Liang <kan.liang@linux.intel.com>2023-01-31 15:37:36 +0800
committerJoerg Roedel <jroedel@suse.de>2023-02-03 11:06:05 +0100
commitdc57875866ab9f6e0c366a6fd342217f71847b8b (patch)
treecce6852920130fee3913b83946f81d3842ebf84f /lib
parenta6a5006dad572a53b5df3f47e1471d207ae9ba49 (diff)
iommu/vt-d: Support Enhanced Command Interface
The Enhanced Command Register is to submit command and operand of enhanced commands to DMA Remapping hardware. It can supports up to 256 enhanced commands. There is a HW register to indicate the availability of all 256 enhanced commands. Each bit stands for each command. But there isn't an existing interface to read/write all 256 bits. Introduce the u64 ecmdcap[4] to store the existence of each enhanced command. Read 4 times to get all of them in map_iommu(). Add a helper to facilitate an enhanced command launch. Make sure hardware complete the command. Also add a helper to facilitate the check of PMU essentials. These helpers will be used later. Signed-off-by: Kan Liang <kan.liang@linux.intel.com> Link: https://lore.kernel.org/r/20230128200428.1459118-4-kan.liang@linux.intel.com Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com> Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions