aboutsummaryrefslogtreecommitdiff
path: root/platform
AgeCommit message (Collapse)Author
2022-06-20linux-dpdk: pool: header include clean-upMatias Elo
Add missing, remove unnecessary, and group existing includes. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
2022-06-20Port be306d8c0 "linux-gen: schedule: implement odp_schedule_order_wait()"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
2022-06-20Port 75260118d "linux-gen: packet: add missing subtype metadata to ↵Matias Elo
_odp_packet_copy_md()" Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
2022-06-20Port 82d0da39f "linux-gen: macros: prefix implementation internal macro names"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
2022-06-20Port 12d3afa2d "linux_gen: remove crypto error from packet error flags"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
2022-06-20Port 11f963aed "linux-gen: packet: put crypto and ipsec results in a union ↵Matias Elo
in packet hdr" Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
2022-06-20Merge tag 'v1.37.0.0' of https://github.com/OpenDataPlane/odp into odp-dpdkMatias Elo
Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
2022-06-01linux-dpdk: fix distcleanTuomas Taipale
When making `distclean`, the operation fails while handling `dumpconfig` as build files (which are currently referenced via a symlink) are removed in a previous step. Fix this by creating own `dumpconfig` folder for `linux-dpdk` tree. Signed-off-by: Tuomas Taipale <tuomas.taipale@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
2022-05-30linux-dpdk: pktio: increase default rx and tx descriptor countsMatias Elo
Increase default number of RX and TX descriptors to 1024 for improved packet forwarding performance. Use rte_eth_dev_adjust_nb_rx_tx_desc() to adjust descriptor counts automatically to values supported by the used poll mode driver. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-30linux-dpdk: pktio: refactor statistic countersMatias Elo
Remove old unused RX counters (DPDK counters are used instead) and utilize correct atomic counter for packets discarded by ODP software. Add missing capability for outbound discarded packets. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-30linux-dpdk: pktio: refactor pkt_dpdk_t structMatias Elo
Refactor pkt_dpdk_t struct by collecting fast path data to the beginning of the struct. Unused 'ifname' member has been removed. As a result, the maximum size of pkt_dpdk_t has been reduced from 1536 bytes (with 128 byte cache lines) to 1408 bytes. With more common 64 byte cache line size only 1216 bytes are required. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-30linux-dpdk: pktio: remove unnecessary errno read/write from sendMatias Elo
DPDK API does not specify that rte_errno is set after rte_eth_tx_burst() failures, so remove the unnecessary code. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25README.DPDK: list dpdk v21.11 as supportedMatias Elo
List DPDK v21.11 as supported version. All HTTP links have been converted to HTTPS. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25linux-dpdk: packet: fix maybe-uninitialized warningMatias Elo
Avoid GCC 10/11 maybe-uninitialized warning on arm64. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25linux-dpdk: pktio: header include clean-upMatias Elo
Add missing, remove unnecessary, and group existing includes. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25linux-dpdk: pktio: fix packet parse failure handlingMatias Elo
Add missing handling for packets which were dropped due to packet parsing failures. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 76c8b7a1a "linux-gen: parse: remove unused *_packet_parse_layer() ↵Matias Elo
functions" Port original commit from linux-generic. ODP-DPDK specific DPDK pktio header is no longer required. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port ae347d563 "linux-gen: pktio: always call *_packet_parse_common()"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port d7b705a71 "linux-gen: dpdk: add support for DPDK 21.11"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 223e2d2e8 "linux-gen: dpdk: check rte_eth_dev_info_get() return value"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 9e464f4ce "linux-gen: time: inline odp_time_diff_ns() function"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 346e832be "linux-gen: packet_flags: inline has error functions"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 65b9e351d "linux-gen: packet: inline packet getter functions"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port bf79d7ede "linux-gen: packet_flags: inline input flags getter functions"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 4675d95b2 "linux-gen: pktio: use uint32_t for number of queues"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 561e5457c "linux-gen: define a 128-bit integer type"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port c328a705a "linux-gen: pktio: implement packet aging"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 9c4f7863c "linux-gen: packet: implement packet aging API"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 43e4ead4c "linux-gen: drop error packets according to pktin configuration"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 0316d4fab "linux-gen: parse: prefix non-static functions"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 3924507d7 "linux-gen: packet: move parse functions to new source files"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 37072db5a "linux-gen: cls: move parse call out of ↵Matias Elo
_odp_cls_classify_packet()" Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port d494be4f7 "linux-gen: pktio: fix classification result handling"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port b81e13439 "linux-gen: timer: inline small timer functions"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port beffb1277 "abi: timer: add necessary files for function inlining"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 9ccb85381 "api: crypto: deprecate odp_crypto_operation()"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-25Port 4eee6de84 "api: event: split header file"Matias Elo
Port original commit from linux-generic. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-09linux-gen: packet: fix sign-conversion errorMatias Elo
Fix sign-conversion error from an implicit conversion. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
2022-05-06linux-gen: schedule: implement odp_schedule_order_wait()Janne Peltonen
Implement odp_schedule_order_wait() by using the existing order_lock() (not to be confused with ordered locks) function that does what we need and does not require unlock. Support is added for the basic and scalable scheduler but not for the SP scheduler where the function is a nop. Signed-off-by: Janne Peltonen <janne.peltonen@nokia.com> Reviewed-by: Jerin Jacob <jerinj@marvell.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
2022-05-06linux-gen: cls: implement ODP_PMR_VLAN_PCP_0Petri Savolainen
Implemented the new VLAN PCP bits packet matching rule. Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Janne Peltonen <janne.peltonen@nokia.com>
2022-05-06api: cls: deprecate odp_cos_with_l3_qos()Petri Savolainen
Deprecated odp_cos_with_l3_qos() as the new IP DSCP PMR term allows a more flexible way to match DSCP values. Validation tests and other test application do not use this function, which makes it unlikely that API compatible implementations exist. Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com> Reviewed-by: Kiran Kumar K <kirankumark@marvell.com> Reviewed-by: Janne Peltonen <janne.peltonen@nokia.com>
2022-05-06linux-gen: cls: implement ODP_PMR_IP_DSCPPetri Savolainen
Implemented the new IP DSCP packet matching rule. Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-06linux-gen: cls: match IPv6 next header on PMR_IPPROTOPetri Savolainen
Added missing IPv6 support into IPPROTO PMR implementation. Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>
2022-05-05linux-gen: packet: remove unused definesTuomas Taipale
`PKT_EXTRA_LEN` and `PKT_EXTRA_TYPE_DPDK` seems to have become unused when DPDK zero copy implementation was improved a while ago. Remove them. Signed-off-by: Tuomas Taipale <tuomas.taipale@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
2022-05-05linux-gen: packet: fix sign-conversion errorMatias Elo
Fix sign-conversion error from an implicit conversion. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
2022-05-04Merge tag 'v1.36.0.0' of https://github.com/OpenDataPlane/odp into odp-dpdkMatias Elo
Signed-off-by: Matias Elo <matias.elo@nokia.com>
2022-05-02linux-gen: pktio: add AF_XDP socket based packet IOTuomas Taipale
Add new AF_XDP socket based packet IO implementation. Information about AF_XDP and XDP can be found in [1]. ODP packet pool(s) created for packet IO entries are used as the UMEM areas. Currently, only zero-copy mode is supported, copy-mode support will be added later. Depending on the XDP program loaded into the environment's NIC(s), TX and RX queue selection for packets may differ. By default, only a single combined queue is supported and this may require changing the configuration of the NIC accordingly so that packets end up on the AF_XDP socket created by ODP. [1] https://www.kernel.org/doc/Documentation/networking/af_xdp.rst Signed-off-by: Tuomas Taipale <tuomas.taipale@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
2022-05-02linux-gen: dpdk: adapt to new memory source operations interfaceTuomas Taipale
Adapt DPDK packet IO to use the new `_odp_pool_mem_src_ops_t` interface. Signed-off-by: Tuomas Taipale <tuomas.taipale@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
2022-05-02linux-gen: pool: add memory source operations interfaceTuomas Taipale
New `_odp_pool_mem_src_ops_t` interface can be used to adapt ODP packet pools to be used as a memory source for e.g. zero-copy packet IO purposes. For now, pools can only be assigned to a single operations provider. When an active memory source user is found, rest are disabled to avoid conflicting configurations. Signed-off-by: Tuomas Taipale <tuomas.taipale@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
2022-05-02linux-gen: sysinfo: use helper macro for calculating array sizeMatias Elo
Use _ODP_ARRAY_SIZE() helper macro for calculating array sizes. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Tuomas Taipale <tuomas.taipale@nokia.com>