]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/9/pc/ether82563.c
devether: mux bridges, portable netconsole
[plan9front.git] / sys / src / 9 / pc / ether82563.c
index 29d86f24c9799c4cbc6f1ec190fae32d7f5d09e4..1fa71c6f600f06cb0f10cafd23d1d7d8b8951895 100644 (file)
@@ -11,8 +11,7 @@
 #include "io.h"
 #include "../port/error.h"
 #include "../port/netif.h"
-
-#include "etherif.h"
+#include "../port/etherif.h"
 
 /*
  * note: the 82575, 82576 and 82580 are operated using registers aliased
@@ -494,7 +493,7 @@ static Ctlrtype cttab[Nctlrtype] = {
 [i210]         "i210",         9728,   F75|Fnofct|Fert,
 [i217]         "i217",         9728,   Fload|Fnofct|Fert|Fbadcsum,
 [i218]         "i218",         9728,   Fload|Fert|F79phy|Fnofct|Fbadcsum,
-[i219]         "i219",         9728,   Fload|Fert|F79phy|Fnofct,
+[i219]         "i219",         9728,   Fload|Fert|F79phy|Fnofct|Fbadcsum,
 [i350]         "i350",         9728,   F75|F79phy|Fnofct,
 };
 
@@ -1063,7 +1062,7 @@ i82563rproc(void *arg)
                                        bp->checksum = rd->checksum;
                                        bp->flag |= Bpktck;
                                }
-                               etheriq(edev, bp, 1);
+                               etheriq(edev, bp);
                        } else
                                freeb(bp);
                        ctlr->rb[rdh] = nil;
@@ -2105,7 +2104,6 @@ pnp(Ether *edev, int type)
         */
        edev->attach = i82563attach;
 //     edev->transmit = i82563transmit;
-       edev->interrupt = i82563interrupt;
        edev->ifstat = i82563ifstat;
        edev->ctl = i82563ctl;
 
@@ -2114,6 +2112,8 @@ pnp(Ether *edev, int type)
        edev->shutdown = i82563shutdown;
        edev->multicast = i82563multicast;
 
+       intrenable(edev->irq, i82563interrupt, edev, edev->tbdf, edev->name);
+
        return 0;
 }