diff options
| author | cinap_lenrek <cinap_lenrek@felloff.net> | 2019-01-12 15:35:50 +0100 |
|---|---|---|
| committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2019-01-12 15:35:50 +0100 |
| commit | 9ba89d63ef8804bcadb21702ad691c829bcd6f22 (patch) | |
| tree | 5b07132a2fc65032c6d881a62842c508a52a533a | |
| parent | 9f755671fb6f8250da9c16a9abebbf975b8bc571 (diff) | |
| parent | 53275c70457ff396d52e75d953b8120618c904d1 (diff) | |
| download | plan9front-9ba89d63ef8804bcadb21702ad691c829bcd6f22.tar.xz | |
merge
| -rw-r--r-- | sys/src/9/pc/ether82563.c | 10 | ||||
| -rw-r--r-- | sys/src/9/pc/ether82598.c | 8 | ||||
| -rw-r--r-- | sys/src/9/pc/etherx550.c | 8 |
3 files changed, 12 insertions, 14 deletions
diff --git a/sys/src/9/pc/ether82563.c b/sys/src/9/pc/ether82563.c index 44789cd84..fb90a8738 100644 --- a/sys/src/9/pc/ether82563.c +++ b/sys/src/9/pc/ether82563.c @@ -512,7 +512,7 @@ struct Ctlr { void *alloc; /* receive/transmit descriptors */ int nrd; int ntd; - uint rbsz; + int rbsz; u32int *nic; Lock imlock; @@ -942,8 +942,6 @@ i82563rxinit(Ctlr *ctlr) csr32w(ctlr, Rctl, Dpf|Bsize2048|Bam|RdtmsHALF); else{ i = ctlr->rbsz / 1024; - if(ctlr->rbsz % 1024) - i++; if(cttab[ctlr->type].flag & F75){ csr32w(ctlr, Rctl, Lpe|Dpf|Bsize2048|Bam|RdtmsHALF|Secrc); if(ctlr->type != i82575) @@ -1098,7 +1096,7 @@ phyread(Ctlr *c, int phyno, int reg) microdelay(1); } if((phy & (MDIe|MDIready)) != MDIready){ - print("%s: phy %d wedged %.8ux\n", cttab[c->type].name, phyno, phy); + print("%s: phy %d wedged %.8ux\n", cname(c), phyno, phy); return ~0; } return phy & 0xffff; @@ -2032,7 +2030,7 @@ i82563pci(void) } ctlr->type = type; ctlr->pcidev = p; - ctlr->rbsz = cttab[type].mtu; + ctlr->rbsz = ROUND(cttab[type].mtu, 1024); ctlr->port = p->mem[0].bar & ~0x0F; if(i82563ctlrhead != nil) i82563ctlrtail->next = ctlr; @@ -2098,7 +2096,7 @@ pnp(Ether *edev, int type) edev->irq = ctlr->pcidev->intl; edev->tbdf = ctlr->pcidev->tbdf; edev->mbps = 1000; - edev->maxmtu = ctlr->rbsz; + edev->maxmtu = cttab[ctlr->type].mtu; memmove(edev->ea, ctlr->ra, Eaddrlen); /* diff --git a/sys/src/9/pc/ether82598.c b/sys/src/9/pc/ether82598.c index 76e7f8546..0c60c3afb 100644 --- a/sys/src/9/pc/ether82598.c +++ b/sys/src/9/pc/ether82598.c @@ -305,7 +305,7 @@ typedef struct { /* tweakable paramaters */ enum { - Rbsz = 12*1024, + Mtu = 12*1024, Nrd = 256, Ntd = 256, Nrb = 256, @@ -500,7 +500,7 @@ rxinit(Ctlr *c) c->reg[Fctrl] |= Bam; c->reg[Rxcsum] |= Ipcs; - c->reg[Srrctl] = (c->rbsz + 1023)/1024; + c->reg[Srrctl] = c->rbsz / 1024; c->reg[Mhadd] = c->rbsz << 16; c->reg[Hlreg0] |= Jumboen; @@ -902,7 +902,7 @@ scan(void) c->io = io; c->reg = (u32int*)mem; c->regmsi = (u32int*)memmsi; - c->rbsz = Rbsz; + c->rbsz = ROUND(Mtu, 1024); if(reset(c)){ print("i82598: can't reset\n"); free(c); @@ -948,7 +948,7 @@ pnp(Ether *e) e->irq = c->p->intl; e->tbdf = c->p->tbdf; e->mbps = 10000; - e->maxmtu = c->rbsz; + e->maxmtu = Mtu; e->arg = e; e->attach = attach; diff --git a/sys/src/9/pc/etherx550.c b/sys/src/9/pc/etherx550.c index 02fda287c..bda9a2662 100644 --- a/sys/src/9/pc/etherx550.c +++ b/sys/src/9/pc/etherx550.c @@ -267,7 +267,7 @@ typedef struct { /* tweakable paramaters */ enum { - Rbsz = 12*1024, + Mtu = 12*1024, Nrd = 256, Ntd = 256, Nrb = 256, @@ -467,7 +467,7 @@ rxinit(Ctlr *c) c->reg[Fctrl] |= Bam; c->reg[Rxcsum] |= Ippcse; - c->reg[Srrctl] = (c->rbsz + 1023)/1024; + c->reg[Srrctl] = c->rbsz / 1024; c->reg[Maxfrs] = c->rbsz << 16; c->reg[Hlreg0] |= Jumboen; @@ -852,7 +852,7 @@ scan(void) c->io = io; c->reg = (u32int*)mem; c->regmsi = (u32int*)memmsi; - c->rbsz = Rbsz; + c->rbsz = ROUND(Mtu, 1024); if(reset(c)){ print("iX550: can't reset\n"); free(c); @@ -898,7 +898,7 @@ pnp(Ether *e) e->irq = c->p->intl; e->tbdf = c->p->tbdf; e->mbps = 10000; - e->maxmtu = c->rbsz; + e->maxmtu = Mtu; e->arg = e; e->attach = attach; |
