paul-chambers / aquantia

Linux driver for Aquantia AQC107. Reorganized for my own convenience, since what Aquantia provides is kinda... strange.

Home Page:https://www.aquantia.com/driver-download/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unable to build/make driver

TheLostSwede opened this issue · comments

Hi there,

So I'm a bit useless at all this stuff, but I don't think this is my fault, but maybe it is.
I've tried to install both your driver and the Aquantia one and I can't make it work.
I have a Debian 8 install (Kernel 3.16.51) and it doesn't seem to matter which directory I'm in or if I use your version or the Aquantia one, running make results in errors as per below and I have no idea how to fix it. Hopefully you can give me some pointers?

make -j4 CC=gcc -C /lib/modules/3.16.0-5-amd64/build M=/home/master/Linux-200 modules
make[1]: Entering directory '/usr/src/linux-headers-3.16.0-5-amd64'
make[1]: Entering directory `/usr/src/linux-headers-3.16.0-5-amd64'
CC [M] /home/master/Linux-200/aq_ethtool.o
CC [M] /home/master/Linux-200/hw_atl/hw_atl_b0.o
CC [M] /home/master/Linux-200/hw_atl/hw_atl_utils.o
CC [M] /home/master/Linux-200/hw_atl/hw_atl_utils_fw2x.o
/home/master/Linux-200/aq_ethtool.c: In function ‘aq_ethtool_get_rss’:
/home/master/Linux-200/aq_ethtool.c:219:12: error: ‘ETH_RSS_HASH_TOP’ undeclared (first use in this function)
hfunc = ETH_RSS_HASH_TOP; / Toeplitz */
^
/home/master/Linux-200/aq_ethtool.c:219:12: note: each undeclared identifier is reported only once for each function it appears in
/home/master/Linux-200/aq_ethtool.c: At top level:
/home/master/Linux-200/aq_ethtool.c:324:2: warning: initialization from incompatible pointer type
.get_rxfh = aq_ethtool_get_rss,
^
/home/master/Linux-200/aq_ethtool.c:324:2: warning: (near initialization for ‘aq_ethtool_ops.get_rxfh’)
/usr/src/linux-headers-3.16.0-5-common/scripts/Makefile.build:262: recipe for target '/home/master/Linux-200/aq_ethtool.o' failed
make[4]: *** [/home/master/Linux-200/aq_ethtool.o] Error 1
make[4]: *** Waiting for unfinished jobs....
/usr/src/linux-headers-3.16.0-5-common/Makefile:1355: recipe for target 'module/home/master/Linux-200' failed
make[3]: *** [module/home/master/Linux-200] Error 2
Makefile:181: recipe for target 'sub-make' failed
make[2]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-3.16.0-5-amd64'
Makefile:62: recipe for target 'all' failed
make: *** [all] Error 2

'my' version is just a sanitized version of their somewhat disorganized release. The code itself is the same.

Do you have ethtool installed? the compile errors seem to be related to a symbol related to that. If you don't, try installing that and have another go.

If that doesn't work, I'm guessing Debian 8 is a little bit too old, and since it'll be EOL'd in a few months, perhaps it'd be easier to move to something more current than to figure out why a newer driver doesn't build on an older OS? Or is there a reason you need to stay on Debian 8?

Yeah, I found the same issue with the official driver and the Asus driver as well.

Ethtool is installed and updated.

Aquantia is going to have their Linux developer have a look at it.

Unfortunately I need to use Debian 8, as OpenMediaVault currently doesn't have a stable release for Debian 9.

Did you see that Aquantia released version 2.0.0.0?