Atheros AR8131 and Linux

May 26, 2010

A while back I picked up an ECS 945GCD-M motherboard to replace my dead VIA board that was running my RAID server. The board is pretty nice, sitting there completely silent, running 64-bit Ubuntu and packing far more power than the board it was replacing. But it has one glaring problem; the network card on the thing didn't work out of the box in Linux. I had been running a cheap USB network card I had laying around, but it was slow and I hated that I couldn't get it working. So, I set out to make the onboard Atheros AR8131M chipset work.

Google will give you a plethora of guides for compiling the drivers (this one is probably the best), but I just couldn't get things to load. It was also never clear what version of the drivers I should be trying to run. Most tutorials made reference to 1.0.0.9, some to 1.0.0.10, but the current version (at the time of this writing) is 1.0.1.9. In the end, though, that's the version I did manage to get working. Here's how I did it:

Once you're in there, it's time to start that terminal magic! One note; if you've already added another network card to your machine, the Atheros card may be eth1, not eth0. This was the case for me, and I'll treat all the instructions here as though that's the case for you too. If it's not, just change eth1 to eth0.

make && sudo make install
sudo modprobe atl1e
sudo ifconfig eth1 up
sudo dhclient eth1

UPDATE: If you're getting an error saying missing autoconf.h, try following the instructons from this post. It's kind of a dirty hack, but it works.

At this point, the machine will try to assign an IP address for the card. This may or may not work; for me, it did not. To get mine working, I simply restarted the networking init script. Before that though, let's add the following to /etc/network/interfaces

# The secondary network interface
auto eth1
iface eth1 inet dhcp

And lastly, restart the network on the machine (you CAN reboot, but there's no need) via sudo /etc/init.d/networking restart.

At this point, you should have your network card up and running with an IP address assigned by your DHCP server or router. If not, keep hunting I guess, but you should at least be very close!

See all 65 posts