3com 3C940 driver on linux
Hi,,,
I have been trying to install the 3com 3C940 driver that I downloaded from the ASUS website... If I run make I get the following error: [HTML] home:~/Linux/3c2000# make gcc -D__KERNEL__ -Wall -Wstrict-prototypes -O2 -DMODULE -I. -DSK_USE_CSUM -I /usr/src/linux/include -D__SMP__ -c -o skge.o skge.c In file included from /usr/src/linux/include/asm/processor.h:18, from /usr/src/linux/include/asm/thread_info.h:17, from /usr/src/linux/include/linux/thread_info.h:21, from /usr/src/linux/include/linux/preempt.h:10, from /usr/src/linux/include/linux/spinlock.h:50, from /usr/src/linux/include/linux/capability.h:45, from /usr/src/linux/include/linux/sched.h:7, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:210: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:210: warning: dereferencing type-punned pointer will break strict-aliasing rules In file included from /usr/src/linux/include/linux/rwsem.h:27, from /usr/src/linux/include/asm/semaphore.h:42, from /usr/src/linux/include/linux/sched.h:20, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/rwsem.h: In function `__down_read': /usr/src/linux/include/asm/rwsem.h:105: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/rwsem.h: In function `__down_write': /usr/src/linux/include/asm/rwsem.h:157: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/rwsem.h: In function `__up_read': /usr/src/linux/include/asm/rwsem.h:194: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/rwsem.h:188: warning: unused variable `tmp' /usr/src/linux/include/asm/rwsem.h: In function `__up_write': /usr/src/linux/include/asm/rwsem.h:220: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/rwsem.h: In function `__downgrade_write': /usr/src/linux/include/asm/rwsem.h:245: error: syntax error before "KBUILD_BASENAME" In file included from /usr/src/linux/include/linux/sched.h:20, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/semaphore.h: In function `down': /usr/src/linux/include/asm/semaphore.h:105: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/semaphore.h: In function `down_interruptible': /usr/src/linux/include/asm/semaphore.h:130: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/semaphore.h: In function `down_trylock': /usr/src/linux/include/asm/semaphore.h:155: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/semaphore.h: In function `up': /usr/src/linux/include/asm/semaphore.h:179: error: syntax error before "KBUILD_BASENAME" In file included from /usr/src/linux/include/asm/smp.h:18, from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/mpspec.h:6:25: mach_mpspec.h: No such file or directory In file included from /usr/src/linux/include/asm/smp.h:18, from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/mpspec.h: At top level: /usr/src/linux/include/asm/mpspec.h:8: error: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:9: error: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:10: error: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:12: error: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:22: error: `MAX_IRQ_SOURCES' undeclared here (not in a function) In file included from /usr/src/linux/include/asm/smp.h:20, from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/io_apic.h:158: error: `MAX_IRQ_SOURCES' undeclared here (not in a function) /usr/src/linux/include/asm/io_apic.h:158: error: conflicting types for `mp_irqs' /usr/src/linux/include/asm/mpspec.h:22: error: previous declaration of `mp_irqs' In file included from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/smp.h:77:26: mach_apicdef.h: No such file or directory In file included from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/smp.h: In function `hard_smp_processor_id': /usr/src/linux/include/asm/smp.h:81: warning: implicit declaration of function `GET_APIC_ID' In file included from /usr/src/linux/include/linux/irq.h:22, from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/hardirq.h:7, from /usr/src/linux/include/linux/interrupt.h:11, from h/skdrv1st.h:161, from skge.c:347: /usr/src/linux/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory In file included from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/hardirq.h:7, from /usr/src/linux/include/linux/interrupt.h:11, from h/skdrv1st.h:161, from skge.c:347: /usr/src/linux/include/linux/irq.h: At top level: /usr/src/linux/include/linux/irq.h:85: error: `NR_IRQS' undeclared here (not ina function) In file included from /usr/src/linux/include/linux/irq.h:94, from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/hardirq.h:7, from /usr/src/linux/include/linux/interrupt.h:11, from h/skdrv1st.h:161, from skge.c:347: /usr/src/linux/include/asm/hw_irq.h:30: error: `NR_IRQ_VECTORS' undeclared here(not in a function) /usr/src/linux/include/asm/hw_irq.h:34: error: `NR_IRQS' undeclared here (not in a function) In file included from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/hardirq.h:7, from /usr/src/linux/include/linux/interrupt.h:11, from h/skdrv1st.h:161, from skge.c:347: /usr/src/linux/include/linux/irq.h:99: error: `NR_IRQS' undeclared here (not ina function) /usr/src/linux/include/linux/irq.h:115: error: `NR_IRQS' undeclared here (not in a function) skge.c: In function `skge_probe': skge.c:504: warning: implicit declaration of function `pci_present' skge.c:507: warning: implicit declaration of function `pci_find_class' skge.c:507: warning: assignment makes pointer from integer without a cast skge.c:525: warning: integer constant is too large for "long" type skge.c:530: warning: implicit declaration of function `init_etherdev' skge.c:530: warning: assignment makes pointer from integer without a cast skge.c:679: warning: assignment makes pointer from integer without a cast skge.c: At top level: skge.c:796: error: syntax error before string constant skge.c:796: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:796: warning: function declaration isn't a prototype skge.c:796: warning: data definition has no type or storage class skge.c:797: error: syntax error before string constant skge.c:797: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:797: warning: function declaration isn't a prototype skge.c:797: warning: data definition has no type or storage class skge.c:798: error: syntax error before string constant skge.c:798: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:798: warning: function declaration isn't a prototype skge.c:798: warning: data definition has no type or storage class skge.c:799: error: syntax error before string constant skge.c:799: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:799: warning: function declaration isn't a prototype skge.c:799: warning: data definition has no type or storage class skge.c:800: error: syntax error before string constant skge.c:800: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:800: warning: function declaration isn't a prototype skge.c:800: warning: data definition has no type or storage class skge.c:801: error: syntax error before string constant skge.c:801: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:801: warning: function declaration isn't a prototype skge.c:801: warning: data definition has no type or storage class skge.c:802: error: syntax error before string constant skge.c:802: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:802: warning: function declaration isn't a prototype skge.c:802: warning: data definition has no type or storage class skge.c:803: error: syntax error before string constant skge.c:803: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:803: warning: function declaration isn't a prototype skge.c:803: warning: data definition has no type or storage class skge.c:804: error: syntax error before string constant skge.c:804: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:804: warning: function declaration isn't a prototype skge.c:804: warning: data definition has no type or storage class skge.c:805: error: syntax error before string constant skge.c:805: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:805: warning: function declaration isn't a prototype skge.c:805: warning: data definition has no type or storage class skge.c:806: error: syntax error before string constant skge.c:806: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:806: warning: function declaration isn't a prototype skge.c:806: warning: data definition has no type or storage class skge.c:807: error: syntax error before string constant skge.c:807: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:807: warning: function declaration isn't a prototype skge.c:807: warning: data definition has no type or storage class skge.c:809: error: syntax error before string constant skge.c:809: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:809: warning: function declaration isn't a prototype skge.c:809: warning: data definition has no type or storage class skge.c:810: error: syntax error before string constant skge.c:810: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:810: warning: function declaration isn't a prototype skge.c:810: warning: data definition has no type or storage class skge.c: In function `SkGeBoardInit': skge.c:1085: warning: passing arg 2 of `request_irq' from incompatible pointer type skge.c:1088: warning: passing arg 2 of `request_irq' from incompatible pointer type skge.c: In function `SkGeOpen': skge.c:1793: error: `MOD_INC_USE_COUNT' undeclared (first use in this function) skge.c:1793: error: (Each undeclared identifier is reported only once skge.c:1793: error: for each function it appears in.) skge.c: In function `SkGeClose': skge.c:1893: error: `MOD_DEC_USE_COUNT' undeclared (first use in this function) skge.c: In function `ReceiveIrq': skge.c:2645: warning: implicit declaration of function `pci_dma_sync_single' make: *** [skge.o] Error 1 home:~/Linux/3c2000# make gcc -D__KERNEL__ -Wall -Wstrict-prototypes -O2 -DMODULE -I. -DSK_USE_CSUM -I /usr/src/linux/include -D__SMP__ -c -o skge.o skge.c In file included from /usr/src/linux/include/asm/processor.h:18, from /usr/src/linux/include/asm/thread_info.h:17, from /usr/src/linux/include/linux/thread_info.h:21, from /usr/src/linux/include/linux/preempt.h:10, from /usr/src/linux/include/linux/spinlock.h:50, from /usr/src/linux/include/linux/capability.h:45, from /usr/src/linux/include/linux/sched.h:7, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux/include/asm/system.h:210: warning: dereferencing type-punned pointer will break strict-aliasing rules /usr/src/linux/include/asm/system.h:210: warning: dereferencing type-punned pointer will break strict-aliasing rules In file included from /usr/src/linux/include/linux/rwsem.h:27, from /usr/src/linux/include/asm/semaphore.h:42, from /usr/src/linux/include/linux/sched.h:20, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/rwsem.h: In function `__down_read': /usr/src/linux/include/asm/rwsem.h:105: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/rwsem.h: In function `__down_write': /usr/src/linux/include/asm/rwsem.h:157: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/rwsem.h: In function `__up_read': /usr/src/linux/include/asm/rwsem.h:194: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/rwsem.h:188: warning: unused variable `tmp' /usr/src/linux/include/asm/rwsem.h: In function `__up_write': /usr/src/linux/include/asm/rwsem.h:220: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/rwsem.h: In function `__downgrade_write': /usr/src/linux/include/asm/rwsem.h:245: error: syntax error before "KBUILD_BASENAME" In file included from /usr/src/linux/include/linux/sched.h:20, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/semaphore.h: In function `down': /usr/src/linux/include/asm/semaphore.h:105: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/semaphore.h: In function `down_interruptible': /usr/src/linux/include/asm/semaphore.h:130: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/semaphore.h: In function `down_trylock': /usr/src/linux/include/asm/semaphore.h:155: error: syntax error before "KBUILD_BASENAME" /usr/src/linux/include/asm/semaphore.h: In function `up': /usr/src/linux/include/asm/semaphore.h:179: error: syntax error before "KBUILD_BASENAME" In file included from /usr/src/linux/include/asm/smp.h:18, from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/mpspec.h:6:25: mach_mpspec.h: No such file or directory In file included from /usr/src/linux/include/asm/smp.h:18, from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/mpspec.h: At top level: /usr/src/linux/include/asm/mpspec.h:8: error: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:9: error: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:10: error: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:12: error: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:22: error: `MAX_IRQ_SOURCES' undeclared here (not in a function) In file included from /usr/src/linux/include/asm/smp.h:20, from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/io_apic.h:158: error: `MAX_IRQ_SOURCES' undeclared here (not in a function) /usr/src/linux/include/asm/io_apic.h:158: error: conflicting types for `mp_irqs' /usr/src/linux/include/asm/mpspec.h:22: error: previous declaration of `mp_irqs' In file included from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/smp.h:77:26: mach_apicdef.h: No such file or directory In file included from /usr/src/linux/include/linux/smp.h:19, from /usr/src/linux/include/linux/sched.h:26, from /usr/src/linux/include/linux/module.h:10, from skge.c:344: /usr/src/linux/include/asm/smp.h: In function `hard_smp_processor_id': /usr/src/linux/include/asm/smp.h:81: warning: implicit declaration of function `GET_APIC_ID' In file included from /usr/src/linux/include/linux/irq.h:22, from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/hardirq.h:7, from /usr/src/linux/include/linux/interrupt.h:11, from h/skdrv1st.h:161, from skge.c:347: /usr/src/linux/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory In file included from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/hardirq.h:7, from /usr/src/linux/include/linux/interrupt.h:11, from h/skdrv1st.h:161, from skge.c:347: /usr/src/linux/include/linux/irq.h: At top level: /usr/src/linux/include/linux/irq.h:85: error: `NR_IRQS' undeclared here (not ina function) In file included from /usr/src/linux/include/linux/irq.h:94, from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/hardirq.h:7, from /usr/src/linux/include/linux/interrupt.h:11, from h/skdrv1st.h:161, from skge.c:347: /usr/src/linux/include/asm/hw_irq.h:30: error: `NR_IRQ_VECTORS' undeclared here(not in a function) /usr/src/linux/include/asm/hw_irq.h:34: error: `NR_IRQS' undeclared here (not in a function) In file included from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/hardirq.h:7, from /usr/src/linux/include/linux/interrupt.h:11, from h/skdrv1st.h:161, from skge.c:347: /usr/src/linux/include/linux/irq.h:99: error: `NR_IRQS' undeclared here (not ina function) /usr/src/linux/include/linux/irq.h:115: error: `NR_IRQS' undeclared here (not in a function) skge.c: In function `skge_probe': skge.c:504: warning: implicit declaration of function `pci_present' skge.c:507: warning: implicit declaration of function `pci_find_class' skge.c:507: warning: assignment makes pointer from integer without a cast skge.c:525: warning: integer constant is too large for "long" type skge.c:530: warning: implicit declaration of function `init_etherdev' skge.c:530: warning: assignment makes pointer from integer without a cast skge.c:679: warning: assignment makes pointer from integer without a cast skge.c: At top level: skge.c:796: error: syntax error before string constant skge.c:796: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:796: warning: function declaration isn't a prototype skge.c:796: warning: data definition has no type or storage class skge.c:797: error: syntax error before string constant skge.c:797: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:797: warning: function declaration isn't a prototype skge.c:797: warning: data definition has no type or storage class skge.c:798: error: syntax error before string constant skge.c:798: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:798: warning: function declaration isn't a prototype skge.c:798: warning: data definition has no type or storage class skge.c:799: error: syntax error before string constant skge.c:799: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:799: warning: function declaration isn't a prototype skge.c:799: warning: data definition has no type or storage class skge.c:800: error: syntax error before string constant skge.c:800: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:800: warning: function declaration isn't a prototype skge.c:800: warning: data definition has no type or storage class skge.c:801: error: syntax error before string constant skge.c:801: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:801: warning: function declaration isn't a prototype skge.c:801: warning: data definition has no type or storage class skge.c:802: error: syntax error before string constant skge.c:802: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:802: warning: function declaration isn't a prototype skge.c:802: warning: data definition has no type or storage class skge.c:803: error: syntax error before string constant skge.c:803: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:803: warning: function declaration isn't a prototype skge.c:803: warning: data definition has no type or storage class skge.c:804: error: syntax error before string constant skge.c:804: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:804: warning: function declaration isn't a prototype skge.c:804: warning: data definition has no type or storage class skge.c:805: error: syntax error before string constant skge.c:805: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:805: warning: function declaration isn't a prototype skge.c:805: warning: data definition has no type or storage class skge.c:806: error: syntax error before string constant skge.c:806: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:806: warning: function declaration isn't a prototype skge.c:806: warning: data definition has no type or storage class skge.c:807: error: syntax error before string constant skge.c:807: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:807: warning: function declaration isn't a prototype skge.c:807: warning: data definition has no type or storage class skge.c:809: error: syntax error before string constant skge.c:809: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:809: warning: function declaration isn't a prototype skge.c:809: warning: data definition has no type or storage class skge.c:810: error: syntax error before string constant skge.c:810: warning: type defaults to `int' in declaration of `MODULE_PARM' skge.c:810: warning: function declaration isn't a prototype skge.c:810: warning: data definition has no type or storage class skge.c: In function `SkGeBoardInit': skge.c:1085: warning: passing arg 2 of `request_irq' from incompatible pointer type skge.c:1088: warning: passing arg 2 of `request_irq' from incompatible pointer type skge.c: In function `SkGeOpen': skge.c:1793: error: `MOD_INC_USE_COUNT' undeclared (first use in this function) skge.c:1793: error: (Each undeclared identifier is reported only once skge.c:1793: error: for each function it appears in.) skge.c: In function `SkGeClose': skge.c:1893: error: `MOD_DEC_USE_COUNT' undeclared (first use in this function) skge.c: In function `ReceiveIrq': skge.c:2645: warning: implicit declaration of function `pci_dma_sync_single' make: *** [skge.o] Error 1 [/HTML] I am running a dual boot system .. Win XP works fine .. I had ueagle-atm driver installed before since I was using my folks usb modem when I was at their place.. lspci shows the card as 3com Corporation 3c940 10/100/1000Base-T [Marvell] (rev 12) On the other hand lsmod doesn't seem to show the card? Wil apprecaite any feedback ... |
Quote:
Quote:
|
I'm pretty sure you need the sk98lin driver for your ethernet card. My card is a 3C940 Onboard Ethernet Controller which is based on and uses the Marvell (Yukon) driver. If you can't get it to install with insmod then I would suggest rebuilding the kernel with support for the card.
edit: should be the skge driver. Simplified, and less buggy version of the sk98*** series drivers. |
All times are GMT -5. The time now is 04:10 AM. |