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 |
