NICドライバインストール(Mac mini)

以前入れたとき(日本語版x86)は何にも問題なく動いたのだけど
64ビット版(ubuntu-12.04.2-desktop-amd64)だと、
tg3-3.124c.tar.gzを展開してmakeするとasm/system.hがないといわれてできなかった。

以下、解決法。

転載---------------------------------------------------------------------
http://ubuntuforums.org/showthread.php?t=2078320

1. At line 96 of tg3.c, simply comment out the inclusion of asm/system.h:
Code:

/* #include */

2. At line 14534 of tg3.c, I surrounded the following two lines of code ...
Code:

.get_sg = ethtool_op_get_sg,
.set_sg = ethtool_op_set_sg,

... with a preprocessor directive reflecting the fact that get_sg and set_sg were deprecated in (I believe) Linux 3.0 and removed sometime after that. Here's what that looks like:
Code:

#if (LINUX_VERSION_CODE < 0x30000)
.get_sg = ethtool_op_get_sg,
.set_sg = ethtool_op_set_sg,
#endif

3. Finally, since the API the driver tries to use to do TCP Segment Offloading went through the same deprecation and removal as get_sg and set_sg, and since I have no idea how to modify the driver to use the new API, I attempted to remove the TSO support entirely by changing line 3 of tg3_firmware.h from ...
Code:

#ifdef NETIF_F_TSO

... to ...
Code:

#ifdef XXXXNETIF_F_TSO

That resulted in a

                                                                                                                                        • -