diff --git a/cocotbext/eth/gmii.py b/cocotbext/eth/gmii.py index 940417c..a46526f 100644 --- a/cocotbext/eth/gmii.py +++ b/cocotbext/eth/gmii.py @@ -23,6 +23,8 @@ THE SOFTWARE. """ import logging +import struct +import zlib from collections import deque import cocotb @@ -48,9 +50,11 @@ class GmiiFrame(object): self.error = error @classmethod - def from_payload(cls, payload): + def from_payload(cls, payload, add_fcs=True): data = bytearray(ETH_PREAMBLE) data.extend(payload) + if add_fcs: + data.extend(struct.pack('