diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-05 21:46:26 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-05 21:46:26 -0400 |
commit | 3f583bc21977a608908b83d03ee2250426a5695c (patch) | |
tree | 05ddffa3804cda744d9b68796d5f2c9a0ff5e1df /include/acpi | |
parent | 3e76b749ea09a6411ceb33e6fd47f20eb6df268b (diff) | |
parent | e172b81222548b856ecbe59b305d2cb733d512c4 (diff) |
Merge tag 'iommu-updates-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu
Pull IOMMU upates from Joerg Roedel:
"This time a few more updates queued up.
- Rework VT-d code to support ACPI devices
- Improvements for memory and PCI hotplug support in the VT-d driver
- Device-tree support for OMAP IOMMU
- Convert OMAP IOMMU to use devm_* interfaces
- Fixed PASID support for AMD IOMMU
- Other random cleanups and fixes for OMAP, ARM-SMMU and SHMOBILE
IOMMU
Most of the changes are in the VT-d driver because some rework was
necessary for better hotplug and ACPI device support"
* tag 'iommu-updates-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (75 commits)
iommu/vt-d: Fix error handling in ANDD processing
iommu/vt-d: returning free pointer in get_domain_for_dev()
iommu/vt-d: Only call dmar_acpi_dev_scope_init() if DRHD units present
iommu/vt-d: Check for NULL pointer in dmar_acpi_dev_scope_init()
iommu/amd: Fix logic to determine and checking max PASID
iommu/vt-d: Include ACPI devices in iommu=pt
iommu/vt-d: Finally enable translation for non-PCI devices
iommu/vt-d: Remove to_pci_dev() in intel_map_page()
iommu/vt-d: Remove pdev from intel_iommu_attach_device()
iommu/vt-d: Remove pdev from iommu_no_mapping()
iommu/vt-d: Make domain_add_dev_info() take struct device
iommu/vt-d: Make domain_remove_one_dev_info() take struct device
iommu/vt-d: Rename 'hwdev' variables to 'dev' now that that's the norm
iommu/vt-d: Remove some pointless to_pci_dev() calls
iommu/vt-d: Make get_valid_domain_for_dev() take struct device
iommu/vt-d: Make iommu_should_identity_map() take struct device
iommu/vt-d: Handle RMRRs for non-PCI devices
iommu/vt-d: Make get_domain_for_dev() take struct device
iommu/vt-d: Make domain_context_mapp{ed,ing}() take struct device
iommu/vt-d: Make device_to_iommu() cope with non-PCI devices
...
Diffstat (limited to 'include/acpi')
-rw-r--r-- | include/acpi/actbl2.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/include/acpi/actbl2.h b/include/acpi/actbl2.h index f3372441e3a5..c8adad9c6b6a 100644 --- a/include/acpi/actbl2.h +++ b/include/acpi/actbl2.h | |||
@@ -424,7 +424,8 @@ enum acpi_dmar_type { | |||
424 | ACPI_DMAR_TYPE_RESERVED_MEMORY = 1, | 424 | ACPI_DMAR_TYPE_RESERVED_MEMORY = 1, |
425 | ACPI_DMAR_TYPE_ATSR = 2, | 425 | ACPI_DMAR_TYPE_ATSR = 2, |
426 | ACPI_DMAR_HARDWARE_AFFINITY = 3, | 426 | ACPI_DMAR_HARDWARE_AFFINITY = 3, |
427 | ACPI_DMAR_TYPE_RESERVED = 4 /* 4 and greater are reserved */ | 427 | ACPI_DMAR_TYPE_ANDD = 4, |
428 | ACPI_DMAR_TYPE_RESERVED = 5 /* 5 and greater are reserved */ | ||
428 | }; | 429 | }; |
429 | 430 | ||
430 | /* DMAR Device Scope structure */ | 431 | /* DMAR Device Scope structure */ |
@@ -445,7 +446,8 @@ enum acpi_dmar_scope_type { | |||
445 | ACPI_DMAR_SCOPE_TYPE_BRIDGE = 2, | 446 | ACPI_DMAR_SCOPE_TYPE_BRIDGE = 2, |
446 | ACPI_DMAR_SCOPE_TYPE_IOAPIC = 3, | 447 | ACPI_DMAR_SCOPE_TYPE_IOAPIC = 3, |
447 | ACPI_DMAR_SCOPE_TYPE_HPET = 4, | 448 | ACPI_DMAR_SCOPE_TYPE_HPET = 4, |
448 | ACPI_DMAR_SCOPE_TYPE_RESERVED = 5 /* 5 and greater are reserved */ | 449 | ACPI_DMAR_SCOPE_TYPE_ACPI = 5, |
450 | ACPI_DMAR_SCOPE_TYPE_RESERVED = 6 /* 6 and greater are reserved */ | ||
449 | }; | 451 | }; |
450 | 452 | ||
451 | struct acpi_dmar_pci_path { | 453 | struct acpi_dmar_pci_path { |
@@ -507,6 +509,15 @@ struct acpi_dmar_rhsa { | |||
507 | u32 proximity_domain; | 509 | u32 proximity_domain; |
508 | }; | 510 | }; |
509 | 511 | ||
512 | /* 4: ACPI Namespace Device Declaration Structure */ | ||
513 | |||
514 | struct acpi_dmar_andd { | ||
515 | struct acpi_dmar_header header; | ||
516 | u8 reserved[3]; | ||
517 | u8 device_number; | ||
518 | u8 object_name[]; | ||
519 | }; | ||
520 | |||
510 | /******************************************************************************* | 521 | /******************************************************************************* |
511 | * | 522 | * |
512 | * HPET - High Precision Event Timer table | 523 | * HPET - High Precision Event Timer table |