diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2015-07-28 03:30:21 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2015-07-28 03:30:21 +0200 |
commit | 311a99e23b2f1adcf01a91db3e551dc1dda9f61a (patch) | |
tree | 0d72390435f58cdbc47029d303e84c4a45d0c9c3 /sys/src | |
parent | b506c6489bfcb2dcaa8a99b8f1f574688b3cffc5 (diff) |
ether79c970: set mbps for proper queue sizes, assume gigabit ethernet for vmware
Diffstat (limited to 'sys/src')
-rw-r--r-- | sys/src/9/pc/ether79c970.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/src/9/pc/ether79c970.c b/sys/src/9/pc/ether79c970.c index bb1741201..28698ec88 100644 --- a/sys/src/9/pc/ether79c970.c +++ b/sys/src/9/pc/ether79c970.c @@ -571,7 +571,10 @@ reset(Ether* ether) switch(x&0xFFFFFFF){ case 0x2420003: /* PCnet/PCI 79C970 */ case 0x2621003: /* PCnet/PCI II 79C970A */ + ether->mbps = 10; + break; case 0x2625003: /* PCnet-FAST III 79C973 */ + ether->mbps = 100; break; default: print("#l%d: unknown PCnet card version 0x%.7ux\n", @@ -614,6 +617,15 @@ reset(Ether* ether) ether->ea[5] = x>>8; } + /* VMware */ + x = ether->ea[0]<<16 | ether->ea[1]<<8 | ether->ea[2]; + switch(x){ + case 0x0569: + case 0x0C29: + case 0x5056: + ether->mbps = 1000; + } + /* * Start to fill in the initialisation block * (must be DWORD aligned). |