Compare commits

...

5 Commits

Author SHA1 Message Date
466b350538 octeon: fix pause flow control for lbk/sdp devices
Pause frame flow control is not supported for LBK (Loopback) and
SDP (System DPI Packet Interface Unit) devices.
This patch skips the pause flow configuration for these devices.

Type: fix
Fixes: 53239b4

Signed-off-by: Alok Mishra <almishra@marvell.com>
Change-Id: I3096fcef9df4ad59d64bfabb83f91f13813128a8
(cherry picked from commit d8022139eb)
2024-10-04 12:43:04 +00:00
d8d09a9e8a octeon: enable h/w vlan tagging support
This patch enables h/w vlan tagging by setting MAX_VTAG_INS
field in NIX_AF_SMQ_CFG register.
This is required to configure VLAN tag insertion
by the hardware for egress packets

Type: feature

Signed-off-by: Alok Mishra <almishra@marvell.com>
Change-Id: Ifcdf9c1e5b0b8ddc27cabab597ae91780ceca095
(cherry picked from commit e07c5fe467)
2024-10-04 12:42:25 +00:00
4a43f69ce4 vppinfra: exclude clib_dt_node_add_child on FreeBSD
clib_dt_read_from_sysfs is the only user of clib_dt_node_add_child, on
FreeBSD this causes a build failure due to an unused function. Place
clib_dt_node_add_child behind an include guard for linux only.

Type: fix
Change-Id: I9641ffd10d9d15e1e552f570cd386211d3b4ab39
Signed-off-by: Tom Jones <thj@freebsd.org>
(cherry picked from commit 33fec83487)
2024-09-26 13:03:21 +00:00
45bd5786b1 dpdk: Enable dpdk build on FreeBSD
Type: improvement
Change-Id: If897f3bdfc131f8d7c01718057b54087eff02d7a
Signed-off-by: Tom Jones <thj@freebsd.org>
(cherry picked from commit 70522a1dc2)
2024-09-26 10:41:23 +00:00
b91e15387d misc: Initial changes for stable/2410 branch
Type: docs
Change-Id: I08effaf1b16c2372b4883cf9c9cc5c4a441efe37
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2024-09-25 12:18:19 +02:00
5 changed files with 13 additions and 7 deletions

View File

@ -2,3 +2,4 @@
host=gerrit.fd.io host=gerrit.fd.io
port=29418 port=29418
project=vpp project=vpp
defaultbranch=stable/2410

View File

@ -49,12 +49,12 @@ AARCH64=$(filter aarch64,$(shell uname -m))
include packages.mk include packages.mk
include packages/ipsec-mb.mk include packages/ipsec-mb.mk
include packages/quicly.mk include packages/quicly.mk
include packages/dpdk.mk
ifneq ($(shell uname), FreeBSD) ifneq ($(shell uname), FreeBSD)
include packages/rdma-core.mk include packages/rdma-core.mk
include packages/dpdk.mk
include packages/xdp-tools.mk include packages/xdp-tools.mk
include packages/octeon-roc.mk include packages/octeon-roc.mk
endif # FreeBSD endif # ! FreeBSD
.PHONY: clean .PHONY: clean
clean: clean:
@ -62,14 +62,14 @@ clean:
.PHONY: install .PHONY: install
ifeq ($(shell uname), FreeBSD) ifeq ($(shell uname), FreeBSD)
install: $(if $(ARCH_X86_64), ipsec-mb-install) quicly-install install: $(if $(ARCH_X86_64), ipsec-mb-install) dpdk-install quicly-install
else else
install: $(if $(ARCH_X86_64), ipsec-mb-install) dpdk-install rdma-core-install quicly-install xdp-tools-install $(if $(AARCH64), octeon-roc-install) install: $(if $(ARCH_X86_64), ipsec-mb-install) dpdk-install rdma-core-install quicly-install xdp-tools-install $(if $(AARCH64), octeon-roc-install)
endif # FreeBSD endif # FreeBSD
.PHONY: config .PHONY: config
ifeq ($(shell uname), FreeBSD) ifeq ($(shell uname), FreeBSD)
config: $(if $(ARCH_X86_64), ipsec-mb-config) quicly-build config: $(if $(ARCH_X86_64), ipsec-mb-config) dpdk-config quicly-build
else else
config: $(if $(ARCH_X86_64), ipsec-mb-config) dpdk-config rdma-core-config quicly-build config: $(if $(ARCH_X86_64), ipsec-mb-config) dpdk-config rdma-core-config quicly-build
endif # FreeBSD endif # FreeBSD

View File

@ -110,6 +110,7 @@ oct_init_nix (vlib_main_t *vm, vnet_dev_t *dev)
.reta_sz = ROC_NIX_RSS_RETA_SZ_256, .reta_sz = ROC_NIX_RSS_RETA_SZ_256,
.max_sqb_count = 512, .max_sqb_count = 512,
.pci_dev = &cd->plt_pci_dev, .pci_dev = &cd->plt_pci_dev,
.hw_vlan_ins = true,
}; };
if ((rrv = roc_nix_dev_init (cd->nix))) if ((rrv = roc_nix_dev_init (cd->nix)))

View File

@ -64,8 +64,13 @@ oct_port_pause_flow_control_init (vlib_main_t *vm, vnet_dev_port_t *port)
struct roc_nix_rq *rq; struct roc_nix_rq *rq;
int rrv; int rrv;
/* pause flow control is not supported on SDP/LBK devices */
if (roc_nix_is_sdp (nix) || roc_nix_is_lbk (nix)) if (roc_nix_is_sdp (nix) || roc_nix_is_lbk (nix))
return VNET_DEV_ERR_UNSUPPORTED_DEVICE; {
log_notice (dev,
"pause flow control is not supported on SDP/LBK devices");
return VNET_DEV_OK;
}
fc_cfg.type = ROC_NIX_FC_RXCHAN_CFG; fc_cfg.type = ROC_NIX_FC_RXCHAN_CFG;
fc_cfg.rxchan_cfg.enable = true; fc_cfg.rxchan_cfg.enable = true;

View File

@ -11,8 +11,6 @@
#include <fcntl.h> #include <fcntl.h>
#include <dirent.h> #include <dirent.h>
#endif
static_always_inline clib_dt_node_t * static_always_inline clib_dt_node_t *
clib_dt_node_add_child (clib_dt_main_t *dm, clib_dt_node_t *n, char *name) clib_dt_node_add_child (clib_dt_main_t *dm, clib_dt_node_t *n, char *name)
{ {
@ -42,6 +40,7 @@ clib_dt_node_add_child (clib_dt_main_t *dm, clib_dt_node_t *n, char *name)
return cn; return cn;
} }
#endif
void void
clib_dt_main_free (clib_dt_main_t *dm) clib_dt_main_free (clib_dt_main_t *dm)