diff options
author | Chris Packham <judge.packham@gmail.com> | 2018-11-26 21:00:28 +1300 |
---|---|---|
committer | Joe Hershberger <joe.hershberger@ni.com> | 2019-01-24 11:35:29 -0600 |
commit | 1a4af5c562fdb9f5a884a53f136f2b2075ffd1d8 (patch) | |
tree | 930fb7f2c560b83bfc5a78b5f10a2eb2143570c1 /net | |
parent | e57c9fdb042741e4049661074c25e7b7ff8a68cc (diff) | |
download | u-boot-1a4af5c562fdb9f5a884a53f136f2b2075ffd1d8.tar.gz |
net: move ether_crc to tsec driver
ether_crc was added to the core net code in commit 53a5c424bf86
("multicast tftp: RFC2090") so that other drivers could use it. However
the only current user of it is tsec.c so move it there.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/eth_legacy.c | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/net/eth_legacy.c b/net/eth_legacy.c index 2a9caa3509..d2e16b8fa3 100644 --- a/net/eth_legacy.c +++ b/net/eth_legacy.c @@ -310,30 +310,6 @@ int eth_mcast_join(struct in_addr mcast_ip, int join) return eth_current->mcast(eth_current, mcast_mac, join); } -/* the 'way' for ethernet-CRC-32. Spliced in from Linux lib/crc32.c - * and this is the ethernet-crc method needed for TSEC -- and perhaps - * some other adapter -- hash tables - */ -#define CRCPOLY_LE 0xedb88320 -u32 ether_crc(size_t len, unsigned char const *p) -{ - int i; - u32 crc; - crc = ~0; - while (len--) { - crc ^= *p++; - for (i = 0; i < 8; i++) - crc = (crc >> 1) ^ ((crc & 1) ? CRCPOLY_LE : 0); - } - /* an reverse the bits, cuz of way they arrive -- last-first */ - crc = (crc >> 16) | (crc << 16); - crc = (crc >> 8 & 0x00ff00ff) | (crc << 8 & 0xff00ff00); - crc = (crc >> 4 & 0x0f0f0f0f) | (crc << 4 & 0xf0f0f0f0); - crc = (crc >> 2 & 0x33333333) | (crc << 2 & 0xcccccccc); - crc = (crc >> 1 & 0x55555555) | (crc << 1 & 0xaaaaaaaa); - return crc; -} - #endif |