patch-2.4.23 linux-2.4.23/arch/ia64/hp/common/sba_iommu.c

Next file: linux-2.4.23/arch/ia64/hp/zx1/hpzx1_misc.c
Previous file: linux-2.4.23/arch/ia64/drivers/simserial.c
Back to the patch index
Back to the overall index

diff -urN linux-2.4.22/arch/ia64/hp/common/sba_iommu.c linux-2.4.23/arch/ia64/hp/common/sba_iommu.c
@@ -1895,22 +1895,26 @@
 	struct ioc *ioc;
 	acpi_status status;
 	u64 hpa, length;
-	acpi_device_info dev_info;
+	struct acpi_buffer buffer;
+	struct acpi_device_info *dev_info;
 
 	status = acpi_hp_csr_space(device->handle, &hpa, &length);
 	if (ACPI_FAILURE(status))
 		return 1;
 
-	status = acpi_get_object_info(device->handle, &dev_info);
+	buffer.length = ACPI_ALLOCATE_LOCAL_BUFFER;
+	status = acpi_get_object_info(device->handle, &buffer);
 	if (ACPI_FAILURE(status))
 		return 1;
+	dev_info = buffer.pointer;
 
 	/*
 	 * For HWP0001, only SBA appears in ACPI namespace.  It encloses the PCI
 	 * root bridges, and its CSR space includes the IOC function.
 	 */
-	if (strncmp("HWP0001", dev_info.hardware_id, 7) == 0)
+	if (strncmp("HWP0001", dev_info->hardware_id.value, 7) == 0)
 		hpa += ZX1_IOC_OFFSET;
+	ACPI_MEM_FREE(dev_info);
 
 	ioc = ioc_init(hpa, device->handle);
 	if (!ioc)

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)