PNP: remove pnp_resource_table from internal get/set interfaces
Bjorn Helgaas [Mon, 28 Apr 2008 22:34:05 +0000 (16:34 -0600)]
When we call protocol->get() and protocol->set() methods, we currently
supply pointers to both the pnp_dev and the pnp_resource_table even
though the pnp_resource_table should always be the one associated with
the pnp_dev.

This removes the pnp_resource_table arguments to make it clear that
these methods only operate on the specified pnp_dev.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Acked-By: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Len Brown <len.brown@intel.com>

drivers/pnp/interface.c
drivers/pnp/isapnp/core.c
drivers/pnp/manager.c
drivers/pnp/pnpacpi/core.c
drivers/pnp/pnpbios/core.c
include/linux/pnp.h

index 9826584..e882896 100644 (file)
@@ -364,7 +364,7 @@ pnp_set_current_resources(struct device *dmdev, struct device_attribute *attr,
        if (!strnicmp(buf, "get", 3)) {
                mutex_lock(&pnp_res_mutex);
                if (pnp_can_read(dev))
-                       dev->protocol->get(dev, &dev->res);
+                       dev->protocol->get(dev);
                mutex_unlock(&pnp_res_mutex);
                goto done;
        }
index 38ff64d..1ae3d89 100644 (file)
@@ -976,21 +976,20 @@ static int isapnp_read_resources(struct pnp_dev *dev,
        return 0;
 }
 
-static int isapnp_get_resources(struct pnp_dev *dev,
-                               struct pnp_resource_table *res)
+static int isapnp_get_resources(struct pnp_dev *dev)
 {
        int ret;
 
-       pnp_init_resource_table(res);
+       pnp_init_resource_table(&dev->res);
        isapnp_cfg_begin(dev->card->number, dev->number);
-       ret = isapnp_read_resources(dev, res);
+       ret = isapnp_read_resources(dev, &dev->res);
        isapnp_cfg_end();
        return ret;
 }
 
-static int isapnp_set_resources(struct pnp_dev *dev,
-                               struct pnp_resource_table *res)
+static int isapnp_set_resources(struct pnp_dev *dev)
 {
+       struct pnp_resource_table *res = &dev->res;
        int tmp;
 
        isapnp_cfg_begin(dev->card->number, dev->number);
index c28caf2..6a1f0b0 100644 (file)
@@ -473,7 +473,7 @@ int pnp_start_dev(struct pnp_dev *dev)
                return -EINVAL;
        }
 
-       if (dev->protocol->set(dev, &dev->res) < 0) {
+       if (dev->protocol->set(dev) < 0) {
                dev_err(&dev->dev, "activation failed\n");
                return -EIO;
        }
index 2754687..590fbcb 100644 (file)
@@ -73,8 +73,7 @@ static int __init ispnpidacpi(char *id)
        return 1;
 }
 
-static int pnpacpi_get_resources(struct pnp_dev *dev,
-                                struct pnp_resource_table *res)
+static int pnpacpi_get_resources(struct pnp_dev *dev)
 {
        acpi_status status;
 
@@ -83,8 +82,7 @@ static int pnpacpi_get_resources(struct pnp_dev *dev,
        return ACPI_FAILURE(status) ? -ENODEV : 0;
 }
 
-static int pnpacpi_set_resources(struct pnp_dev *dev,
-                                struct pnp_resource_table *res)
+static int pnpacpi_set_resources(struct pnp_dev *dev)
 {
        acpi_handle handle = dev->data;
        struct acpi_buffer buffer;
@@ -94,7 +92,7 @@ static int pnpacpi_set_resources(struct pnp_dev *dev,
        ret = pnpacpi_build_resource_template(dev, &buffer);
        if (ret)
                return ret;
-       ret = pnpacpi_encode_resources(res, &buffer);
+       ret = pnpacpi_encode_resources(&dev->res, &buffer);
        if (ret) {
                kfree(buffer.pointer);
                return ret;
index 6af2be2..9852755 100644 (file)
@@ -204,8 +204,7 @@ static int pnp_dock_thread(void *unused)
 
 #endif                         /* CONFIG_HOTPLUG */
 
-static int pnpbios_get_resources(struct pnp_dev *dev,
-                                struct pnp_resource_table *res)
+static int pnpbios_get_resources(struct pnp_dev *dev)
 {
        u8 nodenum = dev->number;
        struct pnp_bios_node *node;
@@ -220,14 +219,13 @@ static int pnpbios_get_resources(struct pnp_dev *dev,
                kfree(node);
                return -ENODEV;
        }
-       pnpbios_read_resources_from_node(res, node);
+       pnpbios_read_resources_from_node(&dev->res, node);
        dev->active = pnp_is_active(dev);
        kfree(node);
        return 0;
 }
 
-static int pnpbios_set_resources(struct pnp_dev *dev,
-                                struct pnp_resource_table *res)
+static int pnpbios_set_resources(struct pnp_dev *dev)
 {
        u8 nodenum = dev->number;
        struct pnp_bios_node *node;
@@ -243,7 +241,7 @@ static int pnpbios_set_resources(struct pnp_dev *dev,
                kfree(node);
                return -ENODEV;
        }
-       if (pnpbios_write_resources_to_node(res, node) < 0) {
+       if (pnpbios_write_resources_to_node(&dev->res, node) < 0) {
                kfree(node);
                return -1;
        }
index a4c2bf3..8d7c9bc 100644 (file)
@@ -328,8 +328,8 @@ struct pnp_protocol {
        char *name;
 
        /* resource control functions */
-       int (*get) (struct pnp_dev *dev, struct pnp_resource_table *res);
-       int (*set) (struct pnp_dev *dev, struct pnp_resource_table *res);
+       int (*get) (struct pnp_dev *dev);
+       int (*set) (struct pnp_dev *dev);
        int (*disable) (struct pnp_dev *dev);
 
        /* protocol specific suspend/resume */