ACPI / ia64 / sba_iommu: Restore the working initialization ordering
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 12 Jun 2014 23:17:03 +0000 (01:17 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 16 Jun 2014 20:33:20 +0000 (22:33 +0200)
commit12e27b115472ad0f3b142ddf59d3998305984408
tree6fc02fd0af6f50ec0450c62016b0b270684c76a6
parent7171511eaec5bf23fb06078f59784a3a0626b38f
ACPI / ia64 / sba_iommu: Restore the working initialization ordering

Commit 66345d5f79fc (ACPI / ia64 / sba_iommu: Use ACPI scan handler
for device discovery) changed the ordering of SBA (System Bus Adapter)
IOMMU initialization with respect to the PCI host bridge initialization
which broke things inadvertently, because the SBA IOMMU initialization
code has to run after the PCI host bridge has been initialized.

Fix that by reworking the SBA IOMMU ACPI scan handler so that it
claims the discovered matching ACPI device objects without attempting
to initialize anything and move the entire SBA IOMMU initialization
to sba_init() that runs after the PCI bus has been enumerated.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=76691
Fixes: 66345d5f79fc (ACPI / ia64 / sba_iommu: Use ACPI scan handler for device discovery)
Reported-and-tested-by: Émeric Maschino <emeric.maschino@gmail.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: 3.11+ <stable@vger.kernel.org> # 3.11+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
arch/ia64/hp/common/sba_iommu.c