PROBLEM: insmod com20020-isa exits with an Input/Output Error

From: Peter.Kronberger@br-automation.co.at
Date: Fri Jan 04 2002 - 06:30:50 EST


Hi, everybody

[1.] insmod com20020-isa exits with an Input/Output Error

[2.] The driver 'drivers/net/arcnet/com20020-isa' has problems when calling
function 'com20020_found' located in 'drivers/net/arcnet/com20020.c' line
205. At this line the driver is requesting the ioport using function
'request_region' and gets the pointer to his own resource-structure
although it is expecting 'NULL'. see 8.

[3.] com20020, arcnet

[4.] 2.4.16

[5.]

[6.]
insmod arcnet debug=65535
insmod rfc1201
insmod rfc1051
insmod com20020
insmod com20020-isa io=0x340

[7.]

[8.]
My ARCNet-hardware is a single SMC COM20020 which is onboard our company-specific industrial PC called PROVIT2001. It's has a fixed base-address:
0x340 and uses IRQ 15.

The problems happen with all 2.4.x kernels; 2.2.20 does NOT include the bug.

Here's the mentioned part of the code
source: http://lxr.linux.no (same as in tar-archive from kernel.org)
kernel: 2.4.16
file: drivers/net/arcnet/com20020.c

204 /* reserve the I/O region */
205 if (request_region(ioaddr, ARCNET_TOTAL_SIZE, "arcnet (COM20020)")) {
206 free_irq(dev->irq, dev);
207 return -EBUSY;
208 }

Possibly is this the right line (like in 'drivers/net/ne.c' line 242)

205 if ( !request_region(ioaddr, ARCNET_TOTAL_SIZE, "arcnet (COM20020)")) {
This line is working!!!

Patch:
--- /usr/src/linux-2.4.16-old/drivers/net/arcnet/com20020.c Fri Jan 4 12:15:25 2002
+++ /usr/src/linux-2.4.16/drivers/net/arcnet/com20020.c Fri Jan 4 12:15:55 2002
@@ -202,7 +202,7 @@
            return -ENODEV;
      }
      /* reserve the I/O region */
- if (request_region(ioaddr, ARCNET_TOTAL_SIZE, "arcnet (COM20020)")) {
+ if (!request_region(ioaddr, ARCNET_TOTAL_SIZE, "arcnet (COM20020)")) {
            free_irq(dev->irq, dev);
            return -EBUSY;
      }

Best Regards
Peter Kronberger

-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html



This archive was generated by hypermail 2b29 : Mon Jan 07 2002 - 21:00:40 EST