1API 2=== 3 4<!-- 5 SPDX-License-Identifier: BSD-3-Clause 6 Copyright(c) 2013-2017 6WIND S.A. 7--> 8 9The public API headers are grouped by topics: 10 11- **device**: 12 [dev](@ref rte_dev.h), 13 [ethdev](@ref rte_ethdev.h), 14 [ethctrl](@ref rte_eth_ctrl.h), 15 [rte_flow](@ref rte_flow.h), 16 [rte_tm](@ref rte_tm.h), 17 [rte_mtr](@ref rte_mtr.h), 18 [bbdev](@ref rte_bbdev.h), 19 [cryptodev](@ref rte_cryptodev.h), 20 [security](@ref rte_security.h), 21 [compressdev](@ref rte_compressdev.h), 22 [compress](@ref rte_comp.h), 23 [regexdev](@ref rte_regexdev.h), 24 [mldev](@ref rte_mldev.h), 25 [dmadev](@ref rte_dmadev.h), 26 [gpudev](@ref rte_gpudev.h), 27 [eventdev](@ref rte_eventdev.h), 28 [event_eth_rx_adapter](@ref rte_event_eth_rx_adapter.h), 29 [event_eth_tx_adapter](@ref rte_event_eth_tx_adapter.h), 30 [event_timer_adapter](@ref rte_event_timer_adapter.h), 31 [event_crypto_adapter](@ref rte_event_crypto_adapter.h), 32 [rawdev](@ref rte_rawdev.h), 33 [metrics](@ref rte_metrics.h), 34 [bitrate](@ref rte_bitrate.h), 35 [latency](@ref rte_latencystats.h), 36 [devargs](@ref rte_devargs.h), 37 [PCI](@ref rte_pci.h), 38 [vdev](@ref rte_bus_vdev.h), 39 [vfio](@ref rte_vfio.h) 40 41- **device specific**: 42 [softnic](@ref rte_eth_softnic.h), 43 [bond](@ref rte_eth_bond.h), 44 [vhost](@ref rte_vhost.h), 45 [vdpa](@ref rte_vdpa.h), 46 [KNI](@ref rte_kni.h), 47 [ixgbe](@ref rte_pmd_ixgbe.h), 48 [i40e](@ref rte_pmd_i40e.h), 49 [iavf](@ref rte_pmd_iavf.h), 50 [bnxt](@ref rte_pmd_bnxt.h), 51 [cnxk](@ref rte_pmd_cnxk.h), 52 [cnxk_mempool](@ref rte_pmd_cnxk_mempool.h), 53 [dpaa](@ref rte_pmd_dpaa.h), 54 [dpaa2](@ref rte_pmd_dpaa2.h), 55 [mlx5](@ref rte_pmd_mlx5.h), 56 [dpaa2_mempool](@ref rte_dpaa2_mempool.h), 57 [dpaa2_cmdif](@ref rte_pmd_dpaa2_cmdif.h), 58 [dpaa2_qdma](@ref rte_pmd_dpaa2_qdma.h), 59 [crypto_scheduler](@ref rte_cryptodev_scheduler.h), 60 [dlb2](@ref rte_pmd_dlb2.h), 61 [ifpga](@ref rte_pmd_ifpga.h) 62 63- **memory**: 64 [memseg](@ref rte_memory.h), 65 [memzone](@ref rte_memzone.h), 66 [mempool](@ref rte_mempool.h), 67 [malloc](@ref rte_malloc.h), 68 [memcpy](@ref rte_memcpy.h) 69 70- **timers**: 71 [cycles](@ref rte_cycles.h), 72 [timer](@ref rte_timer.h), 73 [alarm](@ref rte_alarm.h) 74 75- **locks**: 76 [atomic](@ref rte_atomic.h), 77 [mcslock](@ref rte_mcslock.h), 78 [pflock](@ref rte_pflock.h), 79 [rwlock](@ref rte_rwlock.h), 80 [seqcount](@ref rte_seqcount.h), 81 [seqlock](@ref rte_seqlock.h), 82 [spinlock](@ref rte_spinlock.h), 83 [ticketlock](@ref rte_ticketlock.h), 84 [RCU](@ref rte_rcu_qsbr.h) 85 86- **CPU arch**: 87 [branch prediction](@ref rte_branch_prediction.h), 88 [cache prefetch](@ref rte_prefetch.h), 89 [SIMD](@ref rte_vect.h), 90 [byte order](@ref rte_byteorder.h), 91 [CPU flags](@ref rte_cpuflags.h), 92 [CPU pause](@ref rte_pause.h), 93 [I/O access](@ref rte_io.h), 94 [power management](@ref rte_power_intrinsics.h) 95 96- **CPU multicore**: 97 [interrupts](@ref rte_interrupts.h), 98 [launch](@ref rte_launch.h), 99 [lcore](@ref rte_lcore.h), 100 [per-lcore](@ref rte_per_lcore.h), 101 [service cores](@ref rte_service.h), 102 [keepalive](@ref rte_keepalive.h), 103 [power/freq](@ref rte_power.h), 104 [PMD power](@ref rte_power_pmd_mgmt.h) 105 106- **layers**: 107 [ethernet](@ref rte_ether.h), 108 [MACsec](@ref rte_macsec.h), 109 [ARP](@ref rte_arp.h), 110 [HIGIG](@ref rte_higig.h), 111 [ICMP](@ref rte_icmp.h), 112 [ESP](@ref rte_esp.h), 113 [IPsec](@ref rte_ipsec.h), 114 [IPsec group](@ref rte_ipsec_group.h), 115 [IPsec SA](@ref rte_ipsec_sa.h), 116 [IPsec SAD](@ref rte_ipsec_sad.h), 117 [IP](@ref rte_ip.h), 118 [frag/reass](@ref rte_ip_frag.h), 119 [SCTP](@ref rte_sctp.h), 120 [TCP](@ref rte_tcp.h), 121 [UDP](@ref rte_udp.h), 122 [GTP](@ref rte_gtp.h), 123 [GRO](@ref rte_gro.h), 124 [GSO](@ref rte_gso.h), 125 [GRE](@ref rte_gre.h), 126 [MPLS](@ref rte_mpls.h), 127 [VXLAN](@ref rte_vxlan.h), 128 [Geneve](@ref rte_geneve.h), 129 [eCPRI](@ref rte_ecpri.h), 130 [PDCP hdr](@ref rte_pdcp_hdr.h), 131 [PDCP](@ref rte_pdcp.h), 132 [L2TPv2](@ref rte_l2tpv2.h), 133 [PPP](@ref rte_ppp.h), 134 [IB](@ref rte_ib.h) 135 136- **QoS**: 137 [metering](@ref rte_meter.h), 138 [scheduler](@ref rte_sched.h), 139 [RED congestion](@ref rte_red.h) 140 141- **routing**: 142 [LPM IPv4 route](@ref rte_lpm.h), 143 [LPM IPv6 route](@ref rte_lpm6.h), 144 [RIB IPv4](@ref rte_rib.h), 145 [RIB IPv6](@ref rte_rib6.h), 146 [FIB IPv4](@ref rte_fib.h), 147 [FIB IPv6](@ref rte_fib6.h) 148 149- **hashes**: 150 [hash](@ref rte_hash.h), 151 [jhash](@ref rte_jhash.h), 152 [thash](@ref rte_thash.h), 153 [thash_gfni](@ref rte_thash_gfni.h), 154 [FBK hash](@ref rte_fbk_hash.h), 155 [CRC hash](@ref rte_hash_crc.h) 156 157- **classification** 158 [reorder](@ref rte_reorder.h), 159 [distributor](@ref rte_distributor.h), 160 [EFD](@ref rte_efd.h), 161 [ACL](@ref rte_acl.h), 162 [member](@ref rte_member.h), 163 [flow classify](@ref rte_flow_classify.h), 164 [BPF](@ref rte_bpf.h) 165 166- **containers**: 167 [mbuf](@ref rte_mbuf.h), 168 [mbuf pool ops](@ref rte_mbuf_pool_ops.h), 169 [ring](@ref rte_ring.h), 170 [stack](@ref rte_stack.h), 171 [tailq](@ref rte_tailq.h), 172 [bitmap](@ref rte_bitmap.h) 173 174- **packet framework**: 175 * [port](@ref rte_port.h): 176 [ethdev](@ref rte_port_ethdev.h), 177 [ring](@ref rte_port_ring.h), 178 [frag](@ref rte_port_frag.h), 179 [reass](@ref rte_port_ras.h), 180 [sched](@ref rte_port_sched.h), 181 [kni](@ref rte_port_kni.h), 182 [src/sink](@ref rte_port_source_sink.h) 183 * [table](@ref rte_table.h): 184 [lpm IPv4](@ref rte_table_lpm.h), 185 [lpm IPv6](@ref rte_table_lpm_ipv6.h), 186 [ACL](@ref rte_table_acl.h), 187 [hash](@ref rte_table_hash.h), 188 [array](@ref rte_table_array.h), 189 [stub](@ref rte_table_stub.h) 190 * [pipeline](@ref rte_pipeline.h) 191 [port_in_action](@ref rte_port_in_action.h) 192 [table_action](@ref rte_table_action.h) 193 * SWX pipeline: 194 [control](@ref rte_swx_ctl.h), 195 [extern](@ref rte_swx_extern.h), 196 [pipeline](@ref rte_swx_pipeline.h) 197 * SWX port: 198 [port](@ref rte_swx_port.h), 199 [ethdev](@ref rte_swx_port_ethdev.h), 200 [fd](@ref rte_swx_port_fd.h), 201 [ring](@ref rte_swx_port_ring.h), 202 [src/sink](@ref rte_swx_port_source_sink.h) 203 * SWX table: 204 [table](@ref rte_swx_table.h), 205 [table_em](@ref rte_swx_table_em.h) 206 [table_wm](@ref rte_swx_table_wm.h) 207 * [graph](@ref rte_graph.h): 208 [graph_worker](@ref rte_graph_worker.h) 209 * graph_nodes: 210 [eth_node](@ref rte_node_eth_api.h), 211 [ip4_node](@ref rte_node_ip4_api.h), 212 [ip6_node](@ref rte_node_ip6_api.h) 213 214- **basic**: 215 [bitops](@ref rte_bitops.h), 216 [approx fraction](@ref rte_approx.h), 217 [random](@ref rte_random.h), 218 [config file](@ref rte_cfgfile.h), 219 [key/value args](@ref rte_kvargs.h), 220 [string](@ref rte_string_fns.h), 221 [thread](@ref rte_thread.h) 222 223- **debug**: 224 [jobstats](@ref rte_jobstats.h), 225 [telemetry](@ref rte_telemetry.h), 226 [pcapng](@ref rte_pcapng.h), 227 [pdump](@ref rte_pdump.h), 228 [hexdump](@ref rte_hexdump.h), 229 [debug](@ref rte_debug.h), 230 [log](@ref rte_log.h), 231 [errno](@ref rte_errno.h), 232 [trace](@ref rte_trace.h), 233 [trace_point](@ref rte_trace_point.h) 234 235- **misc**: 236 [EAL config](@ref rte_eal.h), 237 [common](@ref rte_common.h), 238 [experimental APIs](@ref rte_compat.h), 239 [ABI versioning](@ref rte_function_versioning.h), 240 [version](@ref rte_version.h) 241