[Qemu-devel] [PATCHv2 0/5] net: introduce common net_crc32() and net_crc32_le() functions

Mark Cave-Ayland posted 5 patches 6 years, 3 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20171205081744.6563-1-mark.cave-ayland@ilande.co.uk
Test checkpatch passed
Test docker passed
Test ppc passed
Test s390x passed
hw/net/eepro100.c | 19 +------------------
hw/net/pcnet.c    | 16 +---------------
hw/net/sunhme.c   | 25 +------------------------
include/net/net.h |  5 ++++-
net/net.c         | 38 +++++++++++++++++++++++++++++++++-----
5 files changed, 40 insertions(+), 63 deletions(-)
[Qemu-devel] [PATCHv2 0/5] net: introduce common net_crc32() and net_crc32_le() functions
Posted by Mark Cave-Ayland 6 years, 3 months ago
Whilst trying to debug a CRC32 endian issue for NIC multicast hash lookups, it
struck me that it would make sense to have a common set of standard ethernet
CRC32 functions (both little and big endian variants) in net.c.

The first two patches introduce the relevant functions while the last 3 patches
switch the pcnet, eepro100 and sunhme drivers over to use them, allowing us to remove
their private implementations.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>

v2:
- Add sumhme net_crc32_le() conversion


Mark Cave-Ayland (5):
  net: move CRC32 calculation from compute_mcast_idx() into its own
    net_crc32() function
  net: introduce net_crc32_le() function
  pcnet: switch lnc_mchash() over to use net_crc32_le()
  eepro100: switch e100_compute_mcast_idx() over to use net_crc32()
  sunhme: switch sunhme_receive() over to use net_crc32_le()

 hw/net/eepro100.c | 19 +------------------
 hw/net/pcnet.c    | 16 +---------------
 hw/net/sunhme.c   | 25 +------------------------
 include/net/net.h |  5 ++++-
 net/net.c         | 38 +++++++++++++++++++++++++++++++++-----
 5 files changed, 40 insertions(+), 63 deletions(-)

-- 
2.11.0