On 18 September 2017 at 20:50, Andrey Smirnov <andrew.smir...@gmail.com> wrote: > Frame truncation length, TRUNC_FL, is determined by the contents of > ENET_FTRL register, so convert the code to use it instead of a > hardcoded constant. > > Cc: Peter Maydell <peter.mayd...@linaro.org> > Cc: Jason Wang <jasow...@redhat.com> > Cc: qemu-devel@nongnu.org > Cc: qemu-...@nongnu.org > Cc: yurov...@gmail.com > Signed-off-by: Andrey Smirnov <andrew.smir...@gmail.com> > --- > hw/net/imx_fec.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/hw/net/imx_fec.c b/hw/net/imx_fec.c > index 767402909d..989c11be5f 100644 > --- a/hw/net/imx_fec.c > +++ b/hw/net/imx_fec.c > @@ -1050,8 +1050,8 @@ static ssize_t imx_enet_receive(NetClientState *nc, > const uint8_t *buf, > size += 4; > > /* Huge frames are truncted. */ > - if (size > ENET_MAX_FRAME_SIZE) { > - size = ENET_MAX_FRAME_SIZE; > + if (size > s->regs[ENET_FTRL]) { > + size = s->regs[ENET_FTRL]; > flags |= ENET_BD_TR | ENET_BD_LG; > }
PS: since you're editing this bit of code anyway, can you fix the typo in the comment in passing: should be "truncated". thanks -- PMM