BMillikan
2005-04-17, 11:13 AM CDT
I have finally found out how to get my Linksys EG1032 V2 ethernet card to be recognized by linux FC3 (2.6.11 & 2.6.10 kernels) by kudzu (on bootup). Here are the steps I followed:
1) Go to http://atrpms.net and got the the FC3 (or whatever distribution you are running... if you are using the 2.4 kernel, you are probably fine. The 2.6 kernel has been changed and significant changed had to be made to modify the driver for this group of ethernet adapters)
2) Find the "sk98lin" link on the page and download the appropriate rpm (64-bit or 32-bit kernel). It has a "patch" for both the 2.4 and 2.6 kernel.
3) You will need the source for your kernel at you will either be patching or "updating" the loadable kernel modules. Personally, I found it easier to patch the kernel. So, run "up2date --get-source kernel" for the source code that matches your current kernel.
a) Type 'uname -r' get the version infor of your current kernel (you are running now). After you get the kernel source by using up2date, it will put it in "/var/spool/up2date/kernel-[version id].src.rpm". Run the rpm -ivh /src/spool/up2date/kernel-[version id].src.rpm command to install it.
b) The kernel source code will be named "linux-[version id].tar.bz2" and will be in the /usr/src/redhat/SOURCES directory. Type tar jxvf linux-[version id].tar.bz2 to unzip the kernel. A directory will be created which will look like "linux-2.6.x" and that is the source directory. Go to /usr/src and create a symbolic link "ln -s /usr/src/redhat/SOURCES/linux-2.6.x linux". If you wish to have several versions of the kernel (I have 2.6.9, 2.6.10 and 2.6.11) on my system and I create symbolic links in /usr/src. For example, I have a 2.6.10 symbolic link that points to -> /usr/src/redhat/SOURCES/linux-2.6.10. If I want that to be my primary boot kernel, I just make a symbolic link to that symobic link. So, /usr/src/linux -> /usr/src/linux-2.6.10.
c) Copy the proper config file from the /boot directory to your linux source directory (just created in step 'b'). This has all of the configuration settings for your current kernel. You can adjust it, if you like. But, me experience with this is "somewhat" successful. Things you think you don't need, you need and you just run into problems booting. DO NOT delete your working kernel. In fact, if you are using a boot-loader (grub or lilo) leave the current kernel as the default. If the patch or build process doesn't work you will need it to get back to your current setup (to "tweak" it and make changes). The config file has the same version id as what you see in 'uname -r'. So, it will be /boot/config-[kernel id]. Copy this file to your /usr/src/linux directory. Check to see if ".config" is there already by doing an "ls .config". If it is not, copy the config-[kernel id] file to .config "cp config-[kernel id] .config". We're ready for the patch!
4) Install the patch (it is source code) by running 'rpm -ivh sk98lin-[version].at.[processor id].rpm. Again, the tar.bz2 file will go into the /usr/src/redhat/SOURCES directory. So, once again, deflate the archive by running 'tar -jxvf install-[version id].tar.bz2'. A 'DriverInstall" will be created.
5) cd into the "DriverInstall" directory and run the 'install.sh' file. Select the "patch" option. If all your kernel source is set up correctly and the .config file is in place and your symbolic link has been created '/usr/src/linux', then it should all be downhill from here.
6) Follow the directions to patch the kernel. It should run through the list of things it's doing and finish up (hopefully, without any errors).
7) Now, you must compile the kernel. You should already be in the directory after the patch is finished installing (part of the instructions is to go into your /usr/src/linux directory). This is what I do, configure your kernel and add all the minor revision details. For example if the kernel is named kernel-2.6.11-1.14_FC3, then I put "-1.14_FC3_[my initials]" as the kernel identifier. The default is just the kernel base name "kernel 2.6.x". The steps I follow to make the kernel are as follows:
a) "make mrproper" - clean up
b) "make bzImage" - makes new base kernel
c) "make modules" - this is where your new code will be compiled
d) "make modules_install' - installs the new kernel modules
e) "make install" - install the new kernel in your /boot directory and adds it to your boot loader.
f) I also copy the ".config" file to a unique name (usually the same name I gave the kernel... config-[kernel id with your unique modifier] and copy that to the /boot directory also. I created a build script that does all this for me.
8) Reboot and select the new kernel. If all went well, it should identify your Marvell/Yukon/SysKonnect ethernet adapter.
Contact me if you have any questions.
Brian :)
1) Go to http://atrpms.net and got the the FC3 (or whatever distribution you are running... if you are using the 2.4 kernel, you are probably fine. The 2.6 kernel has been changed and significant changed had to be made to modify the driver for this group of ethernet adapters)
2) Find the "sk98lin" link on the page and download the appropriate rpm (64-bit or 32-bit kernel). It has a "patch" for both the 2.4 and 2.6 kernel.
3) You will need the source for your kernel at you will either be patching or "updating" the loadable kernel modules. Personally, I found it easier to patch the kernel. So, run "up2date --get-source kernel" for the source code that matches your current kernel.
a) Type 'uname -r' get the version infor of your current kernel (you are running now). After you get the kernel source by using up2date, it will put it in "/var/spool/up2date/kernel-[version id].src.rpm". Run the rpm -ivh /src/spool/up2date/kernel-[version id].src.rpm command to install it.
b) The kernel source code will be named "linux-[version id].tar.bz2" and will be in the /usr/src/redhat/SOURCES directory. Type tar jxvf linux-[version id].tar.bz2 to unzip the kernel. A directory will be created which will look like "linux-2.6.x" and that is the source directory. Go to /usr/src and create a symbolic link "ln -s /usr/src/redhat/SOURCES/linux-2.6.x linux". If you wish to have several versions of the kernel (I have 2.6.9, 2.6.10 and 2.6.11) on my system and I create symbolic links in /usr/src. For example, I have a 2.6.10 symbolic link that points to -> /usr/src/redhat/SOURCES/linux-2.6.10. If I want that to be my primary boot kernel, I just make a symbolic link to that symobic link. So, /usr/src/linux -> /usr/src/linux-2.6.10.
c) Copy the proper config file from the /boot directory to your linux source directory (just created in step 'b'). This has all of the configuration settings for your current kernel. You can adjust it, if you like. But, me experience with this is "somewhat" successful. Things you think you don't need, you need and you just run into problems booting. DO NOT delete your working kernel. In fact, if you are using a boot-loader (grub or lilo) leave the current kernel as the default. If the patch or build process doesn't work you will need it to get back to your current setup (to "tweak" it and make changes). The config file has the same version id as what you see in 'uname -r'. So, it will be /boot/config-[kernel id]. Copy this file to your /usr/src/linux directory. Check to see if ".config" is there already by doing an "ls .config". If it is not, copy the config-[kernel id] file to .config "cp config-[kernel id] .config". We're ready for the patch!
4) Install the patch (it is source code) by running 'rpm -ivh sk98lin-[version].at.[processor id].rpm. Again, the tar.bz2 file will go into the /usr/src/redhat/SOURCES directory. So, once again, deflate the archive by running 'tar -jxvf install-[version id].tar.bz2'. A 'DriverInstall" will be created.
5) cd into the "DriverInstall" directory and run the 'install.sh' file. Select the "patch" option. If all your kernel source is set up correctly and the .config file is in place and your symbolic link has been created '/usr/src/linux', then it should all be downhill from here.
6) Follow the directions to patch the kernel. It should run through the list of things it's doing and finish up (hopefully, without any errors).
7) Now, you must compile the kernel. You should already be in the directory after the patch is finished installing (part of the instructions is to go into your /usr/src/linux directory). This is what I do, configure your kernel and add all the minor revision details. For example if the kernel is named kernel-2.6.11-1.14_FC3, then I put "-1.14_FC3_[my initials]" as the kernel identifier. The default is just the kernel base name "kernel 2.6.x". The steps I follow to make the kernel are as follows:
a) "make mrproper" - clean up
b) "make bzImage" - makes new base kernel
c) "make modules" - this is where your new code will be compiled
d) "make modules_install' - installs the new kernel modules
e) "make install" - install the new kernel in your /boot directory and adds it to your boot loader.
f) I also copy the ".config" file to a unique name (usually the same name I gave the kernel... config-[kernel id with your unique modifier] and copy that to the /boot directory also. I created a build script that does all this for me.
8) Reboot and select the new kernel. If all went well, it should identify your Marvell/Yukon/SysKonnect ethernet adapter.
Contact me if you have any questions.
Brian :)