PNP: remove pnp_resource_table from internal get/set interfaces

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>
This commit is contained in:
Bjorn Helgaas 2008-04-28 16:34:05 -06:00 committed by Len Brown
parent c1caf06ccf
commit 59284cb409
6 changed files with 16 additions and 21 deletions

View 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;
}

View 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);

View 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;
}

View 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;

View 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;
}

View 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 */