Ubuntu – ny way to install Atheros e2400 drivers


I have a new motherboard: MSI Z170A GAMING M5. This motherboard has an Atheros killer e2400 Ethernet controller. When I do lspci -nn, I get:

03.00.0 Ethernet controller [0200]: Qualcomm Atheros Device [1969:e0a1] (rev 10)

Google didn't seem to know the answer. Only a similar unsolved problem on the openSUSE forum.

Best Answer

I am posting this from my Skylake MSI Z170A GAMING M5 build using my Killer E2400 on Ubuntu Gnome! Below are the (more or less) simple steps I used to get it working.

First we'll follow some instructions from Ubuntu

sudo apt-get build-dep linux-image-$(uname -r)
sudo apt-get install git
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-vivid.git

That git URL is for 15.04 Vivid Vervet. You would replace vivid with your release codename. That last step can take a little while, so relax and bask in the knowledge that your E2400 will soon be working.

Once that is finished, we'll modify the alx driver to include our E2400 (feel free to use your text editor of choice)

cd ubuntu-vivid/drivers/net/ethernet/atheros/alx/
sudo -H gedit reg.h

Find the line defining ALX_DEV_ID_E2200 (you can just search for E2200), and add this below it

#define ALX_DEV_ID_E2400                0xe0a1


sudo -H gedit main.c

Again, find E2200, and after the lines { PCI_VDEVICE(ATTANSIC, ALX_DEV_ID_E2200), .driver_data = ALX_DEV_QUIRK_MSI_INTX_DISABLE_BUG }, add


Now, all that's left is to make and install the drivers

make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
sudo make -C /lib/modules/$(uname -r)/build M=$(pwd) modules_install
sudo modprobe -r alx
sudo depmod
sudo modprobe -v alx

Note: You after executing the last line, you should see the module load from ...extra/alx.ko If you do not, you may need to rename the alx.ko that it did find to alx.ko.bak or something of the sort, and run the last three commands again.

Your E2400 should now appear for your networking enjoyment!

Related Question