aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2009-06-29 01:39:29 -0400
committerLen Brown <len.brown@intel.com>2009-08-27 10:17:15 -0400
commit15b8dd53f5ffaf8e2d9095c423f713423f576c0f (patch)
tree773f09435b14a810372642502352d46c29b6f148 /drivers/char
parent9c61b34cf7078da72cce276ff8cfae5d6e9955bc (diff)
ACPICA: Major update for acpi_get_object_info external interface
Completed a major update for the acpi_get_object_info external interface. Changes include: - Support for variable, unlimited length HID, UID, and CID strings - Support Processor objects the same as Devices (HID,UID,CID,ADR,STA, etc.) - Call the _SxW power methods on behalf of a device object - Determine if a device is a PCI root bridge - Change the ACPI_BUFFER parameter to ACPI_DEVICE_INFO. These changes will require an update to all callers of this interface. See the ACPICA Programmer Reference for details. Also, update all invocations of acpi_get_object_info interface Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lin Ming <ming.m.lin@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/agp/hp-agp.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/char/agp/hp-agp.c b/drivers/char/agp/hp-agp.c
index 8f3d4c184914..7bead4c816ca 100644
--- a/drivers/char/agp/hp-agp.c
+++ b/drivers/char/agp/hp-agp.c
@@ -478,7 +478,6 @@ zx1_gart_probe (acpi_handle obj, u32 depth, void *context, void **ret)
478{ 478{
479 acpi_handle handle, parent; 479 acpi_handle handle, parent;
480 acpi_status status; 480 acpi_status status;
481 struct acpi_buffer buffer;
482 struct acpi_device_info *info; 481 struct acpi_device_info *info;
483 u64 lba_hpa, sba_hpa, length; 482 u64 lba_hpa, sba_hpa, length;
484 int match; 483 int match;
@@ -490,13 +489,11 @@ zx1_gart_probe (acpi_handle obj, u32 depth, void *context, void **ret)
490 /* Look for an enclosing IOC scope and find its CSR space */ 489 /* Look for an enclosing IOC scope and find its CSR space */
491 handle = obj; 490 handle = obj;
492 do { 491 do {
493 buffer.length = ACPI_ALLOCATE_LOCAL_BUFFER; 492 status = acpi_get_object_info(handle, &info);
494 status = acpi_get_object_info(handle, &buffer);
495 if (ACPI_SUCCESS(status)) { 493 if (ACPI_SUCCESS(status)) {
496 /* TBD check _CID also */ 494 /* TBD check _CID also */
497 info = buffer.pointer; 495 info->hardware_id.string[sizeof(info->hardware_id.length)-1] = '\0';
498 info->hardware_id.value[sizeof(info->hardware_id)-1] = '\0'; 496 match = (strcmp(info->hardware_id.string, "HWP0001") == 0);
499 match = (strcmp(info->hardware_id.value, "HWP0001") == 0);
500 kfree(info); 497 kfree(info);
501 if (match) { 498 if (match) {
502 status = hp_acpi_csr_space(handle, &sba_hpa, &length); 499 status = hp_acpi_csr_space(handle, &sba_hpa, &length);