PNP: make generic pnp_add_irq_resource()
Add a pnp_add_irq_resource() that can be used by all the PNP backends. This consolidates a little more pnp_resource_table knowledge into one place. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
@@ -576,6 +576,32 @@ static struct pnp_resource *pnp_new_resource(struct pnp_dev *dev, int type)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
struct pnp_resource *pnp_add_irq_resource(struct pnp_dev *dev, int irq,
|
||||
int flags)
|
||||
{
|
||||
struct pnp_resource *pnp_res;
|
||||
struct resource *res;
|
||||
static unsigned char warned;
|
||||
|
||||
pnp_res = pnp_new_resource(dev, IORESOURCE_IRQ);
|
||||
if (!pnp_res) {
|
||||
if (!warned) {
|
||||
dev_err(&dev->dev, "can't add resource for IRQ %d\n",
|
||||
irq);
|
||||
warned = 1;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
res = &pnp_res->res;
|
||||
res->flags = IORESOURCE_IRQ | flags;
|
||||
res->start = irq;
|
||||
res->end = irq;
|
||||
|
||||
dev_dbg(&dev->dev, " add irq %d flags %#x\n", irq, flags);
|
||||
return pnp_res;
|
||||
}
|
||||
|
||||
/* format is: pnp_reserve_irq=irq1[,irq2] .... */
|
||||
static int __init pnp_setup_reserve_irq(char *str)
|
||||
{
|
||||
|
Reference in New Issue
Block a user