aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/dev_octeon
AgeCommit message (Collapse)AuthorFilesLines
2024-10-17octeon: add crypto frameworkNithinsen Kaithakadan6-13/+2040
Configure crypto device. Add crypto support in control plane and data plane. Control plane - Handle vnet crypto key add and delete - Register crypto async enqueue and dequeue handlers Data plane - Add encryption and decryption support for - AES-GCM - AES-CBC hmac sha1/256/384/512 - AES-CTR sha1 - 3DES-CBC md5 sha1/256/384/512 Type: feature Signed-off-by: Nithinsen Kaithakadan <nkaithakadan@marvell.com> Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com> Change-Id: Ia9e16c61ed84800a59e0c932a4ba6aa1423c1ec8
2024-09-26octeon: fix pause flow control for lbk/sdp devicesAlok Mishra1-1/+6
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
2024-09-25octeon: enable h/w vlan tagging supportAlok Mishra1-0/+1
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
2024-09-24octeon: enable ethernet pause frame supportAlok Mishra1-0/+73
This patch adds support for MAC pause flow control. By default, pause flow control is enabled in the device configuration. Type: feature Signed-off-by: Alok Mishra <almishra@marvell.com> Change-Id: I0f448479a38fae615d87af7e736c6053ada89cca
2024-09-24octeon: fix error handling for packet with errorMonendra Singh Kushwaha1-1/+15
Type: fix Change-Id: Ieb97f1526939bcd732c155d3a7535dca71971258 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-09-24octeon: fix SDP device link informationMonendra Singh Kushwaha1-1/+1
This patch fixes SDP (System DPI Packet Interface Unit) device link information. Type: fix Change-Id: I4563094601d9bb24132e4dc712cde14daa7f4364 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-09-18octeon: fix compilation on octeon9Monendra Singh Kushwaha1-1/+2
Type: fix Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com> Change-Id: I9ffa78122dcd6b98cad9902e43ba8432fcd572b1
2024-08-29octeon: use proper refs for roc item spec and maskSriram Vatala1-43/+59
vnet flow enable is failing due to bogus bytes pointed by spec, mask variables of roc_npc_flow_item structure. Using reference to local variables defined in block scope is causing this. Moving the variable declarations to function block scope fixes this issue. Fixes: 064762e20 Type: fix Signed-off-by: Sriram Vatala <svatala@marvell.com> Change-Id: I3904199b5b2bd88cd02ada5604059ab6fd12eef7
2024-08-21octeon: add support for max_rx_frame_size updateAlok Mishra1-7/+25
This patch adds capability to update max_rx_frame_size on octeon port. Initial MTU value is being set in the "oct_port_start", which is invoked every time the Ethernet interface is brought up, thus overwriting any MTU value set by VPP CLI. Moved the MTU initialization to "oct_port_init" to address this. Type: feature Change-Id: I00d0d52bc7711062cde47b8fe52e6823bb718d08 Signed-off-by: Alok Mishra <almishra@marvell.com>
2024-08-21octeon: enable tx checksum offload capabilityMonendra Singh Kushwaha2-5/+7
This patch enables tx checksum offload and sets correct l3/l4 offset. Type: feature Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com> Change-Id: I666f4000cb51c4979567a52255377dbe15ffb202
2024-08-21octeon: sync mac address to cgx/rpm tableMonendra Singh Kushwaha1-0/+17
This patch syncs mac address to cgx/rpm table at initialization, which sets interface in unicast mode. Type: fix Change-Id: Icf64b91ce5c74cc399cad3d3358b951fb2a65297 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-07-15octeon: fix link down issueAlok Mishra1-0/+12
An issue is noticed when the link state of the ethernet interface is toggled to down and again brought up. The link status shows "up" in the "show interface", but shows "down" in "show hardware-interface". This issue does not occur when the link is brought up for the first time, but only manifests when the interface is brought down and up again. This happens because the device status and VNET_HW_INTERFACE_FLAG_LINK_UP aren't correctly updated during the port stop, preventing them from being updated during the port start. This patch fixes this issue in the port stop function. Type: fix Fixes: 01fe7ab88e Signed-off-by: Alok Mishra <almishra@marvell.com> Change-Id: Idbc5a6c31409a3d1c5b19e14a3c9509291175677
2024-06-25dev: move bus code to bus/Damjan Marion4-4/+1
Type: refactor Change-Id: If3a195f1ea600bfd621717f333af1b1273ab0807 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-06-11octeon: add clear counters for port and queuesMonendra Singh Kushwaha3-0/+48
Type: feature Change-Id: Ie36be41694e7bd5341b4239dcba2ae6834c4a73f Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-06-10octeon: add support for vnet generic flow typeSriram Vatala2-0/+392
This patch adds vnet generic flow type support in OCTEON plugin, which extends the existing vnet flow types supported. It allows users to configure additional match patterns like 802.1q tag fields, 802.1ad tag fields, MPLS fields, IP DSCP etc., if supported by the underlying hardware. On OCTEON various match patterns including user defined custom protocol types can be supported depending on the programmable classification profile. Generic flows operate based on hexadecimal strings representing packet data bytes and corresponding mask data bytes. The mask data bytes, with bits set to '1', selectively identify the data bytes used for hardware flow matching. To configure generic flow rules, packetforge tool is recommended which accepts inputs in a user readable and friendly format. This tool is available in VPP tree under `extras/packetforge`. Detailed instructions can be found in the documentation under `extras/packetforge`. Additionally user can use existing vnet flow CLI and binary API interfaces to configure rules manually. Type: feature Change-Id: I8198536cf1fe0a4719542a8b54c599230c7852e9 Signed-off-by: Sriram Vatala <svatala@marvell.com>
2024-06-10octeon: add counters support for port and queueMonendra Singh Kushwaha4-0/+322
Type: feature Change-Id: I5d52d78a93c7d0a12b9cee16fe7ebabdc2b19f0a Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-06-10octeon: update trace to use qid instead of qMonendra Singh Kushwaha1-1/+1
This patch updates trace to use "qid" keywords instead of "q". Type: feature Change-Id: Ib0f41a8a1a93cbbbf8c59304924d4e68efff48fd Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-06-10octeon: enable vf device promiscuous mode featureHarish Malik1-1/+4
This patch enables promiscuous mode on vf devices except SDP vf and LBK devices Type: feature Change-Id: I2e18c63590f22f99c69500f10b42b64d899249ce Signed-off-by: Kommula Shiva Shankar <kshankar@marvell.com> Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-05-29octeon: convert link speed from Mbps to KbpsMonendra Singh Kushwaha1-1/+2
Type: fix Fixes: 01fe7ab88e Change-Id: I88d03adcd4ef2a585ed77834b3bf8ef9d50b15c9 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-05-28octeon: add support for Marvell Octeon9 SoCMonendra Singh Kushwaha4-2/+100
Type: feature Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com> Change-Id: I5db58b8ec41b45596bc03b4a336a184c17871294
2024-05-28octeon: fix lbk vf initializationMonendra Singh Kushwaha1-0/+1
Type: fix Fixes: 0a2fdc56 Change-Id: I5d232a86be66edeec8b740a883104f5a22516697 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-05-13octeon: add support for mac address updateAlok Mishra1-0/+41
This patch adds support for updating primary hardware address on octeon port. Type: feature Change-Id: Ib0ff6aaa6dafc209eb71c44b8a6504d3df9aa5c8 Signed-off-by: Alok Mishra <almishra@marvell.com>
2024-05-06octeon: fix rvu vf device idMonendra Singh Kushwaha2-1/+3
Type: fix Fixes: I1ea92f Change-Id: Idf91b3f4cb3cc93081a282a14ffe2421a3628509 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-05-06octeon: add max packet length checkMonendra Singh Kushwaha2-2/+27
This patch compares packet length with maximum supported packet length and drops the packet accordingly. Type: fix Change-Id: I80ef453d43149818936649e1e58ae90c84a34ab9 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-05-06octeon: fix buffer free for more than 6 segmentMonendra Singh Kushwaha1-27/+37
Type: fix Fixes: 01fe7ab Change-Id: I4423d287e8148344754b2f6a13886c093a1384e4 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-05-01octeon: fix roc_nix_npc_mac_addr_get() return value checkDamjan Marion1-1/+1
Type: fix Fixes: 01fe7ab Change-Id: I46782c69773085f9e6a8dfff798bb42b1e822c32 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-04-23octeon: add promisc supportGuillaume Solignac1-0/+41
We add the capability to enable and disable promiscous mode on the octeon port. Type: feature Signed-off-by: Guillaume Solignac <gsoligna@cisco.com> Change-Id: I9a1464d2e1e8a0570ff16e221a4896aedc3ed6f8
2024-04-22octeon: add support for SDP deviceMonendra Singh Kushwaha2-6/+15
This patch adds support for SDP (System DPI Packet Interface Unit) device. Type: feature Change-Id: Idf1f53b151edf2992613746d5818409187b4b051 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-04-05octeon: fix memory ordering issue in tx batch freeDamjan Marion4-19/+42
Type: fix Fixes: 01fe7ab Change-Id: I4425e809f0977521ddecf91b58b26fe4519dd6e0 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-04-05octeon: fix buffer free on full tx ringDamjan Marion1-4/+4
Type: fix Fixes: 01fe7ab Change-Id: I4419107c4bcb7f85b76addfc62178b6e75e10a52 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-04-01octeon: specify pool when alloc buffersDamjan Marion1-1/+2
Type: fix Fixes: 01fe7ab Change-Id: I72fdaca250468d91a31efcce2fb447c97ba49dc7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-04-01octeon: refill even if nothing dequeued from rx queueDamjan Marion1-5/+6
It may happen that rx queue is empty of free buffers due to previous alloc failure. Type: fix Fixes: 01fe7ab Change-Id: I344dcda11525444bd1358b3d36ffdf8ab9aa2677 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-03-05octeon: add support for VF deviceMonendra Singh Kushwaha3-6/+19
This patch adds support for VF and loopback device. Type: feature Change-Id: I1ea92f3a1161851957206300ab921c27290b0305 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-02-28octeon: add flow offload infraMonendra Singh Kushwaha7-3/+581
Type: feature Change-Id: I3485e1627eafc5125255985003573247e7562db2 Signed-off-by: Kommula Shiva Shankar <kshankar@marvell.com> Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-01-17octeon: native driver for Marvell Octeon SoCDamjan Marion11-0/+2501
Type: feature Change-Id: I6898625c4e8854f777407dac3159e4c639a54860 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com> Signed-off-by: Damjan Marion <damarion@cisco.com>