Pull trivial into test branch
[pandora-kernel.git] / drivers / acpi / glue.c
index 8daef57..4ac2f18 100644 (file)
@@ -152,7 +152,7 @@ static int get_root_bridge_busnr(acpi_handle handle)
                bbn = bus;
        }
       exit:
-       acpi_os_free(buffer.pointer);
+       kfree(buffer.pointer);
        return (int)bbn;
 }
 
@@ -189,10 +189,14 @@ find_pci_rootbridge(acpi_handle handle, u32 lvl, void *context, void **rv)
        bus = tmp;
 
        if (seg == find->seg && bus == find->bus)
+       {
                find->handle = handle;
-       status = AE_OK;
+               status = AE_CTRL_TERMINATE;
+       }
+       else
+               status = AE_OK;
       exit:
-       acpi_os_free(buffer.pointer);
+       kfree(buffer.pointer);
        return status;
 }
 
@@ -224,7 +228,7 @@ do_acpi_find_child(acpi_handle handle, u32 lvl, void *context, void **rv)
                info = buffer.pointer;
                if (info->address == find->address)
                        find->handle = handle;
-               acpi_os_free(buffer.pointer);
+               kfree(buffer.pointer);
        }
        return AE_OK;
 }
@@ -267,9 +271,9 @@ static int acpi_bind_one(struct device *dev, acpi_handle handle)
 {
        acpi_status status;
 
-       if (dev->firmware_data) {
+       if (dev->archdata.acpi_handle) {
                printk(KERN_WARNING PREFIX
-                      "Drivers changed 'firmware_data' for %s\n", dev->bus_id);
+                      "Drivers changed 'acpi_handle' for %s\n", dev->bus_id);
                return -EINVAL;
        }
        get_device(dev);
@@ -278,25 +282,26 @@ static int acpi_bind_one(struct device *dev, acpi_handle handle)
                put_device(dev);
                return -EINVAL;
        }
-       dev->firmware_data = handle;
+       dev->archdata.acpi_handle = handle;
 
        return 0;
 }
 
 static int acpi_unbind_one(struct device *dev)
 {
-       if (!dev->firmware_data)
+       if (!dev->archdata.acpi_handle)
                return 0;
-       if (dev == acpi_get_physical_device(dev->firmware_data)) {
+       if (dev == acpi_get_physical_device(dev->archdata.acpi_handle)) {
                /* acpi_get_physical_device increase refcnt by one */
                put_device(dev);
-               acpi_detach_data(dev->firmware_data, acpi_glue_data_handler);
-               dev->firmware_data = NULL;
+               acpi_detach_data(dev->archdata.acpi_handle,
+                                acpi_glue_data_handler);
+               dev->archdata.acpi_handle = NULL;
                /* acpi_bind_one increase refcnt by one */
                put_device(dev);
        } else {
                printk(KERN_ERR PREFIX
-                      "Oops, 'firmware_data' corrupt for %s\n", dev->bus_id);
+                      "Oops, 'acpi_handle' corrupt for %s\n", dev->bus_id);
        }
        return 0;
 }
@@ -328,9 +333,10 @@ static int acpi_platform_notify(struct device *dev)
        if (!ret) {
                struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL };
 
-               acpi_get_name(dev->firmware_data, ACPI_FULL_PATHNAME, &buffer);
+               acpi_get_name(dev->archdata.acpi_handle,
+                             ACPI_FULL_PATHNAME, &buffer);
                DBG("Device %s -> %s\n", dev->bus_id, (char *)buffer.pointer);
-               acpi_os_free(buffer.pointer);
+               kfree(buffer.pointer);
        } else
                DBG("Device %s -> No ACPI support\n", dev->bus_id);
 #endif