History

Merge branch 'iommufd/arm-smmuv3-nested' of iommu/linux into iommufd for-next

Common SMMUv3 patches for the following patches adding nesting, shared branch with the iommu tree. * 'iommufd/arm-smmuv3-nested' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/iommu/linux: iommu/arm-smmu-v3: Expose the arm_smmu_attach interface iommu/arm-smmu-v3: Implement IOMMU_HWPT_ALLOC_NEST_PARENT iommu/arm-smmu-v3: Support IOMMU_GET_HW_INFO via struct arm_smmu_hw_info iommu/arm-smmu-v3: Report IOMMU_CAP_ENFORCE_CACHE_COHERENCY for CANWBS ACPI/IORT: Support CANWBS memory access flag ACPICA: IORT: Update for revision E.f vfio: Remove VFIO_TYPE1_NESTING_IOMMU ...

Jason Gunthorpe committed 2 years ago

Commit 4e6bd132 parents b047c06 f6681ab1549 files · +10856 −8549Browse files

Showing the changes to include/uapi (3 of 1549 files). Show all

Unified · Split

3 files
  1. include/uapi/linux/iommufd.h +35 −0
  2. include/uapi/linux/netfilter/nf_tables.h +1 −1
  3. include/uapi/linux/vfio.h +1 −1
include/uapi/linux/iommufd.h+35−0
@@ -513,15 +513,50 @@ struct iommu_hw_info_vtd { · 512 unmodified lines
513 __aligned_u64 ecap_reg;513 __aligned_u64 ecap_reg;
514};514};
515 515
516/**
517 * struct iommu_hw_info_arm_smmuv3 - ARM SMMUv3 hardware information
518 * (IOMMU_HW_INFO_TYPE_ARM_SMMUV3)
519 *
520 * @flags: Must be set to 0
521 * @__reserved: Must be 0
522 * @idr: Implemented features for ARM SMMU Non-secure programming interface
523 * @iidr: Information about the implementation and implementer of ARM SMMU,
524 * and architecture version supported
525 * @aidr: ARM SMMU architecture version
526 *
527 * For the details of @idr, @iidr and @aidr, please refer to the chapters
528 * from 6.3.1 to 6.3.6 in the SMMUv3 Spec.
529 *
530 * User space should read the underlying ARM SMMUv3 hardware information for
531 * the list of supported features.
532 *
533 * Note that these values reflect the raw HW capability, without any insight if
534 * any required kernel driver support is present. Bits may be set indicating the
535 * HW has functionality that is lacking kernel software support, such as BTM. If
536 * a VMM is using this information to construct emulated copies of these
537 * registers it should only forward bits that it knows it can support.
538 *
539 * In future, presence of required kernel support will be indicated in flags.
540 */
541struct iommu_hw_info_arm_smmuv3 {
542 __u32 flags;
543 __u32 __reserved;
544 __u32 idr[6];
545 __u32 iidr;
546 __u32 aidr;
547};
548
516/**549/**
517 * enum iommu_hw_info_type - IOMMU Hardware Info Types550 * enum iommu_hw_info_type - IOMMU Hardware Info Types
518 * @IOMMU_HW_INFO_TYPE_NONE: Used by the drivers that do not report hardware551 * @IOMMU_HW_INFO_TYPE_NONE: Used by the drivers that do not report hardware
519 * info552 * info
520 * @IOMMU_HW_INFO_TYPE_INTEL_VTD: Intel VT-d iommu info type553 * @IOMMU_HW_INFO_TYPE_INTEL_VTD: Intel VT-d iommu info type
554 * @IOMMU_HW_INFO_TYPE_ARM_SMMUV3: ARM SMMUv3 iommu info type
521 */555 */
522enum iommu_hw_info_type {556enum iommu_hw_info_type {
523 IOMMU_HW_INFO_TYPE_NONE = 0,557 IOMMU_HW_INFO_TYPE_NONE = 0,
524 IOMMU_HW_INFO_TYPE_INTEL_VTD = 1,558 IOMMU_HW_INFO_TYPE_INTEL_VTD = 1,
559 IOMMU_HW_INFO_TYPE_ARM_SMMUV3 = 2,
525};560};
526 561
527/**562/**
include/uapi/linux/netfilter/nf_tables.h+1−1
@@ -1694,7 +1694,7 @@ enum nft_flowtable_flags { · 1693 unmodified lines
1694 *1694 *
1695 * @NFTA_FLOWTABLE_TABLE: name of the table containing the expression (NLA_STRING)1695 * @NFTA_FLOWTABLE_TABLE: name of the table containing the expression (NLA_STRING)
1696 * @NFTA_FLOWTABLE_NAME: name of this flow table (NLA_STRING)1696 * @NFTA_FLOWTABLE_NAME: name of this flow table (NLA_STRING)
1697 * @NFTA_FLOWTABLE_HOOK: netfilter hook configuration(NLA_U32)1697 * @NFTA_FLOWTABLE_HOOK: netfilter hook configuration (NLA_NESTED)
1698 * @NFTA_FLOWTABLE_USE: number of references to this flow table (NLA_U32)1698 * @NFTA_FLOWTABLE_USE: number of references to this flow table (NLA_U32)
1699 * @NFTA_FLOWTABLE_HANDLE: object handle (NLA_U64)1699 * @NFTA_FLOWTABLE_HANDLE: object handle (NLA_U64)
1700 * @NFTA_FLOWTABLE_FLAGS: flags (NLA_U32)1700 * @NFTA_FLOWTABLE_FLAGS: flags (NLA_U32)
include/uapi/linux/vfio.h+1−1
@@ -35,7 +35,7 @@ · 34 unmodified lines
35#define VFIO_EEH 535#define VFIO_EEH 5
36 36
37/* Two-stage IOMMU */37/* Two-stage IOMMU */
38#define VFIO_TYPE1_NESTING_IOMMU 6 /* Implies v2 */38#define __VFIO_RESERVED_TYPE1_NESTING_IOMMU 6 /* Implies v2 */
39 39
40#define VFIO_SPAPR_TCE_v2_IOMMU 740#define VFIO_SPAPR_TCE_v2_IOMMU 7
41 41

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t