[PATCH] : ir247_drv_region-2.diff

Jean Tourrilhes (jt@bougret.hpl.hp.com)
Wed, 9 Jan 2002 12:04:07 -0800


ir247_drv_region-2.diff :
-----------------------
<Patch from Steven>
o [CORRECT] Cleanup check_region()/request_region() in various drivers

diff -u -p linux/drivers/net/irda/w83977af_ir.d8.c linux/drivers/net/irda/w83977af_ir.c
--- linux/drivers/net/irda/w83977af_ir.d8.c Tue Jan 8 15:21:46 2002
+++ linux/drivers/net/irda/w83977af_ir.c Tue Jan 8 16:03:00 2002
@@ -160,7 +160,7 @@ int w83977af_open(int i, unsigned int io
{
struct net_device *dev;
struct w83977af_ir *self;
- int ret;
+ void *ret;
int err;

IRDA_DEBUG(0, __FUNCTION__ "()\n");
@@ -190,14 +190,13 @@ int w83977af_open(int i, unsigned int io
self->io.fifo_size = 32;

/* Lock the port that we need */
- ret = check_region(self->io.fir_base, self->io.fir_ext);
- if (ret < 0) {
+ ret = request_region(self->io.fir_base, self->io.fir_ext, driver_name);
+ if (!ret) {
IRDA_DEBUG(0, __FUNCTION__ "(), can't get iobase of 0x%03x\n",
self->io.fir_base);
/* w83977af_cleanup( self); */
return -ENODEV;
}
- request_region(self->io.fir_base, self->io.fir_ext, driver_name);

/* Initialize QoS for this device */
irda_init_max_qos_capabilies(&self->qos);
diff -u -p linux/drivers/net/irda/nsc-ircc.d8.c linux/drivers/net/irda/nsc-ircc.c
--- linux/drivers/net/irda/nsc-ircc.d8.c Tue Jan 8 15:21:36 2002
+++ linux/drivers/net/irda/nsc-ircc.c Tue Jan 8 16:04:07 2002
@@ -246,7 +246,7 @@ static int nsc_ircc_open(int i, chipio_t
struct net_device *dev;
struct nsc_ircc_cb *self;
struct pm_dev *pmdev;
- int ret;
+ void *ret;
int err;

IRDA_DEBUG(2, __FUNCTION__ "()\n");
@@ -282,15 +282,14 @@ static int nsc_ircc_open(int i, chipio_t
self->io.fifo_size = 32;

/* Reserve the ioports that we need */
- ret = check_region(self->io.fir_base, self->io.fir_ext);
- if (ret < 0) {
+ ret = request_region(self->io.fir_base, self->io.fir_ext, driver_name);
+ if (!ret) {
WARNING(__FUNCTION__ "(), can't get iobase of 0x%03x\n",
self->io.fir_base);
dev_self[i] = NULL;
kfree(self);
return -ENODEV;
}
- request_region(self->io.fir_base, self->io.fir_ext, driver_name);

/* Initialize QoS for this device */
irda_init_max_qos_capabilies(&self->qos);
diff -u -p linux/drivers/net/irda/irport.d8.c linux/drivers/net/irda/irport.c
--- linux/drivers/net/irda/irport.d8.c Tue Jan 8 15:21:54 2002
+++ linux/drivers/net/irda/irport.c Tue Jan 8 16:02:51 2002
@@ -140,7 +140,7 @@ irport_open(int i, unsigned int iobase,
{
struct net_device *dev;
struct irport_cb *self;
- int ret;
+ void *ret;
int err;

IRDA_DEBUG(0, __FUNCTION__ "()\n");
@@ -169,13 +169,12 @@ irport_open(int i, unsigned int iobase,
self->io.fifo_size = 16;

/* Lock the port that we need */
- ret = check_region(self->io.sir_base, self->io.sir_ext);
- if (ret < 0) {
+ ret = request_region(self->io.sir_base, self->io.sir_ext, driver_name);
+ if (!ret) {
IRDA_DEBUG(0, __FUNCTION__ "(), can't get iobase of 0x%03x\n",
self->io.sir_base);
return NULL;
}
- request_region(self->io.sir_base, self->io.sir_ext, driver_name);

/* Initialize QoS for this device */
irda_init_max_qos_capabilies(&self->qos);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/