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