diff options
author | 2020-08-22 12:31:48 +0000 | |
---|---|---|
committer | 2020-08-22 12:31:48 +0000 | |
commit | a6029e6cd73237d40e28d1c77848c3eb03724f52 (patch) | |
tree | c73a6d64661c073e7b7d4c4e03c9a39107a06e88 /sys | |
parent | IPv4 protocol parser init fixup and a few whitespace fixes. (diff) | |
download | wireguard-openbsd-a6029e6cd73237d40e28d1c77848c3eb03724f52.tar.xz wireguard-openbsd-a6029e6cd73237d40e28d1c77848c3eb03724f52.zip |
Correct oversize rxq initialization in the classifier.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/fdt/if_mvpp.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/dev/fdt/if_mvpp.c b/sys/dev/fdt/if_mvpp.c index d15468c69f9..fadd5f32a51 100644 --- a/sys/dev/fdt/if_mvpp.c +++ b/sys/dev/fdt/if_mvpp.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_mvpp.c,v 1.25 2020/08/22 12:29:44 patrick Exp $ */ +/* $OpenBSD: if_mvpp.c,v 1.26 2020/08/22 12:31:48 patrick Exp $ */ /* * Copyright (c) 2008, 2019 Mark Kettenis <kettenis@openbsd.org> * Copyright (c) 2017, 2020 Patrick Wildt <patrick@blueri.se> @@ -4365,6 +4365,13 @@ mvpp2_cls_port_config(struct mvpp2_port *port) void mvpp2_cls_oversize_rxq_set(struct mvpp2_port *port) { + uint32_t val; + mvpp2_write(port->sc, MVPP2_CLS_OVERSIZE_RXQ_LOW_REG(port->sc_id), (port->sc_id * 32) & MVPP2_CLS_OVERSIZE_RXQ_LOW_MASK); + mvpp2_write(port->sc, MVPP2_CLS_SWFWD_P2HQ_REG(port->sc_id), + (port->sc_id * 32) >> MVPP2_CLS_OVERSIZE_RXQ_LOW_BITS); + val = mvpp2_read(port->sc, MVPP2_CLS_SWFWD_PCTRL_REG); + val &= ~MVPP2_CLS_SWFWD_PCTRL_MASK(port->sc_id); + mvpp2_write(port->sc, MVPP2_CLS_SWFWD_PCTRL_REG, val); } |