LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Debian (https://www.linuxquestions.org/questions/debian-26/)
-   -   ne.c NE2000/1000 modules kernel 2.6 with debian SID problem (https://www.linuxquestions.org/questions/debian-26/ne-c-ne2000-1000-modules-kernel-2-6-with-debian-sid-problem-220894/)

e88z4 08-22-2004 10:16 AM

ne.c NE2000/1000 modules kernel 2.6 with debian SID problem
 
Firstly, pardon me about my english. Hope you guys can understand what I mean.

I just upgraded my debian woody into sid this morning and having problem with one of my network card. My machine has 3 network card installed, 2 PCI and 1 ISA.

1. PCI Realtek 8139b (works properly)
2. PCI 3Com Cyclone (works properly)
3. ISA Netgear EA201using ne.ko modules (problems with 2.6.8-1 but works properly with Debian woody stock kernel).

Using debian woody stock kernel all my network cards worked properly and can be use for routing purposes. Recently I upgraded to unstable distribution (SID) and trying to use MODCONF to load the module for my ISA Netgear network card.

This is what I got for loading this modules using modprobe. The paramenter passed in are
io=0x300 irq=3 (This is the same parameter I passed in with Debian woody stock kernel)
----------------------------------------------------------------------------------------------------------------------------
Installing module ne. If the device isn't there, or isn't configured correctly, this could cause your system to pause for up to a minute.

FATAL: Error inserting ne (/lib/modules/2.6.8-1/kernel/drivers/net/ne.ko): No such device or address

Installation failed.

Please press ENTER when you are ready to continue.
----------------------------------------------------------------------------------------------------------------------------

BUT
The modules is successfuly loaded if I use MODPROBE

>>modprobe ne io=0x300 irq=3
I know the module is successfuly loaded because I can browse the internet using my netgear network card

Any idea about this problem? Is it a bug in kernel 2.6 for ne.ko driver? I think I realized that this module depend on 8390.ko.

This is my computer spec:
Compaq 5050 Celeron 300
ATI 3D Rage LT Pro
Intel 82443LX
Debian Sid using vanilla kernel 2.6.8-1 from www.kerne.org

Thanks in advance

HappyTux 08-22-2004 11:12 AM

What does lsmod show for it? It looks like the module name has changed to something different the only thing I see close to it on my old kernel on my firewall is ne2000 and that is not present in 2.6.8.1.

Code:

Last login: Sat Aug 21 20:44:12 2004 from happytux
stephen@DoopeyTux:~$ grep -i ne /boot/config-2.4.18-bf2.4
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_NET=y
CONFIG_MD_LINEAR=m
CONFIG_NETLINK_DEV=m
CONFIG_NETFILTER=y
CONFIG_INET=y
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_INET_ECN=y
CONFIG_INET_ECN_DISABLED=y
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_ECONET=m
CONFIG_SCSI_GENERIC_NCR5380=m
CONFIG_NET_FC=y
CONFIG_NETDEVICES=y
CONFIG_ARCNET=m
CONFIG_ARCNET_1051=m
CONFIG_ARCNET_COM90xx=m
CONFIG_ARCNET_COM90xxIO=m
CONFIG_ARCNET_RIM_I=m
CONFIG_ARCNET_COM20020=m
CONFIG_ARCNET_COM20020_PCI=m
CONFIG_NET_SB1000=m
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_NET_VENDOR_SMC=y
CONFIG_NET_VENDOR_RACAL=y
CONFIG_NET_ISA=y
CONFIG_NE2000=m
CONFIG_NET_PCI=y
CONFIG_PCNET32=y
CONFIG_NE2K_PCI=y
CONFIG_VIA_RHINE=m
CONFIG_NET_POCKET=y
CONFIG_ROADRUNNER=m
CONFIG_NET_RADIO=y
CONFIG_AIRONET4500=m
CONFIG_AIRONET4500_NONCS=m
CONFIG_AIRONET4500_PNP=y
CONFIG_AIRONET4500_PCI=y
CONFIG_AIRONET4500_ISA=y
CONFIG_AIRONET4500_I365=y
CONFIG_AIRONET4500_PROC=m
CONFIG_NET_WIRELESS=y
CONFIG_NET_FC=y
CONFIG_HISAX_NETJET=y
CONFIG_HISAX_NETJET_U=y
CONFIG_COMPUTONE=m
CONFIG_DRM_NEW=y
CONFIG_TUNER_3036=m
CONFIG_FBCON_VGA_PLANES=y
CONFIG_USB_SCANNER=m
CONFIG_USB_USBNET=m
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_OMNINET=m

Code:

[12:00 PM Sun Aug 22: stephen @ ~]
>$ grep -i ne /boot/config-2.6.8.1-ck3
# Automatically generated make config: don't edit
CONFIG_GENERIC_ISA_DMA=y
# General setup
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_GENERIC is not set
# Generic Driver Options
CONFIG_STANDALONE=y
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_GENERIC=y
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_SCSI_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
# Networking support
CONFIG_NET=y
# Networking options
CONFIG_NETLINK_DEV=m
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_NETFILTER is not set
# CONFIG_DECNET is not set
# CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set
# CONFIG_NET_HW_FLOWCONTROL is not set
# CONFIG_NET_SCHED is not set
# CONFIG_NET_CLS_ROUTE is not set
# Network testing
# CONFIG_NET_PKTGEN is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
CONFIG_NETDEVICES=y
# CONFIG_NET_SB1000 is not set
# ARCnet devices
# CONFIG_ARCNET is not set
# Ethernet (10 or 100Mbit)
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_VENDOR_RACAL is not set
# Tulip family network device support
CONFIG_NET_TULIP=y
# CONFIG_NET_ISA is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
CONFIG_NE2K_PCI=m
# CONFIG_8139TOO_TUNE_TWISTER is not set
CONFIG_VIA_RHINE=m
# CONFIG_VIA_RHINE_MMIO is not set
# CONFIG_NET_POCKET is not set
# Ethernet (1000 Mbit)
# Ethernet (10000 Mbit)
# CONFIG_NET_RADIO is not set
# CONFIG_NET_FC is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_PHONE is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_COMPUTONE is not set
# CONFIG_FB_NEOMAGIC is not set
# Generic devices
# Miscellaneous USB options
# Video4Linux support is needed for USB Multimedia device support
# USB Network adaptors
# CONFIG_USB_USBNET is not set
# USB Miscellaneous drivers
# Miscellaneous filesystems
# Network File Systems
# Kernel hacking
# CONFIG_DEBUG_KERNEL is not set
# Library routines

You may want to check the help for the ISA net card options in whichever tool you use to configure the kernel. Also have you mkdir /sys as root and added this to your /etc/fstab to have the new sysfs mounted at boot that is needed for a 2.6 kernel.

Code:

## Needed for kernel 2.6
none            /sys            sysfs  defaults                0      0


e88z4 08-22-2004 04:42 PM

This is my lsmod result, as you can see ne.ko was loaded properly using MODPROBE

Code:

>>lsmod
Module                  Size  Used by
ne                      7172  0
8390                    9824  1 ne
apm                    20516  1
8250                  19232  0
serial_core            22784  1 8250
usbhid                23808  0
uhci_hcd              31728  0
usbcore                81504  2 usbhid,uhci_hcd
soundcore              9664  0
3c59x                  33928  0
r128                  102564  0
ati_agp                7948  0
agpgart                33160  1 ati_agp
eeprom                  7464  0
it87                  19340  0
i2c_sensor              2848  2 eeprom,it87
i2c_core              23568  3 eeprom,it87,i2c_sensor
8139too                22784  0
af_packet              17608  2
rtc                    12440  0

Code:

grep -i ne config-2.2.20-idepci
CONFIG_NET=y
CONFIG_NETLINK=y
CONFIG_NETLINK_DEV=m
CONFIG_INET=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_NET_VENDOR_SMC=y
CONFIG_NET_VENDOR_RACAL=y
CONFIG_NET_ISA=y
CONFIG_NE2000=m
CONFIG_NET_EISA=y
CONFIG_PCNET32=y
CONFIG_LNE390=m
CONFIG_NE3210=m
CONFIG_NE2K_PCI=y
CONFIG_VIA_RHINE=y
CONFIG_FBCON_VGA_PLANES=y

Code:

grep -i ne config-2.6.8-1
# Automatically generated make config: don't edit
CONFIG_GENERIC_ISA_DMA=y
# General setup
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_GENERIC is not set
# Generic Driver Options
CONFIG_STANDALONE=y
CONFIG_IDE_GENERIC=y
# CONFIG_SCSI_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
# Networking support
CONFIG_NET=y
# Networking options
CONFIG_NETLINK_DEV=m
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
# IP: Netfilter Configuration
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_NETMAP=m
# CONFIG_DECNET is not set
# CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set
# CONFIG_NET_HW_FLOWCONTROL is not set
# CONFIG_NET_SCHED is not set
CONFIG_NET_CLS_ROUTE=y
# Network testing
# CONFIG_NET_PKTGEN is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
CONFIG_NETDEVICES=y
# CONFIG_NET_SB1000 is not set
# ARCnet devices
# CONFIG_ARCNET is not set
# Ethernet (10 or 100Mbit)
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_VENDOR_RACAL is not set
# Tulip family network device support
# CONFIG_NET_TULIP is not set
CONFIG_NET_ISA=y
CONFIG_NE2000=m
# CONFIG_ZNET is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
CONFIG_NE2K_PCI=m
CONFIG_8139TOO_TUNE_TWISTER=y
# CONFIG_VIA_RHINE is not set
# CONFIG_NET_POCKET is not set
# Ethernet (1000 Mbit)
# Ethernet (10000 Mbit)
# CONFIG_NET_RADIO is not set
# CONFIG_NET_FC is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_PHONE is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_FB_NEOMAGIC is not set
# Miscellaneous USB options
# Video4Linux support is needed for USB Multimedia device support
# USB Network adaptors
# CONFIG_USB_USBNET is not set
# USB Miscellaneous drivers
# Miscellaneous filesystems
# Network File Systems
# Kernel hacking
# CONFIG_DEBUG_KERNEL is not set
# Library routines

This is what I got
Code:

modprobe io=0x300 irq=3
ne.c:v1.10 9/23/94 Donald Becker (becker@scyld.com)
Last modified Nov 1, 2000 by Paul Gortmaker
NE*000 ethercard probe at 0x300: 00 40 05 f7 04 f3
eth%d: NE2000 found at 0x300, using IRQ 3.


e88z4 08-22-2004 04:54 PM

following my reply, the reason you don't see NE2000 module in your kernel 2.6 is because
Code:

CONFIG_NET_ISA is not set
if this option is not set, so you won't see any NE2000 as your option. NE2000 is still exist in kernel 2.6.
Your suggestion about /sys in kernel 2.6, I do have this directory as a replacement /proc in kernel 2.4. I am still don't have any idea, how could this happen? Actually this problem is not critical, but I have to load the module manually in order to get my LAN connected to the internet. It's quite annoying.

HappyTux 08-22-2004 05:29 PM

Quote:

Originally posted by e88z4
following my reply, the reason you don't see NE2000 module in your kernel 2.6 is because
Code:

CONFIG_NET_ISA is not set
if this option is not set, so you won't see any NE2000 as your option. NE2000 is still exist in kernel 2.6.
Your suggestion about /sys in kernel 2.6, I do have this directory as a replacement /proc in kernel 2.4. I am still don't have any idea, how could this happen? Actually this problem is not critical, but I have to load the module manually in order to get my LAN connected to the internet. It's quite annoying.

Ah I see. For your problem just put the ne2000 in the /etc/modules file and it should get loaded on boot if it gives you problems with getting the io and irq correct then make a file in the /etc/modprobe.d/ directory called netcard then use as the contents.

Code:

alias eth? ne2000
options ne2000 io=0x300 irq=3

Changing the ? to the eth number it gets detected as then run update-modules to have the information entered into the /etc/modules.conf, I'm not sure if the update-mouldes is necessary any more with the 2.6 kernels I seem to remember reading somewhere it is not but I still do it anyways.

e88z4 08-22-2004 07:25 PM

I did try to edit them manually but NE module failed to be loaded during boot time.

Code:

cat /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file should contain the names of kernel modules that are
# to be loaded at boot time, one per line.  Comments begin with
# a "#", and everything on the line after them are ignored.

af_packet
8139too
it87
eeprom
agpgart
ati-agp
r128
soundcore
usbcore
uhci-hcd
usbhid
aty128fb
8390
ne
3c59x

Code:

cat /etc/modules.conf
### This file is automatically generated by update-modules"
#
# Please do not edit this file directly. If you want to change or add
# anything please take a look at the files in /etc/modutils and read
# the manpage for update-modules.
#
### update-modules: start processing /etc/modutils/0keep
# DO NOT MODIFY THIS FILE!
# This file is not marked as conffile to make sure if you upgrade modutils
# it will be restored in case some modifications have been made.
#
# The keep command is necessary to prevent insmod and friends from ignoring
# the builtin defaults of a path-statement is encountered. Until all other
# packages use the new `add path'-statement this keep-statement is essential
# to keep your system working
keep

### update-modules: end processing /etc/modutils/0keep

### update-modules: start processing /etc/modutils/3c59x
options 3c59x debug=1 options=4

### update-modules: end processing /etc/modutils/3c59x

### update-modules: start processing /etc/modutils/actions
# Special actions that are needed for some modules

# The BTTV module does not load the tuner module automatically,
# so do that in here
post-install bttv insmod tuner
post-remove bttv rmmod tuner


### update-modules: end processing /etc/modutils/actions

### update-modules: start processing /etc/modutils/aliases
# Aliases to tell insmod/modprobe which modules to use

# Uncomment the network protocols you don't want loaded:
# alias net-pf-1 off            # Unix
# alias net-pf-2 off            # IPv4
# alias net-pf-3 off            # Amateur Radio AX.25
# alias net-pf-4 off            # IPX
# alias net-pf-5 off            # DDP / appletalk
# alias net-pf-6 off            # Amateur Radio NET/ROM
# alias net-pf-9 off            # X.25
# alias net-pf-10 off          # IPv6
# alias net-pf-11 off          # ROSE / Amateur Radio X.25 PLP
# alias net-pf-19 off          # Acorn Econet

alias char-major-10-175 agpgart
alias char-major-10-200 tun
alias char-major-81    bttv
alias char-major-108    ppp_generic
alias /dev/ppp          ppp_generic
alias tty-ldisc-3      ppp_async
alias tty-ldisc-14      ppp_synctty
alias ppp-compress-21  bsd_comp
alias ppp-compress-24  ppp_deflate
alias ppp-compress-26  ppp_deflate

# Crypto modules (see http://www.kerneli.org/)
alias loop-xfer-gen-0  loop_gen
alias loop-xfer-3      loop_fish2
alias loop-xfer-gen-10  loop_gen
alias cipher-2          des
alias cipher-3          fish2
alias cipher-4          blowfish
alias cipher-6          idea
alias cipher-7          serp6f
alias cipher-8          mars6
alias cipher-11        rc62
alias cipher-15        dfc2
alias cipher-16        rijndael
alias cipher-17        rc5


### update-modules: end processing /etc/modutils/aliases

### update-modules: start processing /etc/modutils/apm
alias char-major-10-134 apm
alias /dev/apm_bios            /dev/misc/apm_bios
alias /dev/misc/apm_bios        apm

### update-modules: end processing /etc/modutils/apm

### update-modules: start processing /etc/modutils/ne
options ne io=0x300 irq=3

### update-modules: end processing /etc/modutils/ne

### update-modules: start processing /etc/modutils/paths
# This file contains a list of paths that modprobe should scan,
# beside the ones that are compiled into the modutils tools
# themselves.


### update-modules: end processing /etc/modutils/paths

### update-modules: start processing /etc/modutils/ppp
alias /dev/ppp          ppp_generic
alias char-major-108    ppp_generic
alias tty-ldisc-3      ppp_async
alias tty-ldisc-14      ppp_synctty
alias ppp-compress-21  bsd_comp
alias ppp-compress-24  ppp_deflate
alias ppp-compress-26  ppp_deflate

### update-modules: end processing /etc/modutils/ppp

### update-modules: start processing /etc/modutils/setserial
#
# This is what I wanted to do, but logger is in /usr/bin, which isn't loaded
# when the module is first loaded into the kernel at boot time!
#
#post-install serial /etc/init.d/setserial start | logger -p daemon.info -t "setserial-module reload"
#pre-remove serial /etc/init.d/setserial stop | logger -p daemon.info -t "setserial-module uload"
#
alias /dev/tts          serial
alias /dev/tts/0        serial
alias /dev/tts/1        serial
alias /dev/tts/2        serial
alias /dev/tts/3        serial
post-install serial /etc/init.d/setserial modload > /dev/null 2> /dev/null
pre-remove serial /etc/init.d/setserial modsave  > /dev/null 2> /dev/null

### update-modules: end processing /etc/modutils/setserial

### update-modules: start processing /etc/modutils/arch/i386
alias parport_lowlevel parport_pc
alias char-major-10-144 nvram
alias binfmt-0064 binfmt_aout
alias char-major-10-135 rtc

### update-modules: end processing /etc/modutils/arch/i386

Code:

cat /etc/modutils/ne
options ne io=0x300 irq=3


HappyTux 08-22-2004 07:48 PM

You have not put the alias eth? ne in the file just before the option line any time I have done this it is needed to be able to pass the parameter to the module. You may want to look at installing the discover and discover-data packages although I am unsure whether they detect ISA or not. Also you put the file in the modutils directory that does not get used when a 2.6 kernel boots the files in the modprobe.d I mentioned is where it looks for the configurations.

e88z4 08-22-2004 08:15 PM

I tried by putting eth2 (eth0 is my Realtek NIC eth1 is my 3com NIC) before options ne io=0x300 irq=3

This is one of the section in /etc/modules.conf
Code:

### update-modules: start processing /etc/modutils/ne
alias eth2 ne
options ne io=0x300 irq=3

### update-modules: end processing /etc/modutils/ne

Your suggested method did not work either.
I guess Debian has a different way how to handle automatic loading module with other distribution. Debian has 2 files in /etc related with automatic loading during boot time, they are
1. /etc/modules -> this is for determine which modules need to be loaded during the boot time (see my previous post)
2. /etc/modules.conf -> this is where all the aliases and options for each modules

BTW what distribution are u currently have?

HappyTux 08-22-2004 08:38 PM

Debian Sarge/SID/Experimental with a bit of apt pinning going on. Debian differs in that you cannot edit the /etc/modules.conf directly that is what the /etc/modutils for a 2.4 and /etc/modprobe.d for a 2.6 directories are for. In the case of a 2.4 the files get read when the update-modules is done and the the information is put into the modules.conf this step is supposed to be unnecessary for a 2.6 kernel it is to read the files directly in the modprobe.d directory. This one has about got me stumped the only other idea I can think of is to put.

Code:

alias eth2 ne
modprobe ne io=0x300 irq=3

And see if modprobing the module directly in the file will work and there is always the dirty hack of trying.

Code:

modprobe ne io=0x300 irq=3
Near the bottom of the file /etc/init.d/bootmisc.sh to try and get it too load.

e88z4 08-22-2004 10:38 PM

I haven't tried your idea, but it might work I think. I got the solution by compiling the module in the kernel. This way my Netgear NIC is detected automatically. Thanks for your comment and reply.


All times are GMT -5. The time now is 12:41 PM.