This changes pnp_clean_resource_table() to take a pnp_dev pointer
rather than a pnp_resource_table pointer. This reduces the visibility
of pnp_resource_table and removes an opportunity for error in the
caller.
Signed-off-by: Bjorn Helgaas <[email protected]>
Index: work7/drivers/pnp/manager.c
===================================================================
--- work7.orig/drivers/pnp/manager.c 2008-03-25 11:03:59.000000000 -0600
+++ work7/drivers/pnp/manager.c 2008-03-25 11:04:52.000000000 -0600
@@ -247,8 +247,9 @@
* pnp_clean_resources - clears resources that were not manually set
* @res: the resources to clean
*/
-static void pnp_clean_resource_table(struct pnp_resource_table *res)
+static void pnp_clean_resource_table(struct pnp_dev *dev)
{
+ struct pnp_resource_table *res = &dev->res;
int idx;
for (idx = 0; idx < PNP_MAX_IRQ; idx++) {
@@ -304,7 +305,7 @@
return -ENODEV;
mutex_lock(&pnp_res_mutex);
- pnp_clean_resource_table(&dev->res); /* start with a fresh slate */
+ pnp_clean_resource_table(dev);
if (dev->independent) {
port = dev->independent->port;
mem = dev->independent->mem;
@@ -376,7 +377,7 @@
return 1;
fail:
- pnp_clean_resource_table(&dev->res);
+ pnp_clean_resource_table(dev);
mutex_unlock(&pnp_res_mutex);
return 0;
}
@@ -554,7 +555,7 @@
/* release the resources so that other devices can use them */
mutex_lock(&pnp_res_mutex);
- pnp_clean_resource_table(&dev->res);
+ pnp_clean_resource_table(dev);
mutex_unlock(&pnp_res_mutex);
return 0;
--