176fb8fc4SThomas MonjalonAPI 26b919b0fSThomas Monjalon=== 36b919b0fSThomas Monjalon 46b919b0fSThomas Monjalon<!-- 5a6562f6dSErik Gabriel Carrillo SPDX-License-Identifier: BSD-3-Clause 6a6562f6dSErik Gabriel Carrillo Copyright(c) 2013-2017 6WIND S.A. 76b919b0fSThomas Monjalon--> 86b919b0fSThomas Monjalon 913b1a597SThomas MonjalonThe public API headers are grouped by topics: 106b919b0fSThomas Monjalon 116b919b0fSThomas Monjalon- **device**: 122b3f27eeSThomas Monjalon [dev](@ref rte_dev.h), 136b919b0fSThomas Monjalon [ethdev](@ref rte_ethdev.h), 142b3f27eeSThomas Monjalon [ethctrl](@ref rte_eth_ctrl.h), 15b1a4b4cbSAdrien Mazarguil [rte_flow](@ref rte_flow.h), 165d109defSCristian Dumitrescu [rte_tm](@ref rte_tm.h), 176613ffe1SCristian Dumitrescu [rte_mtr](@ref rte_mtr.h), 184935e1e9SAmr Mokhtar [bbdev](@ref rte_bbdev.h), 19d11b0f30SDeclan Doherty [cryptodev](@ref rte_cryptodev.h), 20c261d143SAkhil Goyal [security](@ref rte_security.h), 21ed7dd94fSFiona Trahe [compressdev](@ref rte_compressdev.h), 22f87bdc1dSFiona Trahe [compress](@ref rte_comp.h), 23bab9497eSJerin Jacob [regexdev](@ref rte_regexdev.h), 24d82cac58SJerin Jacob [mldev](@ref rte_mldev.h), 25b36970f2SChengwen Feng [dmadev](@ref rte_dmadev.h), 2679cd6f95SThomas Monjalon [gpudev](@ref rte_gpudev.h), 2771f23843SJerin Jacob [eventdev](@ref rte_eventdev.h), 28dcc806c2SNikhil Rao [event_eth_rx_adapter](@ref rte_event_eth_rx_adapter.h), 29c9bf8394SNikhil Rao [event_eth_tx_adapter](@ref rte_event_eth_tx_adapter.h), 30a6562f6dSErik Gabriel Carrillo [event_timer_adapter](@ref rte_event_timer_adapter.h), 31dbe869baSAbhinandan Gujjar [event_crypto_adapter](@ref rte_event_crypto_adapter.h), 32a9bb0c44SShreyansh Jain [rawdev](@ref rte_rawdev.h), 33bb79058fSThomas Monjalon [metrics](@ref rte_metrics.h), 34bb79058fSThomas Monjalon [bitrate](@ref rte_bitrate.h), 35bb79058fSThomas Monjalon [latency](@ref rte_latencystats.h), 366b919b0fSThomas Monjalon [devargs](@ref rte_devargs.h), 37c94eb6dbSHemant Agrawal [PCI](@ref rte_pci.h), 3842490f38SAideen McLoughlin [vdev](@ref rte_bus_vdev.h), 39c94eb6dbSHemant Agrawal [vfio](@ref rte_vfio.h) 4026fb45a3SFerruh Yigit 4126fb45a3SFerruh Yigit- **device specific**: 42cc6d4215SJasvinder Singh [softnic](@ref rte_eth_softnic.h), 436b919b0fSThomas Monjalon [bond](@ref rte_eth_bond.h), 44a798beb4SYuanhan Liu [vhost](@ref rte_vhost.h), 45d0d4887dSXiaolong Ye [vdpa](@ref rte_vdpa.h), 466b919b0fSThomas Monjalon [KNI](@ref rte_kni.h), 4726fb45a3SFerruh Yigit [ixgbe](@ref rte_pmd_ixgbe.h), 48dc8bd2f6SFan Zhang [i40e](@ref rte_pmd_i40e.h), 4912b435bfSJeff Guo [iavf](@ref rte_pmd_iavf.h), 507e9b4e58SFerruh Yigit [bnxt](@ref rte_pmd_bnxt.h), 518efa348eSKiran Kumar K [cnxk](@ref rte_pmd_cnxk.h), 521d0f0957SAshwin Sekhar T K [cnxk_mempool](@ref rte_pmd_cnxk_mempool.h), 538c3495f5SHemant Agrawal [dpaa](@ref rte_pmd_dpaa.h), 54c1870f65SAkhil Goyal [dpaa2](@ref rte_pmd_dpaa2.h), 55a0dd7cc7SBing Zhao [mlx5](@ref rte_pmd_mlx5.h), 567ed35990SNipun Gupta [dpaa2_mempool](@ref rte_dpaa2_mempool.h), 5753c71586SNipun Gupta [dpaa2_cmdif](@ref rte_pmd_dpaa2_cmdif.h), 5897f9032fSNipun Gupta [dpaa2_qdma](@ref rte_pmd_dpaa2_qdma.h), 59c667583dSTimothy McDaniel [crypto_scheduler](@ref rte_cryptodev_scheduler.h), 60a05bd1b4SWei Huang [dlb2](@ref rte_pmd_dlb2.h), 61a05bd1b4SWei Huang [ifpga](@ref rte_pmd_ifpga.h) 626b919b0fSThomas Monjalon 636b919b0fSThomas Monjalon- **memory**: 646b919b0fSThomas Monjalon [memseg](@ref rte_memory.h), 656b919b0fSThomas Monjalon [memzone](@ref rte_memzone.h), 666b919b0fSThomas Monjalon [mempool](@ref rte_mempool.h), 676b919b0fSThomas Monjalon [malloc](@ref rte_malloc.h), 686b919b0fSThomas Monjalon [memcpy](@ref rte_memcpy.h) 696b919b0fSThomas Monjalon 706b919b0fSThomas Monjalon- **timers**: 716b919b0fSThomas Monjalon [cycles](@ref rte_cycles.h), 726b919b0fSThomas Monjalon [timer](@ref rte_timer.h), 736b919b0fSThomas Monjalon [alarm](@ref rte_alarm.h) 746b919b0fSThomas Monjalon 756b919b0fSThomas Monjalon- **locks**: 766b919b0fSThomas Monjalon [atomic](@ref rte_atomic.h), 772173f333SPhil Yang [mcslock](@ref rte_mcslock.h), 789667d97cSStephen Hemminger [pflock](@ref rte_pflock.h), 796b919b0fSThomas Monjalon [rwlock](@ref rte_rwlock.h), 800bee0709SMattias Rönnblom [seqcount](@ref rte_seqcount.h), 810bee0709SMattias Rönnblom [seqlock](@ref rte_seqlock.h), 8264994b56SHonnappa Nagarahalli [spinlock](@ref rte_spinlock.h), 8364994b56SHonnappa Nagarahalli [ticketlock](@ref rte_ticketlock.h), 8464994b56SHonnappa Nagarahalli [RCU](@ref rte_rcu_qsbr.h) 856b919b0fSThomas Monjalon 866b919b0fSThomas Monjalon- **CPU arch**: 876b919b0fSThomas Monjalon [branch prediction](@ref rte_branch_prediction.h), 886b919b0fSThomas Monjalon [cache prefetch](@ref rte_prefetch.h), 8986c743cfSNelio Laranjeiro [SIMD](@ref rte_vect.h), 906b919b0fSThomas Monjalon [byte order](@ref rte_byteorder.h), 9169736db1SJerin Jacob [CPU flags](@ref rte_cpuflags.h), 92841e7ae5SJerin Jacob [CPU pause](@ref rte_pause.h), 93cb217305SAnatoly Burakov [I/O access](@ref rte_io.h), 94cb217305SAnatoly Burakov [power management](@ref rte_power_intrinsics.h) 956b919b0fSThomas Monjalon 966b919b0fSThomas Monjalon- **CPU multicore**: 976b919b0fSThomas Monjalon [interrupts](@ref rte_interrupts.h), 986b919b0fSThomas Monjalon [launch](@ref rte_launch.h), 996b919b0fSThomas Monjalon [lcore](@ref rte_lcore.h), 1006b919b0fSThomas Monjalon [per-lcore](@ref rte_per_lcore.h), 10121698354SHarry van Haaren [service cores](@ref rte_service.h), 1025c8baff8SThomas Monjalon [keepalive](@ref rte_keepalive.h), 103cb217305SAnatoly Burakov [power/freq](@ref rte_power.h), 104cb217305SAnatoly Burakov [PMD power](@ref rte_power_pmd_mgmt.h) 1056b919b0fSThomas Monjalon 1066b919b0fSThomas Monjalon- **layers**: 1076b919b0fSThomas Monjalon [ethernet](@ref rte_ether.h), 10832ae9939SAkhil Goyal [MACsec](@ref rte_macsec.h), 1092b3f27eeSThomas Monjalon [ARP](@ref rte_arp.h), 11001b3156dSKiran Kumar K [HIGIG](@ref rte_higig.h), 1112b3f27eeSThomas Monjalon [ICMP](@ref rte_icmp.h), 112d4b684f7SBoris Pismenny [ESP](@ref rte_esp.h), 1133a97a35bSVladimir Medvedkin [IPsec](@ref rte_ipsec.h), 1143a97a35bSVladimir Medvedkin [IPsec group](@ref rte_ipsec_group.h), 1153a97a35bSVladimir Medvedkin [IPsec SA](@ref rte_ipsec_sa.h), 1163a97a35bSVladimir Medvedkin [IPsec SAD](@ref rte_ipsec_sad.h), 1176b919b0fSThomas Monjalon [IP](@ref rte_ip.h), 11844d00a1dSOlivier Matz [frag/reass](@ref rte_ip_frag.h), 1196b919b0fSThomas Monjalon [SCTP](@ref rte_sctp.h), 1206b919b0fSThomas Monjalon [TCP](@ref rte_tcp.h), 1216b919b0fSThomas Monjalon [UDP](@ref rte_udp.h), 122d8e5e69fSTing Xu [GTP](@ref rte_gtp.h), 123e996506aSJiayu Hu [GRO](@ref rte_gro.h), 124ec51443cSJiayu Hu [GSO](@ref rte_gso.h), 12544d00a1dSOlivier Matz [GRE](@ref rte_gre.h), 12644d00a1dSOlivier Matz [MPLS](@ref rte_mpls.h), 12744d00a1dSOlivier Matz [VXLAN](@ref rte_vxlan.h), 12844d00a1dSOlivier Matz [Geneve](@ref rte_geneve.h), 1293a929df1SJie Wang [eCPRI](@ref rte_ecpri.h), 130895ec77bSVolodymyr Fialko [PDCP hdr](@ref rte_pdcp_hdr.h), 131a702bd09SAnoob Joseph [PDCP](@ref rte_pdcp.h), 1323a929df1SJie Wang [L2TPv2](@ref rte_l2tpv2.h), 133e9b8532eSDong Zhou [PPP](@ref rte_ppp.h), 134e9b8532eSDong Zhou [IB](@ref rte_ib.h) 1356b919b0fSThomas Monjalon 1366b919b0fSThomas Monjalon- **QoS**: 1376b919b0fSThomas Monjalon [metering](@ref rte_meter.h), 1386b919b0fSThomas Monjalon [scheduler](@ref rte_sched.h), 1396b919b0fSThomas Monjalon [RED congestion](@ref rte_red.h) 1406b919b0fSThomas Monjalon 1410b459fa0SVladimir Medvedkin- **routing**: 1420b459fa0SVladimir Medvedkin [LPM IPv4 route](@ref rte_lpm.h), 1430b459fa0SVladimir Medvedkin [LPM IPv6 route](@ref rte_lpm6.h), 1440b459fa0SVladimir Medvedkin [RIB IPv4](@ref rte_rib.h), 1450b459fa0SVladimir Medvedkin [RIB IPv6](@ref rte_rib6.h), 1460b459fa0SVladimir Medvedkin [FIB IPv4](@ref rte_fib.h), 1470b459fa0SVladimir Medvedkin [FIB IPv6](@ref rte_fib6.h) 1480b459fa0SVladimir Medvedkin 1496b919b0fSThomas Monjalon- **hashes**: 1506b919b0fSThomas Monjalon [hash](@ref rte_hash.h), 1516b919b0fSThomas Monjalon [jhash](@ref rte_jhash.h), 1522b3f27eeSThomas Monjalon [thash](@ref rte_thash.h), 1534fd8c4cbSVladimir Medvedkin [thash_gfni](@ref rte_thash_gfni.h), 1546b919b0fSThomas Monjalon [FBK hash](@ref rte_fbk_hash.h), 155a266b313SThomas Monjalon [CRC hash](@ref rte_hash_crc.h) 156e8009a07SThomas Monjalon 157e8009a07SThomas Monjalon- **classification** 158e8009a07SThomas Monjalon [reorder](@ref rte_reorder.h), 159e8009a07SThomas Monjalon [distributor](@ref rte_distributor.h), 160e8009a07SThomas Monjalon [EFD](@ref rte_efd.h), 161e8009a07SThomas Monjalon [ACL](@ref rte_acl.h), 162be41ac2aSFerruh Yigit [member](@ref rte_member.h), 16394972f35SKonstantin Ananyev [flow classify](@ref rte_flow_classify.h), 16494972f35SKonstantin Ananyev [BPF](@ref rte_bpf.h) 1656b919b0fSThomas Monjalon 1666b919b0fSThomas Monjalon- **containers**: 1676b919b0fSThomas Monjalon [mbuf](@ref rte_mbuf.h), 168a3acc314SHemant Agrawal [mbuf pool ops](@ref rte_mbuf_pool_ops.h), 1696b919b0fSThomas Monjalon [ring](@ref rte_ring.h), 17005d3b528SGage Eads [stack](@ref rte_stack.h), 1716b919b0fSThomas Monjalon [tailq](@ref rte_tailq.h), 172a266b313SThomas Monjalon [bitmap](@ref rte_bitmap.h) 1736b919b0fSThomas Monjalon 1746b919b0fSThomas Monjalon- **packet framework**: 1756b919b0fSThomas Monjalon * [port](@ref rte_port.h): 1766b919b0fSThomas Monjalon [ethdev](@ref rte_port_ethdev.h), 1776b919b0fSThomas Monjalon [ring](@ref rte_port_ring.h), 1786b919b0fSThomas Monjalon [frag](@ref rte_port_frag.h), 1796b919b0fSThomas Monjalon [reass](@ref rte_port_ras.h), 1806b919b0fSThomas Monjalon [sched](@ref rte_port_sched.h), 1819fc37d1cSWeiJie Zhuang [kni](@ref rte_port_kni.h), 1826b919b0fSThomas Monjalon [src/sink](@ref rte_port_source_sink.h) 1836b919b0fSThomas Monjalon * [table](@ref rte_table.h): 1846b919b0fSThomas Monjalon [lpm IPv4](@ref rte_table_lpm.h), 1856b919b0fSThomas Monjalon [lpm IPv6](@ref rte_table_lpm_ipv6.h), 1866b919b0fSThomas Monjalon [ACL](@ref rte_table_acl.h), 1876b919b0fSThomas Monjalon [hash](@ref rte_table_hash.h), 1886b919b0fSThomas Monjalon [array](@ref rte_table_array.h), 1896b919b0fSThomas Monjalon [stub](@ref rte_table_stub.h) 1906b919b0fSThomas Monjalon * [pipeline](@ref rte_pipeline.h) 191f0e352ddSJasvinder Singh [port_in_action](@ref rte_port_in_action.h) 192654dd411SJasvinder Singh [table_action](@ref rte_table_action.h) 19356492fd5SCristian Dumitrescu * SWX pipeline: 194e9d870ddSCristian Dumitrescu [control](@ref rte_swx_ctl.h), 1951e4c88caSCristian Dumitrescu [extern](@ref rte_swx_extern.h), 19656492fd5SCristian Dumitrescu [pipeline](@ref rte_swx_pipeline.h) 1976e0ca01cSCristian Dumitrescu * SWX port: 198ecc5f433SCristian Dumitrescu [port](@ref rte_swx_port.h), 199394813ebSCristian Dumitrescu [ethdev](@ref rte_swx_port_ethdev.h), 200e2b8dc52SVenkata Suresh Kumar P [fd](@ref rte_swx_port_fd.h), 20177a41301SCristian Dumitrescu [ring](@ref rte_swx_port_ring.h), 202394813ebSCristian Dumitrescu [src/sink](@ref rte_swx_port_source_sink.h) 203e9d870ddSCristian Dumitrescu * SWX table: 204d0a00966SCristian Dumitrescu [table](@ref rte_swx_table.h), 205d0a00966SCristian Dumitrescu [table_em](@ref rte_swx_table_em.h) 20666440b7bSCristian Dumitrescu [table_wm](@ref rte_swx_table_wm.h) 207a2da7427SJerin Jacob * [graph](@ref rte_graph.h): 208*a2bc0584SZhirun Yan [graph_worker](@ref rte_graph_worker.h) 209947d7f68SNithin Dabilpuram * graph_nodes: 210947d7f68SNithin Dabilpuram [eth_node](@ref rte_node_eth_api.h), 2110555f11cSPavan Nikhilesh [ip4_node](@ref rte_node_ip4_api.h) 2126b919b0fSThomas Monjalon 2136b919b0fSThomas Monjalon- **basic**: 2147f3aa086SJoyce Kong [bitops](@ref rte_bitops.h), 2156b919b0fSThomas Monjalon [approx fraction](@ref rte_approx.h), 2166b919b0fSThomas Monjalon [random](@ref rte_random.h), 2172b3f27eeSThomas Monjalon [config file](@ref rte_cfgfile.h), 2186b919b0fSThomas Monjalon [key/value args](@ref rte_kvargs.h), 2198fa2da94STyler Retzlaff [string](@ref rte_string_fns.h), 2208fa2da94STyler Retzlaff [thread](@ref rte_thread.h) 2216b919b0fSThomas Monjalon 2226b919b0fSThomas Monjalon- **debug**: 2232b3f27eeSThomas Monjalon [jobstats](@ref rte_jobstats.h), 2248877ac68SCiara Power [telemetry](@ref rte_telemetry.h), 2258d23ce8fSStephen Hemminger [pcapng](@ref rte_pcapng.h), 2266d059e99SReshma Pattan [pdump](@ref rte_pdump.h), 2272b3f27eeSThomas Monjalon [hexdump](@ref rte_hexdump.h), 2286b919b0fSThomas Monjalon [debug](@ref rte_debug.h), 2296b919b0fSThomas Monjalon [log](@ref rte_log.h), 23027db82c7SJerin Jacob [errno](@ref rte_errno.h), 23127db82c7SJerin Jacob [trace](@ref rte_trace.h), 23227db82c7SJerin Jacob [trace_point](@ref rte_trace_point.h) 2336b919b0fSThomas Monjalon 2346b919b0fSThomas Monjalon- **misc**: 2356b919b0fSThomas Monjalon [EAL config](@ref rte_eal.h), 2366b919b0fSThomas Monjalon [common](@ref rte_common.h), 237dc61aa74SBruce Richardson [experimental APIs](@ref rte_compat.h), 238dc61aa74SBruce Richardson [ABI versioning](@ref rte_function_versioning.h), 2396b919b0fSThomas Monjalon [version](@ref rte_version.h) 240