LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Networking (https://www.linuxquestions.org/questions/linux-networking-3/)
-   -   unable to activate eth0 'attansic L2' on CentOS 5.1 (https://www.linuxquestions.org/questions/linux-networking-3/unable-to-activate-eth0-attansic-l2-on-centos-5-1-a-619969/)

aadilbcas 02-09-2008 04:11 PM

unable to activate eth0 'attansic L2' on CentOS 5.1
 
hello ppl...

i found out that i have an 'attansic technology corp. l2 ethernet adapter'

after my installation of CentOS5.1
im unable to activate this NIC and receiving "3c501 device eth0 does not seem to be present, delaying initialization"

please help me to solve this problem.. is there any modprobe that i have to use if so please mention everything step by step..

urgent..
thanks in advance..

Brian1 02-09-2008 08:19 PM

Posted the portion about the nic from this command may shed light onto the chipset it is using. /sbin/lspci -v

Brian

aadilbcas 02-10-2008 01:42 AM

/sbin/lspci -v shows
 
02:00.0 Ethernet controller: Attansic Technology Corp. L2 100 Mbit Ethernet Adapter (rev a0)
Subsystem: ASUSTeK Computer Inc. Unknown device 8233
Flags: bus master, fast devsel, latency 0, IRQ 10
Memory at ddec0000 (64-bit, non-prefetchable) [size = 256k]
Expansion ROM at ddea0000 [disabled] [size=128k]
Capabilities: [40] Power Management version 2
Capabilities: [48] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable
Capabilities: [58] Express Endpoint IRQ 0


/sbin/lspci -v

will this info help?

Brian1 02-10-2008 08:40 AM

Ok a quick search on google points it to use the alt2 module.
http://hardware4linux.info/component/28824/

Based on that a search for alt2 gave way to many responces. The alt2 is not part of the latest kernel that I can see. So another quick search on google for attansic L2 resulted in the following link to alt2 module package.
http://www.opcioncomputer.es/linux.php?info=1

So you need to download the L2 linux driver and extract and compile it for your system. Now being the system install is fresh with standard options you do not have your kernel source installed yet which is what will need to be required to compile the module. So on the cd there is a file called kernel-devel-*********.rpm where ******** is the kernel version you are running. To see kernel version use command ' uname -r '. Now to install you need to be root. Open a console and goto the location of the rpm on the cd. Once there and changed to root using the su command you run the following command.
rpm -ivh kernel-devel-*******.rpm

Once installed follow the install or readme file directions on compiling the module.

Brian

aadilbcas 02-10-2008 11:08 PM

Quote:

Originally Posted by Brian1 (Post 3052346)
So you need to download the L2 linux driver and extract and compile it for your system.

many many thanks for the reply.......

i downloaded the driver...

as i im new to linux, i totally have no idea, WHERE should i extract and compile the module.
and HOW should i install it..? (please include the commands to be used)

do i have to install this driver after doing kernal-devel-*****.rpm..?



thanks again..


aadil..

Brian1 02-11-2008 08:27 AM

I cut this out of the tar file.
Code:

1. Move the base driver tar file to the directory of your choice. For example,
  use /home/username/atl2 or /usr/local/src/atl2.

2. Untar/unzip archive:

    tar zxf atl2-x.x.x.tar.gz

3. Change to the driver src directory:

    cd atl2-x.x.x/src/

4. Compile the driver module:

    make install

  The binary will be installed as:

    /lib/modules/<KERNEL VERSION>/kernel/drivers/net/atl2.[k]o

  The install locations listed above are the default locations. They might
  not be correct for certain Linux distributions. For more information,
  see the ldistrib.txt file included in the driver tar.

5. Install the module:

    insmod atl2 <parameter>=<value>

6. Assign an IP address to the interface by entering the following, where
  x is the interface number:

    ifconfig ethx <IP_address>

7. Verify that the interface works. Enter the following, where <IP_address>
  is the IP address for another machine on the same subnet as the interface
  that is being tested:

    ping  <IP_address>

Brian

aadilbcas 02-11-2008 02:43 PM

getting error
 
Quote:

Originally Posted by Brian1 (Post 3053378)
4. Compile the driver module:

make install

as i type 'make install'

i get the following error,
-----------------------------------------------------

Makefile:62: *** Linux kernel source not found. Stop.

-----------------------------------------------------

what next ??? pls help...

thanx..

aadil

Brian1 02-11-2008 05:20 PM

Did you install the kernel-devel-**********.rpm from the cd that matches the current running kernel?

Brian

aadilbcas 02-12-2008 07:51 AM

Quote:

Originally Posted by Brian1 (Post 3053942)
Did you install the kernel-devel-**********.rpm from the cd that matches the current running kernel?

Brian


yes after i installed and tried 'make install' now its saying,

makefile:119: *** compiler not found. stop.



what am i supposed to do?

Brian1 02-12-2008 05:04 PM

Now you need gcc+ installed. It is an rpm on the cd. The bigger issue it requires other rpms ro be installed as well. So once you find the rpm run the command.
rpm -ivh gcc*.rpm and it will spit out needing other rpms. To do so add each as needed to satisfied to install like so.
rpm -ivh gcc*.rpm next.rpm next.rpm next.rpm

The easier way is to copy the rpms off the cd to a directory on your drive. Then use createrepo command to make the repo files. Then you need to add to /etc/yum.repos.d. Then you can use the command ' yum install gcc '. It will install dependencies. many post on setting up local repos. Not on my normal machine to get the info I use. Out of town for a week or so.

Brian

aadilbcas 02-13-2008 08:41 AM

Quote:

Originally Posted by Brian1 (Post 3055015)
rpm -ivh gcc*.rpm next.rpm next.rpm next.rpm

i installed all the dependencies..

when i run rpm -ivh gcc+*.rpm

it says
error:failed dependencies
. libstdc++*.rpm is needed

and when i install libstdc*.rpm

it says the package is already installed...:(

any idea???

aadilbcas 02-13-2008 09:25 AM

Quote:

Originally Posted by aadilbcas (Post 3055681)
and when i install libstdc*.rpm

it says the package is already installed...:(

any idea???

fine... i installed gcc+*.rpm succesfully,

and now when i 'make install' i get the following,

Code:

make -C /lib/modules/2.6.18-53.el5/build SUBDIRS=/usr/local/src/l2-linux-v1.0.40.4/src modules
make[1]: Entering directory '/usr/src/kernels/2.6.18-53.el5-x86_64'
  CC [M]  /usr/local/src/l2-linux-v1.0.40.4/src/at_main.o
In file included from /usr/local/src/l2-linux-v1.0.40.4/src/at.h:30,
                from /usr/local/src/l2-linux-v1.0.40.4/src/at_main.c:28:
/usr/local/src/l2-linux-v1.0.40.4/src/kcompat.h:1084: error: redefinition of typedef 'irq_handler_t'
include/linux/interrupt.h:67: error: previous declaration of 'irq_handler_t' was here
make[2]: *** [/usr/local/src/l2-linux-v1.0.40.4/src/at_main.o] Error 1
make[1]: *** [_module_//usr/local/src/l2-linux-v1.0.40.4/src] Error 2
make[1]: Laving directory '/usr/src/kernels/2.6.18-53.el5-x86_64'
make: *** [default] Error 2

any idea ?
help pls..

Brian1 02-14-2008 04:32 PM

It looks like this piece of code from the at.main.c file.
Code:

            skb_reserve(skb, NET_IP_ALIGN);
            skb->dev = netdev;
                    eth_copy_and_sum(
                        skb,
                                rxd->packet,
                                rx_size, 0);
                    skb_put(skb, rx_size);
            /*
            memcpy(skb_put(skb, rx_size),
                    rxd->packet,
                    rx_size);

Found this patch through google. http://patches.ubuntu.com/by-release...3_compat.patch
But did not resolve this portion. It made an attempt but failed on hunk 2 of 1. This is the one for a call to the at.main.c source code file.

Now from what I see the call eth_copy_and_sum is no longer part of the default 2.6 kernel stream. Seems to have been dropped back in the 2.2 kernel days.

What i would do is contact the developers of the l2-linux module and get their help. Post them the info from your compiling. The links I have here and info posted in this post. Maybe someone that knows coding may be of help. This is a bit over what I know.

If you get it working please post back with the solution. PM me to let me know you resolved it. I would like to know the fix myself. Always love to learn something new.

Brian

aadilbcas 02-17-2008 12:42 AM

hi brian thanks for all the affort you took, i downloaded the drivers again from a different source and tried it worked..

now i have a file in /lib/modules/2.6.18-53.el5/kernel/drivers/net/atl2

file name is 'atl2.ko'

Quote:

Originally Posted by Brian1 (Post 3053378)

5. Install the module:

insmod atl2 <parameter>=<value>

6. Assign an IP address to the interface by entering the following, where
x is the interface number:

ifconfig ethx <IP_address>

7. Verify that the interface works. Enter the following, where <IP_address>
is the IP address for another machine on the same subnet as the interface
that is being tested:

ping <IP_address>
[/code]
Brian

in this steps
5. install module

insmod atl2 <parameter>=<value>

what am i to enter for the '<parameter>=<value>' ???????

please explain it..

aadil

Brian1 02-17-2008 11:44 AM

I would not bother with any options just do the insmod command. Now there is an error they are showing with the insmod command you must use the full name of the module and its full path if you are not in its directory.
insmod /lib/modules/2.6.18-53.el5/kernel/drivers/net/atl2/atl2.ko

Now since the module is in your /lib/modules/2.6.18-53.el5 you can use the modprobe command. It does not require path or extension as long as a new system.map was generated. Try the following command.
modprobe atl2
If it does not find the module then run this command to build a new system.map file
depmod -a

Also where did you get your current source file you used to build? I would like to give it a try and check the differences.

Brian


All times are GMT -5. The time now is 05:14 PM.