Commit e3ead11d authored by Dominik Brodowski's avatar Dominik Brodowski Committed by Linus Torvalds

[PATCH] pcmcia: remove irq_mask and irq_list parameters from PCMCIA drivers

Remove the now useless irq_mask and irq_list parameters from PCMCIA drivers.
Users should use either the socket driver's irq_mask / irq_list parameter or
use /sys/class/pcmcia_socket/pcmcia_socket%n/card_irq_mask which will be added
in a subsequent patch.
Signed-off-by: default avatarDominik Brodowski <linux@brodo.de>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 1fb55c83
......@@ -55,13 +55,6 @@
/* ======================== Module parameters ======================== */
/* Bit map of interrupts to choose from */
static unsigned int irq_mask = 0x86bc;
static int irq_list[4] = { -1 };
module_param(irq_mask, uint, 0);
module_param_array(irq_list, int, NULL, 0);
MODULE_AUTHOR("Marcel Holtmann <marcel@holtmann.org>");
MODULE_DESCRIPTION("Bluetooth driver for the Anycom BlueCard (LSE039/LSE041)");
MODULE_LICENSE("GPL");
......@@ -871,7 +864,7 @@ static dev_link_t *bluecard_attach(void)
bluecard_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
/* Create new info device */
info = kmalloc(sizeof(*info), GFP_KERNEL);
......@@ -885,13 +878,7 @@ static dev_link_t *bluecard_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
link->io.NumPorts1 = 8;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = bluecard_interrupt;
link->irq.Instance = info;
......
......@@ -63,13 +63,6 @@
/* ======================== Module parameters ======================== */
/* Bit map of interrupts to choose from */
static unsigned int irq_mask = 0xffff;
static int irq_list[4] = { -1 };
module_param(irq_mask, uint, 0);
module_param_array(irq_list, int, NULL, 0);
MODULE_AUTHOR("Marcel Holtmann <marcel@holtmann.org>, Jose Orlando Pereira <jop@di.uminho.pt>");
MODULE_DESCRIPTION("Bluetooth driver for the 3Com Bluetooth PCMCIA card");
MODULE_LICENSE("GPL");
......@@ -676,7 +669,7 @@ static dev_link_t *bt3c_attach(void)
bt3c_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
/* Create new info device */
info = kmalloc(sizeof(*info), GFP_KERNEL);
......@@ -690,13 +683,7 @@ static dev_link_t *bt3c_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
link->io.NumPorts1 = 8;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = bt3c_interrupt;
link->irq.Instance = info;
......
......@@ -59,13 +59,6 @@
/* ======================== Module parameters ======================== */
/* Bit map of interrupts to choose from */
static unsigned int irq_mask = 0xffff;
static int irq_list[4] = { -1 };
module_param(irq_mask, uint, 0);
module_param_array(irq_list, int, NULL, 0);
MODULE_AUTHOR("Marcel Holtmann <marcel@holtmann.org>");
MODULE_DESCRIPTION("Bluetooth driver for Bluetooth PCMCIA cards with HCI UART interface");
MODULE_LICENSE("GPL");
......@@ -595,7 +588,7 @@ static dev_link_t *btuart_attach(void)
btuart_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
/* Create new info device */
info = kmalloc(sizeof(*info), GFP_KERNEL);
......@@ -609,13 +602,7 @@ static dev_link_t *btuart_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
link->io.NumPorts1 = 8;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = btuart_interrupt;
link->irq.Instance = info;
......
......@@ -59,13 +59,6 @@
/* ======================== Module parameters ======================== */
/* Bit map of interrupts to choose from */
static unsigned int irq_mask = 0xffff;
static int irq_list[4] = { -1 };
module_param(irq_mask, uint, 0);
module_param_array(irq_list, int, NULL, 0);
MODULE_AUTHOR("Marcel Holtmann <marcel@holtmann.org>");
MODULE_DESCRIPTION("Bluetooth driver for Nokia Connectivity Card DTL-1");
MODULE_LICENSE("GPL");
......@@ -574,7 +567,7 @@ static dev_link_t *dtl1_attach(void)
dtl1_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
/* Create new info device */
info = kmalloc(sizeof(*info), GFP_KERNEL);
......@@ -588,13 +581,7 @@ static dev_link_t *dtl1_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
link->io.NumPorts1 = 8;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = dtl1_interrupt;
link->irq.Instance = info;
......
......@@ -464,16 +464,6 @@ static int debug_level = 0;
static int maxframe[MAX_DEVICE_COUNT] = {0,};
static int dosyncppp[MAX_DEVICE_COUNT] = {1,1,1,1};
/* The old way: bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
static u_int irq_mask = 0xdeb8;
/* Newer, simpler way of listing specific interrupts */
static int irq_list[4] = { -1 };
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
module_param(break_on_load, bool, 0);
module_param(ttymajor, int, 0);
module_param(debug_level, int, 0);
......@@ -555,7 +545,7 @@ static dev_link_t *mgslpc_attach(void)
MGSLPC_INFO *info;
dev_link_t *link;
client_reg_t client_reg;
int ret, i;
int ret;
if (debug_level >= DEBUG_LEVEL_INFO)
printk("mgslpc_attach\n");
......@@ -592,11 +582,6 @@ static dev_link_t *mgslpc_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.Handler = NULL;
link->conf.Attributes = 0;
......
......@@ -64,11 +64,6 @@ MODULE_LICENSE("Dual MPL/GPL");
#define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0)
/* Bit map of interrupts to choose from */
INT_MODULE_PARM(irq_mask, 0xdeb8);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
#ifdef PCMCIA_DEBUG
INT_MODULE_PARM(pc_debug, PCMCIA_DEBUG);
#define DEBUG(n, args...) if (pc_debug>(n)) printk(KERN_DEBUG args)
......@@ -116,7 +111,7 @@ static dev_link_t *ide_attach(void)
ide_info_t *info;
dev_link_t *link;
client_reg_t client_reg;
int i, ret;
int ret;
DEBUG(0, "ide_attach()\n");
......@@ -130,12 +125,7 @@ static dev_link_t *ide_attach(void)
link->io.Attributes2 = IO_DATA_PATH_WIDTH_8;
link->io.IOAddrLines = 3;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -43,16 +43,6 @@ MODULE_LICENSE("GPL");
/*====================================================================*/
/* Parameters that can be set with 'insmod' */
/* This means pick from 15, 12, 11, 10, 9, 7, 5, 4, and 3 */
static int default_irq_list[10] = { 15, 12, 11, 10, 9, 7, 5, 4, 3, -1 };
static int irq_list[10] = { -1 };
MODULE_PARM(irq_list, "1-10i");
/*====================================================================*/
/*
The event() function is this driver's Card Services event handler.
It will be called by Card Services when an appropriate card status
......@@ -134,7 +124,7 @@ static dev_link_t *avmcs_attach(void)
client_reg_t client_reg;
dev_link_t *link;
local_info_t *local;
int ret, i;
int ret;
/* Initialize the dev_link_t structure */
link = kmalloc(sizeof(struct dev_link_t), GFP_KERNEL);
......@@ -151,14 +141,7 @@ static dev_link_t *avmcs_attach(void)
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING|IRQ_FIRST_SHARED;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] != -1) {
for (i = 0; i < 10 && irq_list[i] > 0; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
} else {
for (i = 0; i < 10 && default_irq_list[i] > 0; i++)
link->irq.IRQInfo2 |= 1 << default_irq_list[i];
}
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
/* General socket configuration */
link->conf.Attributes = CONF_ENABLE_IRQ;
......
......@@ -53,11 +53,8 @@ static char *version =
/* Parameters that can be set with 'insmod' */
static int default_irq_list[11] = { 15, 13, 12, 11, 10, 9, 7, 5, 4, 3, -1 };
static int irq_list[11] = { -1 };
static int isdnprot = 2;
module_param_array(irq_list, int, NULL, 0);
module_param(isdnprot, int, 0);
/*====================================================================*/
......@@ -143,7 +140,7 @@ static dev_link_t *avma1cs_attach(void)
client_reg_t client_reg;
dev_link_t *link;
local_info_t *local;
int ret, i;
int ret;
DEBUG(0, "avma1cs_attach()\n");
......@@ -173,15 +170,8 @@ static dev_link_t *avma1cs_attach(void)
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING|IRQ_FIRST_SHARED;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] != -1) {
for (i = 0; i < 10 && irq_list[i] > 0; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
} else {
for (i = 0; i < 10 && default_irq_list[i] > 0; i++)
link->irq.IRQInfo2 |= 1 << default_irq_list[i];
}
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
/* General socket configuration */
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
......
......@@ -81,16 +81,6 @@ static char *version =
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from, the old way */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, 3 */
static u_long irq_mask = 0xdeb8;
/* Newer, simpler way of listing specific interrupts */
static int irq_list[4] = { -1 };
module_param(irq_mask, ulong, 0);
module_param_array(irq_list, int, NULL, 0);
static int protocol = 2; /* EURO-ISDN Default */
module_param(protocol, int, 0);
......@@ -187,7 +177,7 @@ static dev_link_t *elsa_cs_attach(void)
client_reg_t client_reg;
dev_link_t *link;
local_info_t *local;
int ret, i;
int ret;
DEBUG(0, "elsa_cs_attach()\n");
......@@ -200,12 +190,7 @@ static dev_link_t *elsa_cs_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING|IRQ_FIRST_SHARED;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID|IRQ_SHARE_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID|IRQ_SHARE_ID;
link->irq.Handler = NULL;
/*
......
......@@ -82,15 +82,6 @@ static char *version =
/* Parameters that can be set with 'insmod' */
/* The old way: bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
static u_int irq_mask = 0xdeb8;
/* Newer, simpler way of listing specific interrupts */
static int irq_list[4] = { -1 };
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
static int protocol = 2; /* EURO-ISDN Default */
module_param(protocol, int, 0);
......@@ -195,7 +186,7 @@ static dev_link_t *sedlbauer_attach(void)
local_info_t *local;
dev_link_t *link;
client_reg_t client_reg;
int ret, i;
int ret;
DEBUG(0, "sedlbauer_attach()\n");
......@@ -208,14 +199,9 @@ static dev_link_t *sedlbauer_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = NULL;
/*
General socket configuration defaults can go here. In this
client, we assume very little, and rely on the CIS for almost
......
......@@ -62,16 +62,6 @@ static char *version =
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from, the old way */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, 3 */
static u_long irq_mask = 0xdeb8;
/* Newer, simpler way of listing specific interrupts */
static int irq_list[4] = { -1 };
module_param(irq_mask, ulong, 0);
module_param_array(irq_list, int, NULL, 0);
static int protocol = 2; /* EURO-ISDN Default */
module_param(protocol, int, 0);
......@@ -168,7 +158,7 @@ static dev_link_t *teles_attach(void)
client_reg_t client_reg;
dev_link_t *link;
local_info_t *local;
int ret, i;
int ret;
DEBUG(0, "teles_attach()\n");
......@@ -181,12 +171,7 @@ static dev_link_t *teles_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING|IRQ_FIRST_SHARED;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID|IRQ_SHARE_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID|IRQ_SHARE_ID;
link->irq.Handler = NULL;
/*
......
......@@ -109,11 +109,6 @@ MODULE_LICENSE("GPL");
#define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0)
/* Now-standard PC card module parameters. */
INT_MODULE_PARM(irq_mask, 0xdeb8);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
/* Maximum events (Rx packets, etc.) to handle at each interrupt. */
INT_MODULE_PARM(max_interrupt_work, 32);
......@@ -275,7 +270,7 @@ static dev_link_t *tc574_attach(void)
client_reg_t client_reg;
dev_link_t *link;
struct net_device *dev;
int i, ret;
int ret;
DEBUG(0, "3c574_attach()\n");
......@@ -291,12 +286,7 @@ static dev_link_t *tc574_attach(void)
link->io.NumPorts1 = 32;
link->io.Attributes1 = IO_DATA_PATH_WIDTH_16;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &el3_interrupt;
link->irq.Instance = dev;
link->conf.Attributes = CONF_ENABLE_IRQ;
......
......@@ -131,11 +131,6 @@ MODULE_LICENSE("GPL");
/* Special hook for setting if_port when module is loaded */
INT_MODULE_PARM(if_port, 0);
/* Bit map of interrupts to choose from */
INT_MODULE_PARM(irq_mask, 0xdeb8);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
#ifdef PCMCIA_DEBUG
INT_MODULE_PARM(pc_debug, PCMCIA_DEBUG);
#define DEBUG(n, args...) if (pc_debug>(n)) printk(KERN_DEBUG args)
......@@ -188,7 +183,7 @@ static dev_link_t *tc589_attach(void)
client_reg_t client_reg;
dev_link_t *link;
struct net_device *dev;
int i, ret;
int ret;
DEBUG(0, "3c589_attach()\n");
......@@ -204,12 +199,7 @@ static dev_link_t *tc589_attach(void)
link->io.NumPorts1 = 16;
link->io.Attributes1 = IO_DATA_PATH_WIDTH_16;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &el3_interrupt;
link->irq.Instance = dev;
link->conf.Attributes = CONF_ENABLE_IRQ;
......
......@@ -73,14 +73,9 @@ MODULE_AUTHOR("David Hinds <dahinds@users.sourceforge.net>");
MODULE_DESCRIPTION("Asix AX88190 PCMCIA ethernet driver");
MODULE_LICENSE("GPL");
#ifdef PCMCIA_DEBUG
#define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0)
/* Bit map of interrupts to choose from */
INT_MODULE_PARM(irq_mask, 0xdeb8);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
#ifdef PCMCIA_DEBUG
INT_MODULE_PARM(pc_debug, PCMCIA_DEBUG);
#define DEBUG(n, args...) if (pc_debug>(n)) printk(KERN_DEBUG args)
static char *version =
......@@ -159,7 +154,7 @@ static dev_link_t *axnet_attach(void)
dev_link_t *link;
struct net_device *dev;
client_reg_t client_reg;
int i, ret;
int ret;
DEBUG(0, "axnet_attach()\n");
......@@ -173,12 +168,7 @@ static dev_link_t *axnet_attach(void)
link = &info->link;
link->priv = dev;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -115,12 +115,6 @@ module_param(backplane, int, 0);
module_param(clockp, int, 0);
module_param(clockm, int, 0);
/* Bit map of interrupts to choose from */
static u_int irq_mask = 0xdeb8;
static int irq_list[4] = { -1 };
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
MODULE_LICENSE("GPL");
/*====================================================================*/
......@@ -158,7 +152,7 @@ static dev_link_t *com20020_attach(void)
dev_link_t *link;
com20020_dev_t *info;
struct net_device *dev;
int i, ret;
int ret;
struct arcnet_local *lp;
DEBUG(0, "com20020_attach()\n");
......@@ -192,12 +186,7 @@ static dev_link_t *com20020_attach(void)
link->io.NumPorts1 = 16;
link->io.IOAddrLines = 16;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -69,12 +69,6 @@ MODULE_LICENSE("GPL");
#define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0)
/* Bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
INT_MODULE_PARM(irq_mask, 0xdeb8);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
/* SRAM configuration */
/* 0:4KB*2 TX buffer else:8KB*2 TX buffer */
INT_MODULE_PARM(sram_config, 0);
......@@ -248,7 +242,7 @@ static dev_link_t *fmvj18x_attach(void)
dev_link_t *link;
struct net_device *dev;
client_reg_t client_reg;
int i, ret;
int ret;
DEBUG(0, "fmvj18x_attach()\n");
......@@ -267,12 +261,7 @@ static dev_link_t *fmvj18x_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &fjn_interrupt;
link->irq.Instance = dev;
......
......@@ -86,10 +86,6 @@ static char *version =
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from */
static u_int irq_mask = 0xdeb8;
static int irq_list[4] = { -1 };
/* MMIO base address */
static u_long mmiobase = 0xce000;
......@@ -102,8 +98,6 @@ static u_long sramsize = 64;
/* Ringspeed 4,16 */
static int ringspeed = 16;
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
module_param(mmiobase, ulong, 0);
module_param(srambase, ulong, 0);
module_param(sramsize, ulong, 0);
......@@ -162,7 +156,7 @@ static dev_link_t *ibmtr_attach(void)
dev_link_t *link;
struct net_device *dev;
client_reg_t client_reg;
int i, ret;
int ret;
DEBUG(0, "ibmtr_attach()\n");
......@@ -184,12 +178,7 @@ static dev_link_t *ibmtr_attach(void)
link->io.NumPorts1 = 4;
link->io.IOAddrLines = 16;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &tok_interrupt;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
......
......@@ -407,13 +407,8 @@ MODULE_LICENSE("GPL");
#define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0)
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
/* 0=auto, 1=10baseT, 2 = 10base2, default=auto */
INT_MODULE_PARM(if_port, 0);
/* Bit map of interrupts to choose from */
INT_MODULE_PARM(irq_mask, 0xdeb8);
#ifdef PCMCIA_DEBUG
INT_MODULE_PARM(pc_debug, PCMCIA_DEBUG);
......@@ -461,7 +456,7 @@ static dev_link_t *nmclan_attach(void)
dev_link_t *link;
struct net_device *dev;
client_reg_t client_reg;
int i, ret;
int ret;
DEBUG(0, "nmclan_attach()\n");
DEBUG(1, "%s\n", rcsid);
......@@ -479,12 +474,7 @@ static dev_link_t *nmclan_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO;
link->io.IOAddrLines = 5;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &mace_interrupt;
link->irq.Instance = dev;
link->conf.Attributes = CONF_ENABLE_IRQ;
......
......@@ -89,11 +89,6 @@ MODULE_LICENSE("GPL");
#define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0)
/* Bit map of interrupts to choose from */
INT_MODULE_PARM(irq_mask, 0xdeb8);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
INT_MODULE_PARM(if_port, 1); /* Transceiver type */
INT_MODULE_PARM(use_big_buf, 1); /* use 64K packet buffer? */
INT_MODULE_PARM(mem_speed, 0); /* shared mem speed, in ns */
......@@ -256,7 +251,7 @@ static dev_link_t *pcnet_attach(void)
dev_link_t *link;
struct net_device *dev;
client_reg_t client_reg;
int i, ret;
int ret;
DEBUG(0, "pcnet_attach()\n");
......@@ -268,12 +263,7 @@ static dev_link_t *pcnet_attach(void)
link->priv = dev;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -76,11 +76,6 @@ MODULE_LICENSE("GPL");
*/
INT_MODULE_PARM(if_port, 0);
/* Bit map of interrupts to choose from. */
INT_MODULE_PARM(irq_mask, 0xdeb8);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
#ifdef PCMCIA_DEBUG
INT_MODULE_PARM(pc_debug, PCMCIA_DEBUG);
static const char *version =
......@@ -320,7 +315,7 @@ static dev_link_t *smc91c92_attach(void)
struct smc_private *smc;
dev_link_t *link;
struct net_device *dev;
int i, ret;
int ret;
DEBUG(0, "smc91c92_attach()\n");
......@@ -337,12 +332,7 @@ static dev_link_t *smc91c92_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO;
link->io.IOAddrLines = 4;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &smc_interrupt;
link->irq.Instance = dev;
link->conf.Attributes = CONF_ENABLE_IRQ;
......
......@@ -257,9 +257,6 @@ MODULE_LICENSE("Dual MPL/GPL");
#define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0)
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
INT_MODULE_PARM(irq_mask, 0xdeb8);
INT_MODULE_PARM(if_port, 0);
INT_MODULE_PARM(full_duplex, 0);
INT_MODULE_PARM(do_sound, 1);
......@@ -921,13 +918,7 @@ xirc2ps_config(dev_link_t * link)
link->io.IOAddrLines =10;
link->io.Attributes1 = IO_DATA_PATH_WIDTH_16;
link->irq.Attributes = IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else {
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
}
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
if (local->modem) {
int pass;
......@@ -2025,23 +2016,17 @@ module_exit(exit_xirc2ps_cs);
#ifndef MODULE
static int __init setup_xirc2ps_cs(char *str)
{
/* irq, irq_mask, if_port, full_duplex, do_sound, lockup_hack
* [,irq2 [,irq3 [,irq4]]]
/* if_port, full_duplex, do_sound, lockup_hack
*/
int ints[10] = { -1 };
str = get_options(str, 9, ints);
#define MAYBE_SET(X,Y) if (ints[0] >= Y && ints[Y] != -1) { X = ints[Y]; }
MAYBE_SET(irq_list[0], 1);
MAYBE_SET(irq_mask, 2);
MAYBE_SET(if_port, 3);
MAYBE_SET(full_duplex, 4);
MAYBE_SET(do_sound, 5);
MAYBE_SET(lockup_hack, 6);
MAYBE_SET(irq_list[1], 7);
MAYBE_SET(irq_list[2], 8);
MAYBE_SET(irq_list[3], 9);
#undef MAYBE_SET
return 0;
......
......@@ -61,22 +61,12 @@ static char *version = "$Revision: 1.2 $";
/*====================================================================*/
/* Parameters that can be set with 'insmod' */
/* The old way: bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
static u_int irq_mask = 0xdeb8;
/* Newer, simpler way of listing specific interrupts */
static int irq_list[4] = { -1 };
MODULE_AUTHOR("Benjamin Reed");
MODULE_DESCRIPTION("Support for Cisco/Aironet 802.11 wireless ethernet \
cards. This is the module that links the PCMCIA card \
with the airo module.");
MODULE_LICENSE("Dual BSD/GPL");
MODULE_SUPPORTED_DEVICE("Aironet 4500, 4800 and Cisco 340 PCMCIA cards");
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
/*====================================================================*/
......@@ -178,7 +168,7 @@ static dev_link_t *airo_attach(void)
client_reg_t client_reg;
dev_link_t *link;
local_info_t *local;
int ret, i;
int ret;
DEBUG(0, "airo_attach()\n");
......@@ -192,12 +182,7 @@ static dev_link_t *airo_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = NULL;
/*
......
......@@ -74,20 +74,10 @@ static char *version = "$Revision: 1.2 $";
/*====================================================================*/
/* Parameters that can be set with 'insmod' */
/* The old way: bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
static u_int irq_mask = 0xdeb8;
/* Newer, simpler way of listing specific interrupts */
static int irq_list[4] = { -1 };
MODULE_AUTHOR("Simon Kelley");
MODULE_DESCRIPTION("Support for Atmel at76c50x 802.11 wireless ethernet cards.");
MODULE_LICENSE("GPL");
MODULE_SUPPORTED_DEVICE("Atmel at76c50x PCMCIA cards");
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
/*====================================================================*/
......@@ -190,7 +180,7 @@ static dev_link_t *atmel_attach(void)
client_reg_t client_reg;
dev_link_t *link;
local_info_t *local;
int ret, i;
int ret;
DEBUG(0, "atmel_attach()\n");
......@@ -204,12 +194,7 @@ static dev_link_t *atmel_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = NULL;
/*
......
......@@ -190,16 +190,9 @@ static u_int scramble_key = 0x0;
*/
static int mem_speed;
/* Bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
static u_int irq_mask = 0xdeb8;
static int irq_list[4] = { -1 };
module_param(domain, int, 0);
module_param(scramble_key, int, 0);
module_param(mem_speed, int, 0);
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
/*====================================================================*/
......@@ -438,7 +431,7 @@ static dev_link_t *netwave_attach(void)
dev_link_t *link;
struct net_device *dev;
netwave_private *priv;
int i, ret;
int ret;
DEBUG(0, "netwave_attach()\n");
......@@ -459,12 +452,7 @@ static dev_link_t *netwave_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &netwave_interrupt;
/* General socket configuration */
......
......@@ -54,18 +54,10 @@ MODULE_LICENSE("Dual MPL/GPL");
/* Module parameters */
/* The old way: bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
static uint irq_mask = 0xdeb8;
/* Newer, simpler way of listing specific interrupts */
static int irq_list[4] = { -1 };
/* Some D-Link cards have buggy CIS. They do work at 5v properly, but
* don't have any CIS entry for it. This workaround it... */
static int ignore_cis_vcc; /* = 0 */
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
module_param(ignore_cis_vcc, int, 0);
/********************************************************************/
......@@ -161,7 +153,7 @@ orinoco_cs_attach(void)
struct orinoco_pccard *card;
dev_link_t *link;
client_reg_t client_reg;
int ret, i;
int ret;
dev = alloc_orinocodev(sizeof(*card), orinoco_cs_hard_reset);
if (! dev)
......@@ -175,12 +167,7 @@ orinoco_cs_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = NULL;
/* General socket configuration defaults can go here. In this
......@@ -415,16 +402,8 @@ orinoco_cs_config(dev_link_t *link)
* the irq structure is initialized.
*/
if (link->conf.Attributes & CONF_ENABLE_IRQ) {
int i;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i=0; i<4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = orinoco_interrupt;
link->irq.Instance = dev;
......
......@@ -157,9 +157,6 @@ static void start_net(u_long local);
/*===========================================================================*/
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
static u_long irq_mask = 0xdeb8;
/* ADHOC=0, Infrastructure=1 */
static int net_type = ADHOC;
......@@ -222,7 +219,6 @@ MODULE_AUTHOR("Corey Thomas <corey@world.std.com>");
MODULE_DESCRIPTION("Raylink/WebGear wireless LAN driver");
MODULE_LICENSE("GPL");
module_param(irq_mask, ulong, 0);
module_param(net_type, int, 0);
module_param(hop_dwell, int, 0);
module_param(beacon_period, int, 0);
......@@ -354,8 +350,7 @@ static dev_link_t *ray_attach(void)
/* Interrupt setup. For PCMCIA, driver takes what's given */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
link->irq.IRQInfo2 = irq_mask;
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &ray_interrupt;
/* General socket configuration */
......
......@@ -4601,7 +4601,7 @@ wavelan_attach(void)
dev_link_t * link; /* Info for cardmgr */
struct net_device * dev; /* Interface generic data */
net_local * lp; /* Interface specific data */
int i, ret;
int ret;
#ifdef DEBUG_CALLBACK_TRACE
printk(KERN_DEBUG "-> wavelan_attach()\n");
......@@ -4619,12 +4619,7 @@ wavelan_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = wavelan_interrupt;
/* General socket configuration */
......
......@@ -795,17 +795,10 @@ static dev_link_t *dev_list = NULL; /* Linked list of devices */
* The exact syntax is 'insmod wavelan_cs.o <var>=<value>'
*/
/* Bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4 and 3 */
static int irq_mask = 0xdeb8;
static int irq_list[4] = { -1 };
/* Shared memory speed, in ns */
static int mem_speed = 0;
/* New module interface */
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
module_param(mem_speed, int, 0);
#ifdef WAVELAN_ROAMING /* Conditional compile, see above in options */
......
......@@ -97,12 +97,6 @@ module_param(pc_debug, int, 0);
#define WL3501_RESUME 0
#define WL3501_SUSPEND 1
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from */
/* This means pick from 15, 14, 12, 11, 10, 9, 7, 5, 4, and 3 */
static unsigned int wl3501_irq_mask = 0xdeb8;
static int wl3501_irq_list[4] = { -1 };
/*
* The event() function is this driver's Card Services event handler. It will
* be called by Card Services when an appropriate card status event is
......@@ -1967,7 +1961,7 @@ static dev_link_t *wl3501_attach(void)
client_reg_t client_reg;
dev_link_t *link;
struct net_device *dev;
int ret, i;
int ret;
/* Initialize the dev_link_t structure */
link = kmalloc(sizeof(*link), GFP_KERNEL);
......@@ -1982,11 +1976,7 @@ static dev_link_t *wl3501_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
link->irq.IRQInfo2 = wl3501_irq_mask;
if (wl3501_irq_list[0] != -1)
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << wl3501_irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = wl3501_interrupt;
/* General socket configuration */
......@@ -2273,8 +2263,6 @@ static void __exit wl3501_exit_module(void)
module_init(wl3501_init_module);
module_exit(wl3501_exit_module);
module_param(wl3501_irq_mask, uint, 0);
module_param_array(wl3501_irq_list, int, NULL, 0);
MODULE_AUTHOR("Fox Chen <mhchen@golf.ccl.itri.org.tw>, "
"Arnaldo Carvalho de Melo <acme@conectiva.com.br>,"
"Gustavo Niemeyer <niemeyer@conectiva.com>");
......
......@@ -66,11 +66,6 @@ MODULE_LICENSE("Dual MPL/GPL");
#define INT_MODULE_PARM(n, v) static int n = v; module_param(n, int, 0)
/* Bit map of interrupts to choose from */
INT_MODULE_PARM(irq_mask, 0xdeb8);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
INT_MODULE_PARM(epp_mode, 1);
#ifdef PCMCIA_DEBUG
......@@ -116,7 +111,7 @@ static dev_link_t *parport_attach(void)
parport_info_t *info;
dev_link_t *link;
client_reg_t client_reg;
int i, ret;
int ret;
DEBUG(0, "parport_attach()\n");
......@@ -129,12 +124,7 @@ static dev_link_t *parport_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
link->io.Attributes2 = IO_DATA_PATH_WIDTH_8;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -70,10 +70,6 @@ static char *version =
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from */
static u_int irq_mask = 0xdeb8;
static int irq_list[4] = { -1 };
/* SCSI bus setup options */
static int host_id = 7;
static int reconnect = 1;
......@@ -82,8 +78,6 @@ static int synchronous = 1;
static int reset_delay = 100;
static int ext_trans = 0;
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
module_param(host_id, int, 0);
module_param(reconnect, int, 0);
module_param(parity, int, 0);
......@@ -116,7 +110,7 @@ static dev_link_t *aha152x_attach(void)
scsi_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
DEBUG(0, "aha152x_attach()\n");
......@@ -130,12 +124,7 @@ static dev_link_t *aha152x_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO;
link->io.IOAddrLines = 10;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -61,12 +61,6 @@ MODULE_AUTHOR("David Hinds <dahinds@users.sourceforge.net>");
MODULE_DESCRIPTION("Future Domain PCMCIA SCSI driver");
MODULE_LICENSE("Dual MPL/GPL");
/* Bit map of interrupts to choose from */
static int irq_mask = 0xdeb8;
module_param(irq_mask, int, 0);
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
#ifdef PCMCIA_DEBUG
static int pc_debug = PCMCIA_DEBUG;
module_param(pc_debug, int, 0);
......@@ -103,7 +97,7 @@ static dev_link_t *fdomain_attach(void)
scsi_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
DEBUG(0, "fdomain_attach()\n");
......@@ -116,12 +110,7 @@ static dev_link_t *fdomain_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO;
link->io.IOAddrLines = 10;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID|IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -72,14 +72,6 @@ MODULE_LICENSE("GPL");
/*====================================================================*/
/* Parameters that can be set with 'insmod' */
static unsigned int irq_mask = 0xffff;
module_param(irq_mask, int, 0);
MODULE_PARM_DESC(irq_mask, "IRQ mask bits (default: 0xffff)");
static int irq_list[4] = { -1 };
module_param_array(irq_list, int, NULL, 0);
MODULE_PARM_DESC(irq_list, "Use specified IRQ number. (default: auto select)");
static int nsp_burst_mode = BURST_MEM32;
module_param(nsp_burst_mode, int, 0);
MODULE_PARM_DESC(nsp_burst_mode, "Burst transfer mode (0=io8, 1=io32, 2=mem32(default))");
......@@ -1625,7 +1617,7 @@ static dev_link_t *nsp_cs_attach(void)
scsi_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int ret, i;
int ret;
nsp_hw_data *data = &nsp_data_base;
nsp_dbg(NSP_DEBUG_INIT, "in");
......@@ -1647,14 +1639,7 @@ static dev_link_t *nsp_cs_attach(void)
/* Interrupt setup */
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1) {
link->irq.IRQInfo2 = irq_mask;
} else {
for (i = 0; i < 4; i++) {
link->irq.IRQInfo2 |= BIT(irq_list[i]);
}
}
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
/* Interrupt handler */
link->irq.Handler = &nspintr;
......
......@@ -93,17 +93,6 @@ static Scsi_Host_Template qlogicfas_driver_template = {
/*====================================================================*/
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from */
static unsigned int irq_mask = 0xdeb8;
static int irq_list[4] = { -1 };
module_param(irq_mask, int, 0);
module_param_array(irq_list, int, NULL, 0);
/*====================================================================*/
typedef struct scsi_info_t {
dev_link_t link;
dev_node_t node;
......@@ -182,7 +171,7 @@ static dev_link_t *qlogic_attach(void)
scsi_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
DEBUG(0, "qlogic_attach()\n");
......@@ -197,12 +186,7 @@ static dev_link_t *qlogic_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO;
link->io.IOAddrLines = 10;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -92,19 +92,6 @@ static char *version =
/* ================================================================== */
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from */
static unsigned int irq_mask = 0xdeb8; /* 3-5, 7, 9-12, 14, 15 */
static int irq_list[4] = { -1 };
module_param(irq_mask, int, 0);
MODULE_PARM_DESC(irq_mask, "IRQ mask bits (default: 0xdeb8)");
module_param_array(irq_list, int, NULL, 0);
MODULE_PARM_DESC(irq_list, "Comma-separated list of up to 4 IRQs to try (default: auto select).");
/* ================================================================== */
#define SYNC_MODE 0 /* Synchronous transfer mode */
/* Default configuration */
......@@ -965,7 +952,7 @@ SYM53C500_attach(void)
struct scsi_info_t *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
DEBUG(0, "SYM53C500_attach()\n");
......@@ -980,12 +967,7 @@ SYM53C500_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO;
link->io.IOAddrLines = 10;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
link->conf.Vcc = 50;
link->conf.IntType = INT_MEMORY_AND_IO;
......
......@@ -68,18 +68,11 @@ static char *version = "serial_cs.c 1.134 2002/05/04 05:48:53 (David Hinds)";
/* Parameters that can be set with 'insmod' */
/* Bit map of interrupts to choose from */
static u_int irq_mask = 0xdeb8;
static int irq_list[4];
static unsigned int irq_list_count;
/* Enable the speaker? */
static int do_sound = 1;
/* Skip strict UART tests? */
static int buggy_uart;
module_param(irq_mask, uint, 0444);
module_param_array(irq_list, int, &irq_list_count, 0444);
module_param(do_sound, int, 0444);
module_param(buggy_uart, int, 0444);
......@@ -205,7 +198,7 @@ static dev_link_t *serial_attach(void)
struct serial_info *info;
client_reg_t client_reg;
dev_link_t *link;
int i, ret;
int ret;
DEBUG(0, "serial_attach()\n");
......@@ -220,12 +213,7 @@ static dev_link_t *serial_attach(void)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
link->io.NumPorts1 = 8;
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (irq_list_count == 0)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < irq_list_count; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->conf.Attributes = CONF_ENABLE_IRQ;
if (do_sound) {
link->conf.Attributes |= CONF_ENABLE_SPKR;
......
......@@ -42,8 +42,6 @@ MODULE_SUPPORTED_DEVICE("{{Sound Core," CARD_NAME "}}");
static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; /* Index 0-MAX */
static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; /* ID for this card */
static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP; /* Enable switches */
static unsigned int irq_mask = 0xffff;
static int irq_list[4] = { -1 };
module_param_array(index, int, NULL, 0444);
MODULE_PARM_DESC(index, "Index value for " CARD_NAME " soundcard.");
......@@ -51,11 +49,6 @@ module_param_array(id, charp, NULL, 0444);
MODULE_PARM_DESC(id, "ID string for " CARD_NAME " soundcard.");
module_param_array(enable, bool, NULL, 0444);
MODULE_PARM_DESC(enable, "Enable " CARD_NAME " soundcard.");
module_param(irq_mask, int, 0444);
MODULE_PARM_DESC(irq_mask, "IRQ bitmask for " CARD_NAME " soundcard.");
module_param_array(irq_list, int, NULL, 0444);
MODULE_PARM_DESC(irq_list, "List of Available interrupts for " CARD_NAME " soundcard.");
/*
*/
......@@ -164,12 +157,7 @@ static dev_link_t *snd_pdacf_attach(void)
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT | IRQ_FORCED_PULSE;
// link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING|IRQ_FIRST_SHARED;
link->irq.IRQInfo1 = IRQ_INFO2_VALID /* | IRQ_LEVEL_ID */;
if (irq_list[0] == -1)
link->irq.IRQInfo2 = irq_mask;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << irq_list[i];
link->irq.IRQInfo1 = 0 /* | IRQ_LEVEL_ID */;
link->irq.Handler = pdacf_interrupt;
link->irq.Instance = pdacf;
link->conf.Attributes = CONF_ENABLE_IRQ;
......
......@@ -157,12 +157,7 @@ dev_link_t *snd_vxpocket_attach(struct snd_vxp_entry *hw)
link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
// link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING|IRQ_FIRST_SHARED;
link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
if (hw->irq_list[0] == -1)
link->irq.IRQInfo2 = *hw->irq_mask_p;
else
for (i = 0; i < 4; i++)
link->irq.IRQInfo2 |= 1 << hw->irq_list[i];
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = &snd_vx_irq_handler;
link->irq.Instance = chip;
......
......@@ -55,8 +55,6 @@ MODULE_SUPPORTED_DEVICE("{{Digigram," CARD_NAME "}}");
static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; /* Index 0-MAX */
static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; /* ID for this card */
static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP; /* Enable switches */
static unsigned int irq_mask = 0xffff;
static int irq_list[4] = { -1 };
static int ibl[SNDRV_CARDS];
module_param_array(index, int, NULL, 0444);
......@@ -65,10 +63,6 @@ module_param_array(id, charp, NULL, 0444);
MODULE_PARM_DESC(id, "ID string for " CARD_NAME " soundcard.");
module_param_array(enable, bool, NULL, 0444);
MODULE_PARM_DESC(enable, "Enable " CARD_NAME " soundcard.");
module_param(irq_mask, int, 0444);
MODULE_PARM_DESC(irq_mask, "IRQ bitmask for " CARD_NAME " soundcard.");
module_param_array(irq_list, int, NULL, 0444);
MODULE_PARM_DESC(irq_list, "List of Available interrupts for " CARD_NAME " soundcard.");
module_param_array(ibl, int, NULL, 0444);
MODULE_PARM_DESC(ibl, "Capture IBL size for " CARD_NAME " soundcard.");
......@@ -123,8 +117,6 @@ static struct snd_vxp_entry hw_entry = {
.index_table = index,
.id_table = id,
.enable_table = enable,
.irq_mask_p = &irq_mask,
.irq_list = irq_list,
.ibl = ibl,
/* h/w config */
......
......@@ -35,8 +35,6 @@ struct snd_vxp_entry {
int *index_table;
char **id_table;
int *enable_table;
unsigned int *irq_mask_p;
int *irq_list;
int *ibl;
/* h/w config */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment