# Agere ET1310/MSI-1036/L715 network card not recgsed.[solved]

## rprabhu

Greetings all,

I am trying to install gentoo on my new laptop, using "install-amd64-universal-2005.1-r1" cd, but unfortunately my network card is not being picked up. ifconfig and lspci both list eth0 as being unrecognized.

I've sent an email to Agere.com, regarding linux drivers as I couldn't find any. Also it is interesting to note that their press release during the launch of the product did mention a full set of driver for linux 2.2 and 2.4 versions.!!

Any help on how to get this working is much appreciated.

Cheers

rprabhuLast edited by rprabhu on Wed Mar 15, 2006 10:06 pm; edited 2 times in total

----------

## rprabhu

Greetings all,

Okay..may be ( for sure ) I am thick and hence didn't post any lspci or dmesg information which might provoke a response from the kind hearted and knowledgable members of the forum...

lspci out....

0000:04:00.0 Ethernet controller: Agere Systems: Unknown device ed00 (rev01)

     Subsytem: Micro-Strar International Co. Ltd.: Unknown device 0361

     Flags: bus master, fast devsel, latency 0, IRQ3

     Memory at ffa00000 ( 64bit, non-prefetchable)

     Capabilities: [40] Power management version 2

     Capabilities: [48] #10 [0001]

     Capabilities: [5c] Message signalled interrupts: 64 bit+ Queue-0/0 Enable-

0000:05:09:0 Network controller: RaLink Ralink RT2500 802.11 Cardbus Reference Card ( rev01 )

     Subsystem: Micro-Star International Co., Ltd.: Unknown device 6833

     Flags: bus master, slow devsel, latency 64, IRQ 5

     Memory at ffdfe000 (32 bit, non prefetchable)

     Capabilities: [40] Power management version 2

dmesg | grep eth does not yield any results at all.

ifconfig only shows the loop back interface.

modprobe'ing a number of drivers under /lib/modules/2.6.12-genotoo-r10/kernel/drivers/net doesn't seem to help.

No replies from Agere systems to email queries..of course...I'm again being stupid expecting them to be helpful... :Wink: 

Any ideas or suggestioins welcome...

Cheers

rprabhu

----------

## VanDan

Found anything yet?

----------

## rprabhu

In one word. Nope. 

Still trying though...Thought I'd try and install the base system...went up as far as compiling the kernerl...then realised that you'd need to emerge the gentoo-sources...duhh....might download the sources myself and use a usb drive...

Tried using ubuntu, no luck...currently d/ling knoppix.

This is my laptop...

http://www.msicomputer.com/NB/product_spec.asp?model=MS-1036

dmesg also shows "pcie_portdrv_probe->Dev has invalid IRQ. Check vendor BIOS" errors...so I tried using the "pci=routeirq" kernel option during boot, no luck, also tried, "noapic" and "nousb", just to try and avoid any irq conflicts...as usual no luck.

It's just amazing that Agere systems is saying they support linux in thier product brief ( Jun 2005 ), http://www.agere.com/entnet/ethernet.html

Well the search goes on...

Thankx for asking...

----------

## widan

 *rprabhu wrote:*   

> It's just amazing that Agere systems is saying they support linux in thier product brief ( Jun 2005 ), http://www.agere.com/entnet/ethernet.html

 

For some manufacturers, "supporting linux" means that they have a driver, but not necessarily that they make the driver available to the general public. For example Broadcom has Linux drivers for their wifi chips (the chips are used for example in the Linksys WRT54G router, that runs an embedded Linux), but those drivers are only available to companies that buy the chips, and not to end users. Same problem with Texas Instruments.

The product brief is probably intended for companies that may want to use the chip in their own products, and not for end users, so you need to keep that in mind when reading it.

----------

## rprabhu

Didn't know that....thankx for the clarifications.

----------

## VanDan

I *think* I've got the Broadcom wireless network card working ( ie not the topic of this thread, but the MSI 1036 that we all have has one of these wireless cards as well ). I have to go home to test it on my wireless network, but the driver is loading and giving me an eth0 device anyway  :Smile: 

----------

## rprabhu

That's great news...even I have some positive news...

The driver for the ET 1310 Giga Lan PCI-E network card has been released by the russian website..sisyphus

You can get it here http://alt.linux.kiev.ua/srpm/kernel-source-et131x/get

Hooray...Now if only I can find the time to try it out. This german site has some discussion on the topic

http://www.linux-web.de/thread/9892/1/Treiber-fuer-Agere-Systems-ET-131x-PCI-E-.html

----------

## VanDan

I just tried the above driver for the ET1310 out. Unfortunately it doesn't compile on 64bit systems  :Sad: 

I used babelfish to translate the German forum you linked to - people there are having the same trouble on x86-64 systems. Hopefully someone can fix it and post a link soon ... I'll keep watching.

----------

## rprabhu

Yes I thought so...the readme file with the driver pkg did mention that it wasn't tested with 64bit version.

Agreed. Will post any news I find here.

----------

## d_adams

 *rprabhu wrote:*   

> That's great news...even I have some positive news...
> 
> The driver for the ET 1310 Giga Lan PCI-E network card has been released by the russian website..sisyphus
> 
> You can get it here http://alt.linux.kiev.ua/srpm/kernel-source-et131x/get
> ...

 

I guess my question is, how did a russian site come up with this driver and nobody else has it available? Not even the manufacturer has a link or any info on it.  ???

I guess to get this working, I'd have to extract the rpm, and then make a new bootable cd with it on there. Btw, 2006.0 sees the card correctly, just no driver loaded for it and I don't see it in /lib/modules/2.6.15-gentoo-r5/kernel/drivers/net.

----------

## VanDan

I don't think there is a compiled module. There is source.

You could put the src on a separate cdrom, usb key, etc. Or you could whack in a PCMCIA network card that actually works ... no need to make a special boot CD with it on there.

Note, however, that it doesn't compile on 64-bit systems, which is pretty damned stooopid, considering the card is advertised as being designed for 64-bit systems.

As for why no-one has any details apart from a Russian site ... I'd say they've reverse-engineered it - but I could be wrong.

----------

## d_adams

Well, I tried running the make file after looking at some of the files in it and it fails when making the modules. It does appear to be legitimate software though.

Also found that it hasn't been approved by the kernel maintainers as of yet. It's been out since August of 2005. Don't know why, but that's what I've found so far. Maybe it's not on a lot of other systems yet? 

```
/*******************************************************************************

 * Agere Systems Inc.

 * 10/100/1000 Base-T Ethernet Driver for the ET1301 and ET131x series MACs

 *

 * Copyright © 2005 Agere Systems Inc. 

 * All rights reserved.

 *   http://www.agere.com

 *

 *------------------------------------------------------------------------------

 *

 * ET1310_address_map.h - Contains the register mapping for the ET1310

 *

 *------------------------------------------------------------------------------

 *

 * SOFTWARE LICENSE

 *

 * This software is provided subject to the following terms and conditions,

 * which you should read carefully before using the software.  Using this

 * software indicates your acceptance of these terms and conditions.  If you do

 * not agree with these terms and conditions, do not use the software.

 *

 * Copyright © 2005 Agere Systems Inc.

 * All rights reserved.

 *

 * Redistribution and use in source or binary forms, with or without

 * modifications, are permitted provided that the following conditions are met:

 *

 * . Redistributions of source code must retain the above copyright notice, this

 *    list of conditions and the following Disclaimer as comments in the code as

 *    well as in the documentation and/or other materials provided with the

 *    distribution.

 * 

 * . Redistributions in binary form must reproduce the above copyright notice,

 *    this list of conditions and the following Disclaimer in the documentation

 *    and/or other materials provided with the distribution.

 * 

 * . Neither the name of Agere Systems Inc. nor the names of the contributors

 *    may be used to endorse or promote products derived from this software

 *    without specific prior written permission.

 *

 * Disclaimer

 *

 * THIS SOFTWARE IS PROVIDED AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES,

 * INCLUDING, BUT NOT LIMITED TO, INFRINGEMENT AND THE IMPLIED WARRANTIES OF

 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  ANY

 * USE, MODIFICATION OR DISTRIBUTION OF THIS SOFTWARE IS SOLELY AT THE USERS OWN

 * RISK. IN NO EVENT SHALL AGERE SYSTEMS INC. OR CONTRIBUTORS BE LIABLE FOR ANY

 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES

 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;

 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND

 * ON ANY THEORY OF LIABILITY, INCLUDING, BUT NOT LIMITED TO, CONTRACT, STRICT 

 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT

 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH

 * DAMAGE.

 *   

 ******************************************************************************/

/******************************************************************************

 *  VERSION CONTROL INFORMATION

 ******************************************************************************

      $RCSFile: $

         $Date: 2005/08/01 19:35:10 $

     $Revision: 1.6 $

         $Name: T_20050801_v1-0-0 $

       $Author: vjs $

 *****************************************************************************/

"snipped by me"
```

----------

## Decibels

I worked on the source code and have been able to compile it on x86 and x86_64.

There are a few warnings, but all the errors are gone. 

Was also able to modprobe it successfully. I don't that have NIC on my system though

so waiting for results on someone that does.

Should be able to report back soon if works with the NIC.

Will know as soon as d_adams  LiveCD is ready.

----------

## d_adams

Currently working on compiling a 2006.0 catalyst cd. On stage 2 now, so hopefully by tomorrow I should have something that works with this. I have made the module, but am waiting to put it into the livecd to make it easier for an end result. If I get this to work, I'll host it on a ftp for a while if anyone wants it.

I can hardly wait to get Gentoo on this laptop!

----------

## d_adams

Grrr, catalyst is a little bit of a pain to work with. Last stage2 attempt failed compiling the kernel, didn't have time to finish it today. Will be working on it this weekend and will hopefully get it all finished. I'm also writing another semi-howto on catalyst, mainly so that if I have to ever do this again, I'll at least have a reference point to start from. If anybody wants to mess with this stuff, I have some files/info/how-to's hosted on googlepages. The catalyst info is incomplete as of right now though.

----------

## apu_be

 *rprabhu wrote:*   

> In one word. Nope. 
> 
> Still trying though...Thought I'd try and install the base system...went up as far as compiling the kernerl...then realised that you'd need to emerge the gentoo-sources...duhh....might download the sources myself and use a usb drive...
> 
> Tried using ubuntu, no luck...currently d/ling knoppix.
> ...

 

I bought the same notebook like yours this week (MSI L715), ofcourse with the same problems  :Sad: 

I tried to install with the 'install-amd64-minimal-2006.0.iso' disc. 

Maybe I should use the networkless installation way, because this won't be solved in a short period, I think?

----------

## d_adams

Well, I got catalyst to work finally, had lots of little things making it difficult to do. However, I am getting a "tainted kernel" and it won't insert the module correctly from the livecd. It will insert correctly on my working system, and I think it may have something to do with the livecd stripping out /usr/src/linux somewhere along the line. I've been kindly told how to add the driver into menuconfig, so I'm giving it another go today.

```
root@k8ns939 livecd # modprobe et131x

root@k8ns939 livecd # lsmod

Module                  Size  Used by

et131x                 84740  0

ds1621                  7376  0

lm92                    9296  0

eeprom                  6160  0

it87                   19684  0

hwmon_vid               2688  1 it87

i2c_isa                 4160  1 it87

nvidia               4086032  1823402942 [permanent]

```

Here's the howto on adding it to the kernel http://dadams1969.googlepages.com/et131xkernelmodule

----------

## apu_be

 *d_adams wrote:*   

> 
> 
> Here's the howto on adding it to the kernel http://dadams1969.googlepages.com/et131xkernelmodule

 

I just tried it using the information on above link.

lsmod shows:

```

Module                  Size  Used by

et131x                 84740  0

```

But still eth0 gives no anwer.

So, I rebooted, and checked dmesg, where I found following lines:

```

...

et131x: module license 'BSD' taints kernel

10/100/1000 Base-T Ethernet Driver for the ET1310, v1.0.0 08/01/2005 13:06:00 by Agere Systems, http://www.agere.com

GSI 18 sharing vector 0xC1 and IRQ 18

ACPI: PCI Interrupt 0000:04:00.0[A] -> GSI 17 (level, low) -> IRQ 193

PCI: Setting latency timer of device 0000:04:00.0 to 64

alloc_dev: Unable to allocate device.

et131x.ko:ERROR:et131x_device_alloc Alloc of net_device struct failed

et131x.ko:ERROR:et131x_pci_setup Couldn't alloc netdev struct

ACPI: PCI Interrupt for device 0000:04:00.0 disabled

...

```

Any idea what it means ?

----------

## d_adams

 *apu_be wrote:*   

>  *d_adams wrote:*   
> 
> Here's the howto on adding it to the kernel http://dadams1969.googlepages.com/et131xkernelmodule 
> 
> I just tried it using the information on above link.
> ...

 

Not yet, still working on this mess. I may have the wrong depends for the kernel, ie;

```
tristate "ET131x Agere Systems Gigabyte Ethernet support"

+    depends on PCI && EXPERIMENTAL
```

I will be trying other options to see if they work, like this one instead of the above ones.

```
depends on NET_PCI && PCI && EXPERIMENTAL
```

This one is a little bit of a pain to work with since the kernel developers haven't saw fit to include it in the kernel yet. I'm not a coder/programmer, I'm just another idiot who bought an expensive laptop that wants to run Gentoo on it.

----------

## Decibels

Hey apu_be, is the device showing up in udev: /sys/module/et131x

It doesn't on mine, but that might be because it actually don't have the device.

It should show up there. If udev isn't working with it it isn't going to work. If it

is then maybe we can fix it. Hey at least we got it to compile and modprobe. 

That's a start.  :Smile: 

d_adams, would you check on that also, plus if you get one config to work,

see if it shows up then in /sys if it hasn't before that.

Here are some options to try:

```
decibels# modinfo et131x

filename:       /lib/modules/2.6.15-gentoo-r1/kernel/drivers/net/et131x.ko

license:        BSD

description:    10/100/1000 Base-T Ethernet Driver for the ET1310, v1.0.0 08/01/2005 13:06:00 by Agere Systems, http://www.agere.com

author:         Victor Soriano (vjsoriano@agere.com)

alias:          pci:v000011C1d0000ED01sv*sd*bc*sc*i*

alias:          pci:v000011C1d0000ED00sv*sd*bc*sc*i*

depends:

vermagic:       2.6.15-gentoo-r1 gcc-3.4

parm:           et131x_nmi_disable:Disable NMI (0-2) [0] (i)

parm:           et131x_debug_flags:l

parm:           et131x_debug_level:Level of debugging desired (0-7) (i)
```

I tried something like this real quick:

```
modprobe -v et131x et131x_debug_level=5
```

and got

```
grep et131x /var/log/kern.log

Mar  5 16:17:29 decibels et131x.ko:>:et131x_init_module

Mar  5 16:17:29 decibels et131x.ko:>>:et131x_pci_register

Mar  5 16:17:29 decibels et131x.ko:TRACE:et131x_pci_register 0 device(s) found

Mar  5 16:17:29 decibels et131x.ko:<<:et131x_pci_register

Mar  5 16:17:29 decibels et131x.ko:<:et131x_init_module

```

So you could tail /var/log/kern.log and modprobe it with debug level set to 7 and see if get more info on

what the problem is, plus check if udev is picking up the module.

Also, try the modules with the option et131x_nmi_disable and see if works.

 *Quote:*   

> Explanation: Some low-level hardware problems cause the generation of a non-maskable interrupt, or NMI. The most common example is a parity error. This interrupt causes all processing to immediately cease so the error condition can be handled. Some systems, when this situation is detected, will give you the option of disabling the NMI signal and continuing on, or rebooting the machine (while others will just halt the system and force you to do a hardware reset). This error message should always be encountered with another error message before it, which states what the cause of the NMI was.
> 
> Recommendation: Address the problem by diagnosing the error message that caused the NMI.
> 
> Warning: Disabling NMI will cause the system to keep booting, ignoring the error condition. This can lead to unpredictable results and is not recommended.

 

So I wouldn't do it on the kernel boot line, but when you modprobe it.  You might just want to wait until you see if you get that error in kern.log also.  :Smile: 

----------

## apu_be

Hello,

only if I use modprobe, et131x will show up in /sys/module/

modinfo gives:

```

parm:           et131x_debug_level:Level of debugging desired (0-7)

parmtype:       et131x_debug_flags:l

parmtype:       et131x_debug_level:i

license:        BSD

description:    10/100/1000 Base-T Ethernet Driver for the ET1310, v1.0.0 08/01/2005 13:06:00 by Agere Systems, http://www.agere.com

author:         Victor Soriano (vjsoriano@agere.com)

parm:           et131x_nmi_disable:Disable NMI (0-2) [0]

parmtype:       et131x_nmi_disable:i

alias:          pci:v000011C1d0000ED01sv*sd*bc*sc*i*

alias:          pci:v000011C1d0000ED00sv*sd*bc*sc*i*

depends:        

vermagic:       2.6.15-gentoo-r5 SMP gcc-3.4

```

and following

```

modprobe -v et131x et131x_debug_level=7

```

gives (in /var/log/messages )

```

Mar  6 20:58:30 localhost et131x.ko:>>>>:et131x_pci_setup

Mar  6 20:58:30 localhost GSI 18 sharing vector 0xC1 and IRQ 18

Mar  6 20:58:30 localhost ACPI: PCI Interrupt 0000:04:00.0[A] -> GSI 17 (level, low) -> IRQ 193

Mar  6 20:58:30 localhost et131x.ko:TRACE:et131x_pci_setup Setting PCI Bus Mastering...

Mar  6 20:58:30 localhost PCI: Setting latency timer of device 0000:04:00.0 to 64

Mar  6 20:58:30 localhost et131x.ko:TRACE:et131x_pci_setup 64-bit DMA addressing supported

Mar  6 20:58:30 localhost et131x.ko:TRACE:et131x_pci_setup Allocate netdev and private adapter structs...

Mar  6 20:58:30 localhost et131x.ko:>>>>>:et131x_device_alloc

Mar  6 20:58:30 localhost alloc_dev: Unable to allocate device.

Mar  6 20:58:30 localhost et131x.ko:ERROR:et131x_device_alloc Alloc of net_device struct failed

Mar  6 20:58:30 localhost et131x.ko:<<<<<:et131x_device_alloc

Mar  6 20:58:30 localhost et131x.ko:ERROR:et131x_pci_setup Couldn't alloc netdev struct

Mar  6 20:58:30 localhost ACPI: PCI interrupt for device 0000:04:00.0 disabled

Mar  6 20:58:30 localhost et131x.ko:<<<<:et131x_pci_setup

Mar  6 20:58:30 localhost et131x.ko:<<<:et131x_pci_probe

Mar  6 20:58:30 localhost et131x.ko:TRACE:et131x_pci_register 0 device(s) found

Mar  6 20:58:30 localhost et131x.ko:<<:et131x_pci_register

Mar  6 20:58:30 localhost et131x.ko:<:et131x_init_module

```

----------

## d_adams

Because I've been having difficulty getting catalyst to do exactly what I want, I'm stopping on it for the moment. I've decided to do a stage4 dump onto the laptop just to test out the modules and patches on the actual hardware to see if it even works. I'll only be doing x86 for now, but I have to know if this is even going to work or not. If anybody with a little bit of catalyst experience wants to give me a hand, please do. I can get it to build a working livecd, but haven't been able to add the custom modules to it that I want to include.

----------

## d_adams

 Oh Yeah!!!!!!!!!!!  That's right, the module does work! x86 anyways. More to follow in a while, but it was done on vanilla-sources 2.6.16-rc5 as of 8:05 am CST today. No pretty screen (console only @ 1280x1024), but at least my network is working.

----------

## d_adams

See here for more info. http://dadams1969.googlepages.com/et131xkernelmodule

----------

## d_adams

Some updates for this one. I'm able to ssh into the laptop to get whatever I want now, so things are looking much better. Here's lspci, lsmod,  modinfo et131x, cpuinfo and emerge --info.

```
root@msi1036 / # lspci

00:00.0 Host bridge: ATI Technologies Inc ATI Radeon Xpress 200 (RS480/RS482/RX480/RX482) Chipset - Host bridge (rev 01)

00:02.0 PCI bridge: ATI Technologies Inc RS480 PCI-X Root Port

00:04.0 PCI bridge: ATI Technologies Inc Unknown device 5a36

00:05.0 PCI bridge: ATI Technologies Inc Unknown device 5a37

00:13.0 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller (rev 80)

00:13.1 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller (rev 80)

00:13.2 USB Controller: ATI Technologies Inc IXP SB400 USB2 Host Controller (rev 80)

00:14.0 SMBus: ATI Technologies Inc IXP SB400 SMBus Controller (rev 81)

00:14.1 IDE interface: ATI Technologies Inc Standard Dual Channel PCI IDE Controller ATI (rev 80)

00:14.2 Audio device: ATI Technologies Inc Unknown device 437b (rev 01)

00:14.3 ISA bridge: ATI Technologies Inc IXP SB400 PCI-ISA Bridge (rev 80)

00:14.4 PCI bridge: ATI Technologies Inc IXP SB400 PCI-PCI Bridge (rev 80)

00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration

00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map

00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller

00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control

01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility X700 (PCIE)

04:00.0 Ethernet controller: Agere Systems Unknown device ed00 (rev 01)

05:04.0 CardBus bridge: O2 Micro, Inc. OZ711MP1/MS1 MemoryCardBus Controller (rev 21)

05:04.2 Class 0805: O2 Micro, Inc. Unknown device 7120 (rev 01)

05:04.3 Bridge: O2 Micro, Inc. Unknown device 7130 (rev 01)

05:04.4 FireWire (IEEE 1394): O2 Micro, Inc. Unknown device 00f7 (rev 02)

05:09.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)

root@msi1036 / # lsmod

Module                  Size  Used by

ds1621                  7376  0

lm92                    9232  0

i2c_nforce2             6400  0

et131x                 85380  0

it87                   19812  0

hwmon_vid               2816  1 it87

i2c_isa                 4032  1 it87

root@msi1036 / # modinfo et131x

filename:       /lib/modules/2.6.16-rc5/extra/et131x.ko

author:         Victor Soriano (vjsoriano@agere.com)

description:    10/100/1000 Base-T Ethernet Driver for the ET1310, v1.0.0 08/01/2005 13:06:00 by Agere Systems, http://www.agere.com

license:        BSD

vermagic:       2.6.16-rc5 SMP preempt K7 gcc-3.3

depends:

alias:          pci:v000011C1d0000ED00sv*sd*bc*sc*i*

alias:          pci:v000011C1d0000ED01sv*sd*bc*sc*i*

parm:           et131x_nmi_disable:Disable NMI (0-2) [0] (i)

parm:           et131x_debug_flags:l

parm:           et131x_debug_level:Level of debugging desired (0-7) (i)

              

root@msi1036 / # cat /proc/cpuinfo

processor       : 0

vendor_id       : AuthenticAMD

cpu family      : 15

model           : 36

model name      : AMD Turion(tm) 64 Mobile Technology MT-37

stepping        : 2

cpu MHz         : 1990.054

cache size      : 1024 KB

fdiv_bug        : no

hlt_bug         : no

f00f_bug        : no

coma_bug        : no

fpu             : yes

fpu_exception   : yes

cpuid level     : 1

wp              : yes

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni lahf_lm ts fid vid ttp tm stc

bogomips        : 3991.10

root@msi1036 / # emerge --info

Portage 2.1_pre5-r1 (default-linux/x86/2005.1, gcc-3.3.6, glibc-2.3.5-r2, 2.6.16-rc5 i686)

=================================================================

System uname: 2.6.16-rc5 i686 AMD Turion(tm) 64 Mobile Technology MT-37

Gentoo Base System version 1.12.0_pre16

ccache version 2.3 [disabled]

dev-lang/python:     2.3.5, 2.4.2

sys-apps/sandbox:    1.2.12

sys-devel/autoconf:  2.13, 2.59-r6

sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1

sys-devel/binutils:  2.16.1

sys-devel/libtool:   1.5.22

virtual/os-headers:  2.6.11-r2

ACCEPT_KEYWORDS="x86"

AUTOCLEAN="yes"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O2 -march=athlon-xp"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control"

CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"

CXXFLAGS="-O2 -march=athlon-xp"

DISTDIR="/usr/portage/distfiles"

FEATURES="autoconfig distlocks sandbox sfperms strict"

GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="3dnow X a52 alsa apm arts avi berkdb bitmap-fonts cdparanoia cdr cdrw crypt cups dbus debug doc dri dvd dvdr dvdread eds emboss encode flash foomatic foomaticdb fortran gdbm gif gimpprint gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml hal imlib ipv6 java jpeg kde kqemu lcms* libg++ libwww live lm_sensors mad mikmod mmx mng* motif mozilla mp3 mpeg mysql ncurses nls nptl nvidia ogg oggvorbis opengl oss pam pdflib perl png ppds python qt qtaalib quicktime readline samba scanner sdl smb smp spell sse ssl svg symlink tcpd tiff truetype truetype-fonts type1-fonts unicode usb vi vorbis win32codecs wmf x86 xml2 xmms xv zeroconf zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux userland_GNU video_cards_ati video_cards_fglrx video_cards_vesa"

Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY

 
```

----------

## d_adams

 *apu_be wrote:*   

> Hello,
> 
> only if I use modprobe, et131x will show up in /sys/module/
> 
> modinfo gives:
> ...

 

I have a new patch up on http://dadams1969.googlepages.com/et131xkernelmodule if you would care to test it out. I'm assuming you are running x86_64 and it hasn't worked right yet. The new patch has been applied on both 32 bit and 64 bit systems, however, I only have 32 bit on my laptop for actually testing the hardware. It is working correctly on mine.

----------

## Decibels

We have it compiling on x86 and amd64, compiled clean on mine after I patched the drivers. 

Driver actually works on the x86!!! Nobody has tested if it actually works on amd64 yet.   :Crying or Very sad: 

So really need someone to do that!

----------

## VanDan

No go over here  :Sad: 

I can cleanly compile the module, but when I insmod it, I get:

```
et131x: module license 'BSD' taints kernel.

10/100/1000 Base-T Ethernet Driver for the ET1310, v1.0.0 08/01/2005 13:06:00 by Agere Systems, http://www.agere.com

GSI 18 sharing vector 0xC1 and IRQ 18

ACPI: PCI Interrupt 0000:04:00.0[A] -> GSI 17 (level, low) -> IRQ 18

PCI: Setting latency timer of device 0000:04:00.0 to 64

alloc_dev: Unable to allocate device.

et131x.ko:ERROR:et131x_device_alloc Alloc of net_device struct failed

et131x.ko:ERROR:et131x_pci_setup Couldn't alloc netdev struct

ACPI: PCI interrupt for device 0000:04:00.0 disabled

```

I'm on a 64-bit system. Details:

 *Quote:*   

> Portage 2.1_pre5-r4 (default-linux/amd64/2005.1, gcc-3.4.5, glibc-2.3.6-r3, 2.6.15-nitro3 x86_64)
> 
> =================================================================
> 
> System uname: 2.6.15-nitro3 x86_64 AMD Turion(tm) 64 Mobile Technology MT-40
> ...

 

Is it possible that the driver is not compatible with the nitro patchset? There will be problems if so, as I've got a resier4 root partition ( which is working fabulously, for those interested or considering flaming ).

----------

## Decibels

Thanks for trying, looks like the same thing apu_be got when he tried it. Looks like for now it will be a x86 driver only. I might be able to see if can do anything, but I don't know the driver that well. Mainly just fixed the code so it could compile. 

Can't try anything on my system cause don't have the chipset.

If I see anything, will let you know what to try. Thanks again for trying so soon.

I'll look at the code tonight, but not promising anything.

----------

## d_adams

VanDan

Have you tried make && make modules_install in the et131x directory and just put the driver in /etc/modules.autoload.d/kernel-2.6 followed by a reboot?

----------

## VanDan

d_adams:

make modules_install does nothing. I don't know why. Anyway, I put et131x.ko into /lib/modules/2.6.15-nitro3/kernel/drivers/net, and ran 'depmod -a', and then 'modprobe -v et131x'. I then rebooted, and the module loads, but I still get:

```
et131x: module license 'BSD' taints kernel.

10/100/1000 Base-T Ethernet Driver for the ET1310, v1.0.0 08/01/2005 13:06:00 by Agere Systems, http://www.agere.com

GSI 18 sharing vector 0xC1 and IRQ 18

ACPI: PCI Interrupt 0000:04:00.0[A] -> GSI 17 (level, low) -> IRQ 18

PCI: Setting latency timer of device 0000:04:00.0 to 64

alloc_dev: Unable to allocate device.

et131x.ko:ERROR:et131x_device_alloc Alloc of net_device struct failed

et131x.ko:ERROR:et131x_pci_setup Couldn't alloc netdev struct

ACPI: PCI interrupt for device 0000:04:00.0 disabled

```

Decibels

Not a problem  :Smile: 

I'm in do great hurry to get this working. I've got a PCMCIA ethernet card that works perfectly, apart from when I unplug it, and the shit hits the fan, but that might be just because I don't know how I'm supposed to go about ejecting it. I've also got an onboard wireless card working *flawlessly*  :Smile: 

----------

## d_adams

Here's some of my log file (on x86):

```
Mar  9 20:41:47 msi1036 Bridge firewalling registered

Mar  9 20:41:54 msi1036 et131x.ko:>:et131x_init_module

Mar  9 20:41:54 msi1036 10/100/1000 Base-T Ethernet Driver for the ET1310, v1.0.0 08/01/2005 13:06:00 by Agere Systems, http://www.agere.com

Mar  9 20:41:54 msi1036 et131x.ko:>>:et131x_pci_register

Mar  9 20:41:54 msi1036 et131x.ko:>>>:et131x_pci_probe

Mar  9 20:41:54 msi1036 et131x.ko:>>>>:et131x_pci_setup

Mar  9 20:41:54 msi1036 ACPI: PCI Interrupt 0000:04:00.0[A] -> GSI 17 (level, low) -> IRQ 18

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_pci_setup Setting PCI Bus Mastering...

Mar  9 20:41:54 msi1036 PCI: Setting latency timer of device 0000:04:00.0 to 64

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_pci_setup 64-bit DMA addressing supported

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_pci_setup Allocate netdev and private adapter structs...

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>:et131x_device_alloc

Mar  9 20:41:54 msi1036 et131x.ko:<<<<<:et131x_device_alloc

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_pci_setup Setting fundamental net_device info...

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_pci_setup Initialize spinlocks...

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>:et131x_config_parse

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_config_parse Default MAC Address  

Mar  9 20:41:54 msi1036 et131x.ko:<<<<<:et131x_config_parse

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>:et131x_find_adapter

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_find_adapter EEPROM Status Code - 0x0083

Mar  9 20:41:54 msi1036 et131x.ko:<<<<<:et131x_find_adapter

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_pci_setup Mapping bus-relative registers to virtual memory...

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_pci_setup Issuing soft reset...

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>:et131x_soft_reset

Mar  9 20:41:54 msi1036 et131x.ko:<<<<<:et131x_soft_reset

Mar  9 20:41:54 msi1036 et131x.ko:TRACE:et131x_pci_setup Disable device interrupts...

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>:et131x_adapter_memory_alloc

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>>:et131x_tx_dma_memory_alloc

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>>>:et131x_align_allocated_memory

Mar  9 20:41:54 msi1036 et131x.ko:<<<<<<<:et131x_align_allocated_memory

Mar  9 20:41:54 msi1036 et131x.ko:<<<<<<:et131x_tx_dma_memory_alloc

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>>:et131x_rx_dma_memory_alloc

Mar  9 20:41:54 msi1036 et131x.ko:>>>>>>>:et131x_align_allocated_memory
```

----------

## Decibels

Okay, may have found the problem, mayhaps not. I have a new patch to test out.

This has everything the previous patch does, plus the little change made to et131x_netdev.c .

There is a little issue about our timezones. So, will have it up here temporarily until d_adams gets it up on his site.

His will be the main site for this. 

But for now you can get the NEW patchs to Test amd64 out here (try both): http://webpages.charter.net/decibelshelp/et131x_new64test.patch

http://webpages.charter.net/decibelshelp/et131x_new64test2.patch

Just right click and Save As. Please apply this to the NON-patched driver source, just like before. Don't apply it to your patched code. 

Please try it out and let us know as soon as you can. Hopefully I got it.   :Very Happy: 

*Thanks, but looking at the debug output, just show what it is doing. Too bad it doesn't really show what it is doing within a little more. But at least if this next patch only gets a little further, we can see how much more it has to do before works on amd64.

----------

## apu_be

Hello, 

@Decibels: 

-I tested with et131x_new6464test.patch, but negative  :Sad: , gives the same errors like previous times.

-the link to the second patch doesn't work

I used the non-patched drivers, 

extracted it and renamed folder to et131x,

than applied your patch to it,

copied the folder et131x to /usr/src/linux/drivers/net,

and run "make && make modules_install",

added the module to /etc/modules.autoload.d/kernel-2.6,

followed by reboot.

After the reboot, the et131x is loaded, but /var/log/messages gives the known errors  :Sad: 

----------

## VanDan

Same here.

----------

## d_adams

Here's a pre-patched copy of et131x_netdev.c if you would care to try it. Just put it in the /usr/src/linux/drivers/net/et131x dir and run make again. Should give you a clean compile and hopefully load correctly.

http://dadams1969.googlepages.com/et131x_netdev.c

If that works for you, great, if not, here's the 2nd patch that the link was broken on earlier on Decibels site.

http://dadams1969.googlepages.com/new_fix64_test2.patch

Also, here's my output from make && make modules_install which should link the module from /lib/modules/kernelversion/build back to /usr/src/linux

```
root@msi1036 et131x # make && make modules_install

#@make -C /lib/modules/2.6.16-rc5/build M=/usr/src/linux-2.6.16-rc5/drivers/net/et131x modules

make[1]: Entering directory `/usr/src/linux-2.6.16-rc5'

  Building modules, stage 2.

  MODPOST

make[1]: Leaving directory `/usr/src/linux-2.6.16-rc5'

#@make -C /lib/modules/2.6.16-rc5/build M=/usr/src/linux-2.6.16-rc5/drivers/net/et131x modules_install

make[1]: Entering directory `/usr/src/linux-2.6.16-rc5'

  INSTALL /usr/src/linux-2.6.16-rc5/drivers/net/et131x/et131x.ko

make[1]: Leaving directory `/usr/src/linux-2.6.16-rc5'

```

----------

## Decibels

Sorry about that, named the 2nd patch wrong on the server. Corrected now, but d_adams has them up anyhow now.

If these don't work then it might be something before there is why it is failing. Going to have to do some studying as

to what the diff is between 32 and 64bit for ethernet drivers. 

But try the 2nd patch and unless I find something concrete, probably won't post another one.

----------

## apu_be

 *Decibels wrote:*   

> Sorry about that, named the 2nd patch wrong on the server. Corrected now, but d_adams has them up anyhow now.
> 
> If these don't work then it might be something before there is why it is failing. Going to have to do some studying as
> 
> to what the diff is between 32 and 64bit for ethernet drivers. 
> ...

 

Seems the 2nd patch is a little messed up because it causes a kernel panic here.

```

protection fault

... 

<0> kernel panic - not syncing: Aiee, killing interrupt handler!

```

----------

## Decibels

I kinda figured so, but couldn't tell from this end. Thanks.

If I do anything else it will probably see if can put more debug statements to get better info on why it isn't allocating the etherdev for 64bit system. Will see what I can do.

----------

## apu_be

OK, 

not convinced of the previous result, I tried again several times,

and got the following output from dmesg:

http://users.telenet.be/apu/dmesg.txt

to me, it seemed to be working more or less,

so I tried

```

ifconfig eth1 up 

ifconfig
```

and than followed by a kernel panic  :Sad: 

----------

## Decibels

Hmm, looks like it got lot further. I don't think the previous ones got past 'alloc_etherdev', this seemed to go a lot further

and not fail until 'netif_indicate_status Indicating Link DOWN' . 

Thanks a lot for trying it again and getting some really good output! 

It looks almost exactly like the output from the x86 that works, in most places.

----------

## Decibels

apu_be Looking at the x86 output again. It stops where yours goes on (ie checking the link status)

```
et131x.ko:TRACE:et131x_pci_setup Device MAC Address   : 00:13:d3:f0:16:a7

et131x.ko:<<<<:et131x_pci_setup

et131x.ko:<<<:et131x_pci_probe

et131x.ko:TRACE:et131x_pci_register 0 device(s) found

et131x.ko:<<:et131x_pci_register

et131x.ko:<:et131x_init_module

```

I curious as to why. I don't think that d_adams was plugged in a the time. I assume your cable was plugged in?

?? We got something else to try later.

----------

## d_adams

Have done some more testing and have gotten ahold of a newer driver version. Test patching is finished, will be uploading it soon.

Anyways, here's the output from it on mine. I snipped a lot of the stats lines from it. Also notice the version number. Old one was 1.0.0 from the russian website. New one was direct from Vic at agere systems. Still required patching to make it work correctly, even on a vanilla kernel. The response I got back from him was that it worked fine on Suse and Red Hat.

```
root@msi1036 linux # dmesg

et131x.ko:<<<<<<<:et131x_xcvr_init

et131x.ko:<<<<<<:et131x_setphy_normal

et131x.ko:<<<<<:et131x_adapter_setup

et131x.ko:TRACE:et131x_pci_setup Registering net_device...

et131x.ko:>>>>>:et131x_stats

et131x.ko:<<<<<:et131x_stats

et131x.ko:TRACE:et131x_pci_setup DEVICE FOUND

et131x.ko:TRACE:et131x_pci_setup ------------------------------

et131x.ko:TRACE:et131x_pci_setup Device Vendor ID     : 0x11c1

et131x.ko:TRACE:et131x_pci_setup Device Product ID    : 0xed00

et131x.ko:TRACE:et131x_pci_setup Device SubVendor ID  : 0x1462

et131x.ko:TRACE:et131x_pci_setup Device SubProduct ID : 0x0361

et131x.ko:TRACE:et131x_pci_setup Device on Bus #      : 4

et131x.ko:TRACE:et131x_pci_setup           Bus Name   : PCI Bus #04

et131x.ko:TRACE:et131x_pci_setup Device in Slot #     : 0

et131x.ko:TRACE:et131x_pci_setup Device Base Address  : 0x0xfe000000

et131x.ko:TRACE:et131x_pci_setup Device IRQ           : 18

et131x.ko:TRACE:et131x_pci_setup Device MAC Address   : 00:13:d3:f0:16:a7

et131x.ko:<<<<:et131x_pci_setup

et131x.ko:<<<:et131x_pci_probe

et131x.ko:TRACE:et131x_pci_register 0 device(s) found

et131x.ko:<<:et131x_pci_register

et131x.ko:<:et131x_init_module

et131x.ko:>:et131x_stats

et131x.ko:>:et131x_open

et131x.ko:TRACE:et131x_open Registering ISR...

et131x.ko:<:et131x_open

et131x.ko:>:et131x_multicast

et131x.ko:VERBOSE:et131x_multicast MULTICAST ADDR COUNT: 0

et131x.ko:VERBOSE:et131x_multicast Request: PROMISCUOUS MODE OFF

et131x.ko:VERBOSE:et131x_multicast Request: REJECT ALL MULTICAST

et131x.ko:VERBOSE:et131x_multicast NO UPDATE REQUIRED, FLAGS didn't change

et131x.ko:<:et131x_multicast

et131x.ko:>:et131x_stats

et131x.ko:<:et131x_stats

et131x.ko:>:et131x_multicast

et131x.ko:VERBOSE:et131x_multicast MULTICAST ADDR COUNT: 0

et131x.ko:VERBOSE:et131x_multicast Request: PROMISCUOUS MODE OFF

et131x.ko:VERBOSE:et131x_multicast Request: REJECT ALL MULTICAST

et131x.ko:VERBOSE:et131x_multicast NO UPDATE REQUIRED, FLAGS didn't change

et131x.ko:<:et131x_multicast

et131x.ko:>:et131x_stats

et131x.ko:<:et131x_stats

et131x.ko:>:et131x_multicast

et131x.ko:VERBOSE:et131x_multicast MULTICAST ADDR COUNT: 1

et131x.ko:VERBOSE:et131x_multicast Request: PROMISCUOUS MODE OFF

et131x.ko:VERBOSE:et131x_multicast Request: SET MULTICAST FILTER(S)

et131x.ko:VERBOSE:et131x_multicast UPDATE REQUIRED, FLAGS changed

et131x.ko:>>:et131x_set_packet_filter

et131x.ko:VERBOSE:et131x_set_packet_filter Multicast filtering ON

et131x.ko:>>>:SetupDeviceForMulticast

et131x.ko:VERBOSE:SetupDeviceForMulticast MULTICAST flag is set, MCCount: 1

et131x.ko:VERBOSE:SetupDeviceForMulticast MCList[0]: 01:00:5e:00:00:01

et131x.ko:<<<:SetupDeviceForMulticast

et131x.ko:VERBOSE:et131x_set_packet_filter Broadcast Filtering OFF

et131x.ko:<<:et131x_set_packet_filter

et131x.ko:<:et131x_multicast

et131x.ko:>:et131x_stats

et131x.ko:VERBOSE:netif_indicate_status Indicating Link DOWN

et131x.ko:>:et131x_stats

<snipped, for 200 lines or more>

et131x.ko:>:et131x_stats

et131x.ko:<:et131x_stats

root@msi1036 dadams1969 # 

root@msi1036 linux # modinfo et131x

filename:       /lib/modules/2.6.16-rc5/extra/et131x.ko

author:         Victor Soriano (vjsoriano@agere.com)

description:    10/100/1000 Base-T Ethernet Driver for the ET1310, v1.2.2 01/31/2006 15:40:00 by Agere Systems, http://www.agere.com

license:        BSD

vermagic:       2.6.16-rc5 SMP preempt K7 gcc-3.3

depends:

alias:          pci:v000011C1d0000ED00sv*sd*bc*sc*i*

alias:          pci:v000011C1d0000ED01sv*sd*bc*sc*i*

parm:           et131x_nmi_disable:Disable NMI (0-2) [0] (i)

parm:           et131x_debug_flags:l

parm:           et131x_debug_level:Level of debugging desired (0-7) (i)

root@msi1036 linux #     
```

Also, please note that I had my network cable unplugged on the last test to show it with the link as down. It appears that it may still be broken for 64 bit as of yet.

----------

## d_adams

Latest driver and patches if anyone wants to test them out. I had a problem with the x86_64 patch, but it may be because I'm running x86, so test away. Please try just the x86 patch first by itself and see if it works for 64 bit. The amd64 patch can be run separately after the inital patch is run. You can also try compiling just the driver by itself, but I had a lot of errors doing so.

Btw, this et131x driver is direct from agere systems. 

http://dadams1969.googlepages.com/et131x_20060131_v1-2-2.tar.gz

http://dadams1969.googlepages.com/new_ver_x86_3-10-06.patch

http://dadams1969.googlepages.com/new_ver_amd64_test_3-10-06.patch

----------

## apu_be

OK, finally some time to test it.

First, I tried this one (no patching):

 *d_adams wrote:*   

> 
> 
> http://dadams1969.googlepages.com/et131x_20060131_v1-2-2.tar.gz

 

But that gave me warnings and error.

Then, I used following patch:

 *d_adams wrote:*   

> 
> 
> http://dadams1969.googlepages.com/new_ver_x86_3-10-06.patch

 

RESULT: IT WORKS!

In dmesg I got the following:

```

et131x: module license 'BSD' taints kernel.

10/100/1000 Base-T Ethernet Driver for the ET1310, v1.2.2 01/31/2006 15:40:00 by Agere Systems, http://www.agere.com

GSI 18 sharing vector 0xE1 and IRQ 18

ACPI: PCI Interrupt 0000:04:00.0[A] -> GSI 17 (level, low) -> IRQ 225

PCI: Setting latency timer of device 0000:04:00.0 to 64

et131x.ko:WARNING:et131x_ioctl Unhandled IOCTL Code: 0x8b01

ADDRCONF(NETDEV_UP): eth0: link is not ready

ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

et131x.ko:WARNING:et131x_ioctl Unhandled IOCTL Code: 0x8b01

et131x.ko:WARNING:et131x_ioctl Unhandled IOCTL Code: 0x8b01

```

I did not tried this one (should I?):

 *d_adams wrote:*   

> 
> 
> http://dadams1969.googlepages.com/new_ver_amd64_test_3-10-06.patch

 

----------

## d_adams

NO!!! Stop there!! w0000000t!! If it's working and you can post in links or whatever on amd64 with that patch, then don't go any farther. The last patch was another allocation for the device, specifically for amd64, but if it's working with the x86 patch, then we may have it all solved. Just make sure you can reach the internet with  that current patched version. It shows link up, but make sure you can get online with it.

Thanks for your patience on getting this working. I love being a beta tester myself, but hadn't gotten around to actually doing the 64 bit install yet.

If you can't actually get online, give us a little bit more time. I believe Decibels is doing something with debug statements in the files and is creating another patchset.

----------

## apu_be

Yes, I can surf the internet, and post messages  :Smile:  ,

sry for not mentioning it (using Mozilla Firefox and KDE)

----------

## VanDan

It also works for me.

x86-64 system

2.6.15-nitro-something kernel

latest kernel source ( the one direct from Agere )

new_ver_x86_3-10-06.patch

I get a couple of strange looking messages:

```
et131x.ko:WARNINGS:et131x_ioctl Unhandled IOCTL Code: 0x8b01

eth1: no IPv6 routers present                            ( obviously this is OK )

APIC error on CPU): 04(40)                               ( I get this all the time anyway )

warning: many ticks lost                                 ( same thing with this message )

Your time source seems to be instable or some driver is hogging interupts    ( I also get this all the time )

rip acpi_ec_read_0xec/0x287                              ( I have no idea what this is - never seen it before )
```

But anyway it works!

Great work people  :Smile: 

----------

## Decibels

 *Quote:*   

> rip acpi_ec_read_0xec/0x287 

 

Might have something to do with the lost ticks

http://www.ussg.iu.edu/hypermail/linux/kernel/0411.2/0733.html

Anyway, I'm glad to hear this is now working for everyone on x86_64 and x86.

We're going to look into the 

```
WARNINGS:et131x_ioctl Unhandled IOCTL Code: 0x8b01
```

and see if it is really something to fix or just an warning that doesn't really mean anything.

So what do you think, keep things the way they are (original sources and patch) or patch the version 1.2.2 sources and

make a tarball out of it for people to get?

----------

## bigblk150

Hello people!

My name is Victor Soriano, and I'm the Sr. Software Engineer for Agere Systems responsible for the development and maintenance of the ET1310 Gigabit Ethernet linux device driver. One of the other users on this forum, d_adams, has been in contact with me regarding your questions/concerns with our network driver, and I just wanted to say hello.

I've read through this thread, and from what I've seen, plus some email from d_adams, it seems that the new 1.2.2 driver has addressed most of your concerns. I admittedly haven't been able to test the driver against some of the newer kernels versions, and I've never verified it myself against Gentoo (probably not the best thing to say here  :Smile:  ). Unfortunately, I'm the only Agere engineer on the Linux development and I just don't have the time to go through every configuration, combination, distribution, kernel version, etc., but I'm trying to cover as many bases as I can.

To answer some questions I saw here:

1. This driver, in it's current state, cannot be submitted to kernel.org for consideration as part of the official kernel. Due to business reasons, Agere has decided to release under the BSD License as opposed to the GPL. My understanding is that any code to be merged into the official kernel tree must be GPL.

2. Although not under Gentoo, this driver was tested against x86, x86_64 and amd64 kernel builds/CPUs.

3. This unsupported IOCTL code 0x8b01 is a standard, vendor-independent IOCTL for wireless ethernet (802.11) devices, called SIOCGIWNAME (see include/linux/wireless.h). For some reason, an application is attempting to communicate with the ET1310 with this IOCTL code, probably checking to see if I'm a wireless ethernet device. Because I am not, I return -ENOTSUPP, and the warning statement you see in the syslog:

WARNINGS:et131x_ioctl Unhandled IOCTL Code: 0x8b01

is printed by the driver to show it was an IOCTL that I didn't handle.

I hope this helps. Thanks to d_adams for contacting me and making me aware of the community's use of the driver, and thanks to all for making modifications to get things working under Gentoo. As an engineer, it's exciting to see people using something I've worked on!

As I told d_adams via email, IF time permits I hope to merge your changes into my development trunk and make a new release based on these changes; the biggest factor will be allocating time in the test lab for an "unscheduled" test run, as Agere's policy is not to make a release until it's been tested, despite this being open source.

Thanks again!

-- 

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

Victor Soriano

Senior Software Engineer

Agere Systems

Email  : vjsoriano@agere.com

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

----------

## Decibels

Hi Victor!

   Thanks for taking over for me. Since I didn't have the device, I was limited to just getting the code to compile on Gentoo.

Now we have the actual Author!

d_adams has the patch. But due to this:

 *Quote:*   

> As I told d_adams via email, IF time permits I hope to merge your changes into my development trunk and make a new release based on these changes; the biggest factor will be allocating time in the test lab for an "unscheduled" test run, as Agere's policy is not to make a release until it's been tested, despite this being open source. 

 

Maybe you might want to patch the driver source and tarball it up for your website big D__________adams, until Victor is able to actually get this accomplished.  Just an idea.

I also got a guy from Europe using Debian that is testing version 1.2.2 with my patch.  He is new to linux though, so as soon as he solves a few other issues he is having, should have another report of success on Debian.  With the patch he got a clean compile and the same IOCTL warning. So he should have it working when the other issues (with something else) are done.

**** Oh, if your still around rprabhu could you put SOLVED on the Subject line of this thread. Thanks.

----------

## VanDan

Hi people  :Smile: 

The et131x driver is working very well for me now under normal operation.

Suspending the system gives problems - the device is not accessible after the system has been resumed.

As a workaround, I simply run:

```
/etc/init.d/net.eth1 stop

rmmod et131x
```

to bring down the device and remove the driver before suspending. I then have to reload the driver and restart the device when I resume.

It's probably pretty low on people's list of priorities, and that's understandable, but anyway, just so you know ... it doesn't support suspending.

I'm using the vanilla kernel suspend-to-disk ( suspend 2 doesn't compile for me ).

Thankyou everyone who worked / works on the driver  :Smile: 

----------

## d_adams

Just an update for people who are interested. I'm still working on a livecd or at least a how-to for those who want to do it themselves. I ran into a problem I thought I'd share with all. On a stage3 install in a chroot environment, for some reason gcc gets upgraded. I had already emerged gentoo-sources and was trying to modprobe the driver and it was giving me an error about invalid module format. The kernel sources and the driver must be compiled against the same gcc version. This one threw me for a loop for about 3 hours or so. Made me pull out small tufts of hair for a bit anyways. Now my wife hates me  :Smile: 

just kidding!

Anywho, the gcc version must match for this to work correctly. I haven't actually had time to fix it yet on this install, but I know what I need to do now.

So, I have to rebuild my entire toolchain and update everything to the 2006.0 profile. Man I hope this doesn't break my system.

----------

## d_adams

Got a working livecd for anyone who wants it. Please pm me for ftp access. It's too large for me to host on google (227.2 mb) but I can serve it up via ftp. It's ugly, I used linux-live scripts to make it and it's still got a slax boot screen, but it works. Resolution is set at 1680x1050 for console, so the text is pretty small, but it's legible for me, so I'm happy with it. It does not shut down correctly (halts on loopback device) but the wired network runs out of the box with it.

You need to unmount any devices it automounts (mine did hda1 through hda4) and then mkdir /mnt/gentoo followed by mount /dev/hdaX  /mnt/gentoo and pick up on the handbook from there. It's x86 only. I have tested downloading with links, so it's verified as working. I'm currently installing a fresh copy of gentoo on it now, so it's all good to go.

If you do use it, make sure to read the readme for the iso.

----------

## thiefy

I bought a Rosewill RC-401 NIC (et1310 chipset), unwittingly subjecting myself to a series of hoops (in the form of patches, incompatible kernel versions, and deprecated kernel macros  :Rolling Eyes:  ) to jump through before I got it working with the et131x driver.

I found this thread and had actually gotten most of the way through porting the source from dadams' googlepages page to work with kernel 2.6.21.6 (the INIT_WORK/container_of problem was a b**ch for a kernel-source newbie like myself). Then I stumbled upon the version 1.2.3 package on sourceforge. A simple untar, make && make_install was all I needed with that package -- no patches or nothin'. If you're getting as frustrated with juggling patches (and are using a post 2.6.20 kernel -- haven't checked if 1.2.3 works with pre 2.6.20) as I was, do yourself a favor and grab the latest et131x package from:

http://sourceforge.net/projects/et131x/

*** Version 1.2.3 works perfectly (at least so far  :Wink:  ) on amd64 ***

dadams: a link in big, red font at the top of your googlepages et131x page to the sourceforge project would be a great addition. (A general cleanup/update would be fantastic too, if you have the time.  :Smile:  )

----------

## blackcell

Anyone have success compiling latest driver et131x-1.2.3-1 on 2.6.23-r3 ? 

Make fails for me.

```

#@make -C /lib/modules/2.6.23-gentoo-r3/build M=/home/src/et131x modules

make[1]: Entering directory `/usr/src/linux-2.6.23-gentoo-r3'

  CC [M]  /home/src/et131x/et131x_main.o

  CC [M]  /home/src/et131x/et131x_initpci.o

  CC [M]  /home/src/et131x/et131x_isr.o

  CC [M]  /home/src/et131x/et131x_netdev.o

  CC [M]  /home/src/et131x/et131x_supp.o

  CC [M]  /home/src/et131x/et131x_config.o

  CC [M]  /home/src/et131x/et131x_debug.o

  CC [M]  /home/src/et131x/ET1310_jagcore.o

  CC [M]  /home/src/et131x/ET1310_tx.o

  CC [M]  /home/src/et131x/ET1310_rx.o

/home/src/et131x/ET1310_rx.c: In function ‘et131x_rx_dma_memory_alloc’:

/home/src/et131x/ET1310_rx.c:536: error: too many arguments to function ‘kmem_cache_create’

/home/src/et131x/ET1310_rx.c: In function ‘nic_rx_pkts’:

/home/src/et131x/ET1310_rx.c:1670: warning: unused variable ‘vlan_tag’

make[2]: *** [/home/src/et131x/ET1310_rx.o] Error 1

make[1]: *** [_module_/home/src/et131x] Error 2

make[1]: Leaving directory `/usr/src/linux-2.6.23-gentoo-r3'

make: *** [modules] Error 2

```

Emerge info:

Portage 2.1.3.19 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.23-gentoo-r3 i686)

=================================================================

System uname: 2.6.23-gentoo-r3 i686 Intel(R) Pentium(R) D CPU 2.80GHz

Timestamp of tree: Wed, 26 Dec 2007 23:00:01 +0000

app-shells/bash:     3.2_p17

dev-lang/python:     2.4.4-r6

dev-python/pycrypto: 2.0.1-r6

sys-apps/baselayout: 1.12.10-r5

sys-apps/sandbox:    1.2.18.1-r2

sys-devel/autoconf:  2.13, 2.61-r1

sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10

sys-devel/binutils:  2.18-r1

sys-devel/gcc-config: 1.3.16

sys-devel/libtool:   1.5.24

virtual/os-headers:  2.6.23-r2

ACCEPT_KEYWORDS="x86"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-march=pentium4 -O3 -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc"

CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/udev/rules.d"

CXXFLAGS="-march=pentium4 -O3 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"

GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"

LANG="en_US.UTF-8"

MAKEOPTS="-j2"

PKGDIR="/usr/portage/packages"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/usr/local/portage"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="X acl acpi berkdb bitmap-fonts cli cracklib crypt ctype cups dba dbus dga dri fortran gd gdbm gif gpm gtk hal iconv imlib ipv6 isdnlog jpeg lcms midi mmx mudflap ncurses nls nptl nptlonly opengl openmp pam pcap pcre perl png pppd python readline reflection samba session spl sse sse2 ssl startup-notification tcpd tiff truetype truetype-fonts type1-fonts unicode x86 xml xml2 xorg xscreensaver xsl zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="fglrx radeon"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

----------

## zhushazang

Just upgrading information:

The driver already in stagging drivers on kernel-2.6.37.

Att

----------

