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
Next,
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
{ PCI_VDEVICE(ATTANSIC, ALX_DEV_ID_E2400),
.driver_data = ALX_DEV_QUIRK_MSI_INTX_DISABLE_BUG },
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!
Best Answer
I was having occasional drop-out issues with my Atheros AR8131 ethernet and found that an updated alx kernel driver was released by Qualcomm and works perfectly.
Note: This alx driver will not be included in the kernel however the code will eventually find its way into the current atl1c kernel driver.
alx Ethernet Driver
Remove current atl1c module and blacklist it:
rmmod atl1c
Add the line
blacklist atl1c
to/etc/modprobe.d/blacklist
Download the driver tarball and extract it.
Install by executing these commands in the extracted driver directory:
Verify module installed with:
lspci -v