git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vserver 2.0 rc7
[linux-2.6.git]
/
drivers
/
pnp
/
isapnp
/
core.c
diff --git
a/drivers/pnp/isapnp/core.c
b/drivers/pnp/isapnp/core.c
index
ee6d1ed
..
82c5edd
100644
(file)
--- a/
drivers/pnp/isapnp/core.c
+++ b/
drivers/pnp/isapnp/core.c
@@
-52,19
+52,19
@@
#endif
int isapnp_disable; /* Disable ISA PnP */
#endif
int isapnp_disable; /* Disable ISA PnP */
-
int isapnp_rdp;
/* Read Data Port */
-
int isapnp_reset = 1;
/* reset all PnP cards (deactivate) */
-
int isapnp_verbose = 1;
/* verbose mode */
+
static int isapnp_rdp;
/* Read Data Port */
+
static int isapnp_reset = 1;
/* reset all PnP cards (deactivate) */
+
static int isapnp_verbose = 1;
/* verbose mode */
MODULE_AUTHOR("Jaroslav Kysela <perex@suse.cz>");
MODULE_DESCRIPTION("Generic ISA Plug & Play support");
MODULE_AUTHOR("Jaroslav Kysela <perex@suse.cz>");
MODULE_DESCRIPTION("Generic ISA Plug & Play support");
-
MODULE_PARM(isapnp_disable, "i"
);
+
module_param(isapnp_disable, int, 0
);
MODULE_PARM_DESC(isapnp_disable, "ISA Plug & Play disable");
MODULE_PARM_DESC(isapnp_disable, "ISA Plug & Play disable");
-
MODULE_PARM(isapnp_rdp, "i"
);
+
module_param(isapnp_rdp, int, 0
);
MODULE_PARM_DESC(isapnp_rdp, "ISA Plug & Play read data port");
MODULE_PARM_DESC(isapnp_rdp, "ISA Plug & Play read data port");
-
MODULE_PARM(isapnp_reset, "i"
);
+
module_param(isapnp_reset, int, 0
);
MODULE_PARM_DESC(isapnp_reset, "ISA Plug & Play reset all cards");
MODULE_PARM_DESC(isapnp_reset, "ISA Plug & Play reset all cards");
-
MODULE_PARM(isapnp_verbose, "i"
);
+
module_param(isapnp_verbose, int, 0
);
MODULE_PARM_DESC(isapnp_verbose, "ISA Plug & Play verbose mode");
MODULE_LICENSE("GPL");
MODULE_PARM_DESC(isapnp_verbose, "ISA Plug & Play verbose mode");
MODULE_LICENSE("GPL");
@@
-121,7
+121,7
@@
unsigned char isapnp_read_byte(unsigned char idx)
return read_data();
}
return read_data();
}
-unsigned short isapnp_read_word(unsigned char idx)
+
static
unsigned short isapnp_read_word(unsigned char idx)
{
unsigned short val;
{
unsigned short val;
@@
-130,38
+130,19
@@
unsigned short isapnp_read_word(unsigned char idx)
return val;
}
return val;
}
-unsigned int isapnp_read_dword(unsigned char idx)
-{
- unsigned int val;
-
- val = isapnp_read_byte(idx);
- val = (val << 8) + isapnp_read_byte(idx+1);
- val = (val << 8) + isapnp_read_byte(idx+2);
- val = (val << 8) + isapnp_read_byte(idx+3);
- return val;
-}
-
void isapnp_write_byte(unsigned char idx, unsigned char val)
{
write_address(idx);
write_data(val);
}
void isapnp_write_byte(unsigned char idx, unsigned char val)
{
write_address(idx);
write_data(val);
}
-void isapnp_write_word(unsigned char idx, unsigned short val)
+
static
void isapnp_write_word(unsigned char idx, unsigned short val)
{
isapnp_write_byte(idx, val >> 8);
isapnp_write_byte(idx+1, val);
}
{
isapnp_write_byte(idx, val >> 8);
isapnp_write_byte(idx+1, val);
}
-void isapnp_write_dword(unsigned char idx, unsigned int val)
-{
- isapnp_write_byte(idx, val >> 24);
- isapnp_write_byte(idx+1, val >> 16);
- isapnp_write_byte(idx+2, val >> 8);
- isapnp_write_byte(idx+3, val);
-}
-
-void *isapnp_alloc(long size)
+static void *isapnp_alloc(long size)
{
void *result;
{
void *result;
@@
-196,24
+177,24
@@
static void isapnp_wait(void)
isapnp_write_byte(0x02, 0x02);
}
isapnp_write_byte(0x02, 0x02);
}
-void isapnp_wake(unsigned char csn)
+
static
void isapnp_wake(unsigned char csn)
{
isapnp_write_byte(0x03, csn);
}
{
isapnp_write_byte(0x03, csn);
}
-void isapnp_device(unsigned char logdev)
+
static
void isapnp_device(unsigned char logdev)
{
isapnp_write_byte(0x07, logdev);
}
{
isapnp_write_byte(0x07, logdev);
}
-void isapnp_activate(unsigned char logdev)
+
static
void isapnp_activate(unsigned char logdev)
{
isapnp_device(logdev);
isapnp_write_byte(ISAPNP_CFG_ACTIVATE, 1);
udelay(250);
}
{
isapnp_device(logdev);
isapnp_write_byte(ISAPNP_CFG_ACTIVATE, 1);
udelay(250);
}
-void isapnp_deactivate(unsigned char logdev)
+
static
void isapnp_deactivate(unsigned char logdev)
{
isapnp_device(logdev);
isapnp_write_byte(ISAPNP_CFG_ACTIVATE, 0);
{
isapnp_device(logdev);
isapnp_write_byte(ISAPNP_CFG_ACTIVATE, 0);
@@
-477,12
+458,14
@@
static void __init isapnp_parse_irq_resource(struct pnp_option *option,
{
unsigned char tmp[3];
struct pnp_irq *irq;
{
unsigned char tmp[3];
struct pnp_irq *irq;
+ unsigned long bits;
isapnp_peek(tmp, size);
irq = isapnp_alloc(sizeof(struct pnp_irq));
if (!irq)
return;
isapnp_peek(tmp, size);
irq = isapnp_alloc(sizeof(struct pnp_irq));
if (!irq)
return;
- irq->map = (tmp[1] << 8) | tmp[0];
+ bits = (tmp[1] << 8) | tmp[0];
+ bitmap_copy(irq->map, &bits, 16);
if (size > 2)
irq->flags = tmp[2];
else
if (size > 2)
irq->flags = tmp[2];
else
@@
-655,8
+638,10
@@
static int __init isapnp_create_device(struct pnp_card *card,
if ((dev = isapnp_parse_device(card, size, number++)) == NULL)
return 1;
option = pnp_register_independent_option(dev);
if ((dev = isapnp_parse_device(card, size, number++)) == NULL)
return 1;
option = pnp_register_independent_option(dev);
- if (!option)
+ if (!option) {
+ kfree(dev);
return 1;
return 1;
+ }
pnp_add_card_device(card,dev);
while (1) {
pnp_add_card_device(card,dev);
while (1) {
@@
-968,13
+953,7
@@
EXPORT_SYMBOL(isapnp_present);
EXPORT_SYMBOL(isapnp_cfg_begin);
EXPORT_SYMBOL(isapnp_cfg_end);
EXPORT_SYMBOL(isapnp_read_byte);
EXPORT_SYMBOL(isapnp_cfg_begin);
EXPORT_SYMBOL(isapnp_cfg_end);
EXPORT_SYMBOL(isapnp_read_byte);
-EXPORT_SYMBOL(isapnp_read_word);
-EXPORT_SYMBOL(isapnp_read_dword);
EXPORT_SYMBOL(isapnp_write_byte);
EXPORT_SYMBOL(isapnp_write_byte);
-EXPORT_SYMBOL(isapnp_write_word);
-EXPORT_SYMBOL(isapnp_write_dword);
-EXPORT_SYMBOL(isapnp_wake);
-EXPORT_SYMBOL(isapnp_device);
static int isapnp_read_resources(struct pnp_dev *dev, struct pnp_resource_table *res)
{
static int isapnp_read_resources(struct pnp_dev *dev, struct pnp_resource_table *res)
{
@@
-1066,7
+1045,7
@@
struct pnp_protocol isapnp_protocol = {
.disable = isapnp_disable_resources,
};
.disable = isapnp_disable_resources,
};
-int __init isapnp_init(void)
+
static
int __init isapnp_init(void)
{
int cards;
struct pnp_card *card;
{
int cards;
struct pnp_card *card;