Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[linux-2.6] / drivers / pnp / support.c
1 /*
2  * support.c - provides standard pnp functions for the use of pnp protocol drivers,
3  *
4  * Copyright 2003 Adam Belay <ambx1@neo.rr.com>
5  *
6  */
7
8 #include <linux/module.h>
9 #include <linux/ctype.h>
10 #include <linux/pnp.h>
11 #include "base.h"
12
13 /**
14  * pnp_is_active - Determines if a device is active based on its current resources
15  * @dev: pointer to the desired PnP device
16  *
17  */
18
19 int pnp_is_active(struct pnp_dev * dev)
20 {
21         if (!pnp_port_start(dev, 0) && pnp_port_len(dev, 0) <= 1 &&
22             !pnp_mem_start(dev, 0) && pnp_mem_len(dev, 0) <= 1 &&
23             pnp_irq(dev, 0) == -1 &&
24             pnp_dma(dev, 0) == -1)
25                 return 0;
26         else
27                 return 1;
28 }
29
30
31
32 EXPORT_SYMBOL(pnp_is_active);