diff options
Diffstat (limited to 'drivers/pnp/resource.c')
| -rw-r--r-- | drivers/pnp/resource.c | 18 | 
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/pnp/resource.c b/drivers/pnp/resource.c index f604061d2bb..ba976542788 100644 --- a/drivers/pnp/resource.c +++ b/drivers/pnp/resource.c @@ -638,6 +638,24 @@ int pnp_possible_config(struct pnp_dev *dev, int type, resource_size_t start,  }  EXPORT_SYMBOL(pnp_possible_config); +int pnp_range_reserved(resource_size_t start, resource_size_t end) +{ +	struct pnp_dev *dev; +	struct pnp_resource *pnp_res; +	resource_size_t *dev_start, *dev_end; + +	pnp_for_each_dev(dev) { +		list_for_each_entry(pnp_res, &dev->resources, list) { +			dev_start = &pnp_res->res.start; +			dev_end   = &pnp_res->res.end; +			if (ranged_conflict(&start, &end, dev_start, dev_end)) +				return 1; +		} +	} +	return 0; +} +EXPORT_SYMBOL(pnp_range_reserved); +  /* format is: pnp_reserve_irq=irq1[,irq2] .... */  static int __init pnp_setup_reserve_irq(char *str)  {  |