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), 2471f23843SJerin Jacob [eventdev] (@ref rte_eventdev.h), 25dcc806c2SNikhil Rao [event_eth_rx_adapter] (@ref rte_event_eth_rx_adapter.h), 26c9bf8394SNikhil Rao [event_eth_tx_adapter] (@ref rte_event_eth_tx_adapter.h), 27a6562f6dSErik Gabriel Carrillo [event_timer_adapter] (@ref rte_event_timer_adapter.h), 28dbe869baSAbhinandan Gujjar [event_crypto_adapter] (@ref rte_event_crypto_adapter.h), 29a9bb0c44SShreyansh Jain [rawdev] (@ref rte_rawdev.h), 30bb79058fSThomas Monjalon [metrics] (@ref rte_metrics.h), 31bb79058fSThomas Monjalon [bitrate] (@ref rte_bitrate.h), 32bb79058fSThomas Monjalon [latency] (@ref rte_latencystats.h), 336b919b0fSThomas Monjalon [devargs] (@ref rte_devargs.h), 34c94eb6dbSHemant Agrawal [PCI] (@ref rte_pci.h), 3542490f38SAideen McLoughlin [vdev] (@ref rte_bus_vdev.h), 36c94eb6dbSHemant Agrawal [vfio] (@ref rte_vfio.h) 3726fb45a3SFerruh Yigit 3826fb45a3SFerruh Yigit- **device specific**: 39cc6d4215SJasvinder Singh [softnic] (@ref rte_eth_softnic.h), 406b919b0fSThomas Monjalon [bond] (@ref rte_eth_bond.h), 41a798beb4SYuanhan Liu [vhost] (@ref rte_vhost.h), 42d0d4887dSXiaolong Ye [vdpa] (@ref rte_vdpa.h), 436b919b0fSThomas Monjalon [KNI] (@ref rte_kni.h), 4426fb45a3SFerruh Yigit [ixgbe] (@ref rte_pmd_ixgbe.h), 45dc8bd2f6SFan Zhang [i40e] (@ref rte_pmd_i40e.h), 46328dc5baSHaiyue Wang [ice] (@ref rte_pmd_ice.h), 477e9b4e58SFerruh Yigit [bnxt] (@ref rte_pmd_bnxt.h), 488c3495f5SHemant Agrawal [dpaa] (@ref rte_pmd_dpaa.h), 49c1870f65SAkhil Goyal [dpaa2] (@ref rte_pmd_dpaa2.h), 507ed35990SNipun Gupta [dpaa2_mempool] (@ref rte_dpaa2_mempool.h), 5153c71586SNipun Gupta [dpaa2_cmdif] (@ref rte_pmd_dpaa2_cmdif.h), 52c22fab9aSNipun Gupta [dpaa2_qdma] (@ref rte_pmd_dpaa2_qdma.h), 53dc8bd2f6SFan Zhang [crypto_scheduler] (@ref rte_cryptodev_scheduler.h) 546b919b0fSThomas Monjalon 556b919b0fSThomas Monjalon- **memory**: 566b919b0fSThomas Monjalon [memseg] (@ref rte_memory.h), 576b919b0fSThomas Monjalon [memzone] (@ref rte_memzone.h), 586b919b0fSThomas Monjalon [mempool] (@ref rte_mempool.h), 596b919b0fSThomas Monjalon [malloc] (@ref rte_malloc.h), 606b919b0fSThomas Monjalon [memcpy] (@ref rte_memcpy.h) 616b919b0fSThomas Monjalon 626b919b0fSThomas Monjalon- **timers**: 636b919b0fSThomas Monjalon [cycles] (@ref rte_cycles.h), 646b919b0fSThomas Monjalon [timer] (@ref rte_timer.h), 656b919b0fSThomas Monjalon [alarm] (@ref rte_alarm.h) 666b919b0fSThomas Monjalon 676b919b0fSThomas Monjalon- **locks**: 686b919b0fSThomas Monjalon [atomic] (@ref rte_atomic.h), 692173f333SPhil Yang [mcslock] (@ref rte_mcslock.h), 706b919b0fSThomas Monjalon [rwlock] (@ref rte_rwlock.h), 7164994b56SHonnappa Nagarahalli [spinlock] (@ref rte_spinlock.h), 7264994b56SHonnappa Nagarahalli [ticketlock] (@ref rte_ticketlock.h), 7364994b56SHonnappa Nagarahalli [RCU] (@ref rte_rcu_qsbr.h) 746b919b0fSThomas Monjalon 756b919b0fSThomas Monjalon- **CPU arch**: 766b919b0fSThomas Monjalon [branch prediction] (@ref rte_branch_prediction.h), 776b919b0fSThomas Monjalon [cache prefetch] (@ref rte_prefetch.h), 7886c743cfSNelio Laranjeiro [SIMD] (@ref rte_vect.h), 796b919b0fSThomas Monjalon [byte order] (@ref rte_byteorder.h), 8069736db1SJerin Jacob [CPU flags] (@ref rte_cpuflags.h), 81841e7ae5SJerin Jacob [CPU pause] (@ref rte_pause.h), 8269736db1SJerin Jacob [I/O access] (@ref rte_io.h) 836b919b0fSThomas Monjalon 846b919b0fSThomas Monjalon- **CPU multicore**: 856b919b0fSThomas Monjalon [interrupts] (@ref rte_interrupts.h), 866b919b0fSThomas Monjalon [launch] (@ref rte_launch.h), 876b919b0fSThomas Monjalon [lcore] (@ref rte_lcore.h), 886b919b0fSThomas Monjalon [per-lcore] (@ref rte_per_lcore.h), 8921698354SHarry van Haaren [service cores] (@ref rte_service.h), 905c8baff8SThomas Monjalon [keepalive] (@ref rte_keepalive.h), 916b919b0fSThomas Monjalon [power/freq] (@ref rte_power.h) 926b919b0fSThomas Monjalon 936b919b0fSThomas Monjalon- **layers**: 946b919b0fSThomas Monjalon [ethernet] (@ref rte_ether.h), 952b3f27eeSThomas Monjalon [ARP] (@ref rte_arp.h), 9601b3156dSKiran Kumar K [HIGIG] (@ref rte_higig.h), 972b3f27eeSThomas Monjalon [ICMP] (@ref rte_icmp.h), 98d4b684f7SBoris Pismenny [ESP] (@ref rte_esp.h), 993a97a35bSVladimir Medvedkin [IPsec] (@ref rte_ipsec.h), 1003a97a35bSVladimir Medvedkin [IPsec group] (@ref rte_ipsec_group.h), 1013a97a35bSVladimir Medvedkin [IPsec SA] (@ref rte_ipsec_sa.h), 1023a97a35bSVladimir Medvedkin [IPsec SAD] (@ref rte_ipsec_sad.h), 1036b919b0fSThomas Monjalon [IP] (@ref rte_ip.h), 1046b919b0fSThomas Monjalon [SCTP] (@ref rte_sctp.h), 1056b919b0fSThomas Monjalon [TCP] (@ref rte_tcp.h), 1066b919b0fSThomas Monjalon [UDP] (@ref rte_udp.h), 107d8e5e69fSTing Xu [GTP] (@ref rte_gtp.h), 108e996506aSJiayu Hu [GRO] (@ref rte_gro.h), 109ec51443cSJiayu Hu [GSO] (@ref rte_gso.h), 1106b919b0fSThomas Monjalon [frag/reass] (@ref rte_ip_frag.h), 111512d873fSFlavia Musatescu [VXLAN] (@ref rte_vxlan.h) 1126b919b0fSThomas Monjalon 1136b919b0fSThomas Monjalon- **QoS**: 1146b919b0fSThomas Monjalon [metering] (@ref rte_meter.h), 1156b919b0fSThomas Monjalon [scheduler] (@ref rte_sched.h), 1166b919b0fSThomas Monjalon [RED congestion] (@ref rte_red.h) 1176b919b0fSThomas Monjalon 1180b459fa0SVladimir Medvedkin- **routing**: 1190b459fa0SVladimir Medvedkin [LPM IPv4 route] (@ref rte_lpm.h), 1200b459fa0SVladimir Medvedkin [LPM IPv6 route] (@ref rte_lpm6.h), 1210b459fa0SVladimir Medvedkin [RIB IPv4] (@ref rte_rib.h), 1220b459fa0SVladimir Medvedkin [RIB IPv6] (@ref rte_rib6.h), 1230b459fa0SVladimir Medvedkin [FIB IPv4] (@ref rte_fib.h), 1240b459fa0SVladimir Medvedkin [FIB IPv6] (@ref rte_fib6.h) 1250b459fa0SVladimir Medvedkin 1266b919b0fSThomas Monjalon- **hashes**: 1276b919b0fSThomas Monjalon [hash] (@ref rte_hash.h), 1286b919b0fSThomas Monjalon [jhash] (@ref rte_jhash.h), 1292b3f27eeSThomas Monjalon [thash] (@ref rte_thash.h), 1306b919b0fSThomas Monjalon [FBK hash] (@ref rte_fbk_hash.h), 131a266b313SThomas Monjalon [CRC hash] (@ref rte_hash_crc.h) 132e8009a07SThomas Monjalon 133e8009a07SThomas Monjalon- **classification** 134e8009a07SThomas Monjalon [reorder] (@ref rte_reorder.h), 135e8009a07SThomas Monjalon [distributor] (@ref rte_distributor.h), 136e8009a07SThomas Monjalon [EFD] (@ref rte_efd.h), 137e8009a07SThomas Monjalon [ACL] (@ref rte_acl.h), 138be41ac2aSFerruh Yigit [member] (@ref rte_member.h), 13994972f35SKonstantin Ananyev [flow classify] (@ref rte_flow_classify.h), 14094972f35SKonstantin Ananyev [BPF] (@ref rte_bpf.h) 1416b919b0fSThomas Monjalon 1426b919b0fSThomas Monjalon- **containers**: 1436b919b0fSThomas Monjalon [mbuf] (@ref rte_mbuf.h), 144a3acc314SHemant Agrawal [mbuf pool ops] (@ref rte_mbuf_pool_ops.h), 1456b919b0fSThomas Monjalon [ring] (@ref rte_ring.h), 14605d3b528SGage Eads [stack] (@ref rte_stack.h), 1476b919b0fSThomas Monjalon [tailq] (@ref rte_tailq.h), 148a266b313SThomas Monjalon [bitmap] (@ref rte_bitmap.h) 1496b919b0fSThomas Monjalon 1506b919b0fSThomas Monjalon- **packet framework**: 1516b919b0fSThomas Monjalon * [port] (@ref rte_port.h): 1526b919b0fSThomas Monjalon [ethdev] (@ref rte_port_ethdev.h), 1536b919b0fSThomas Monjalon [ring] (@ref rte_port_ring.h), 1546b919b0fSThomas Monjalon [frag] (@ref rte_port_frag.h), 1556b919b0fSThomas Monjalon [reass] (@ref rte_port_ras.h), 1566b919b0fSThomas Monjalon [sched] (@ref rte_port_sched.h), 1579fc37d1cSWeiJie Zhuang [kni] (@ref rte_port_kni.h), 1586b919b0fSThomas Monjalon [src/sink] (@ref rte_port_source_sink.h) 1596b919b0fSThomas Monjalon * [table] (@ref rte_table.h): 1606b919b0fSThomas Monjalon [lpm IPv4] (@ref rte_table_lpm.h), 1616b919b0fSThomas Monjalon [lpm IPv6] (@ref rte_table_lpm_ipv6.h), 1626b919b0fSThomas Monjalon [ACL] (@ref rte_table_acl.h), 1636b919b0fSThomas Monjalon [hash] (@ref rte_table_hash.h), 1646b919b0fSThomas Monjalon [array] (@ref rte_table_array.h), 1656b919b0fSThomas Monjalon [stub] (@ref rte_table_stub.h) 1666b919b0fSThomas Monjalon * [pipeline] (@ref rte_pipeline.h) 167f0e352ddSJasvinder Singh [port_in_action] (@ref rte_port_in_action.h) 168654dd411SJasvinder Singh [table_action] (@ref rte_table_action.h) 16956492fd5SCristian Dumitrescu * SWX pipeline: 170*e9d870ddSCristian Dumitrescu [control] (@ref rte_swx_ctl.h), 1711e4c88caSCristian Dumitrescu [extern] (@ref rte_swx_extern.h), 17256492fd5SCristian Dumitrescu [pipeline] (@ref rte_swx_pipeline.h) 1736e0ca01cSCristian Dumitrescu * SWX port: 1746e0ca01cSCristian Dumitrescu [port] (@ref rte_swx_port.h) 175*e9d870ddSCristian Dumitrescu * SWX table: 176*e9d870ddSCristian Dumitrescu [table] (@ref rte_swx_table.h) 177a2da7427SJerin Jacob * [graph] (@ref rte_graph.h): 17840d4f514SJerin Jacob [graph_worker] (@ref rte_graph_worker.h) 179947d7f68SNithin Dabilpuram * graph_nodes: 180947d7f68SNithin Dabilpuram [eth_node] (@ref rte_node_eth_api.h), 1810555f11cSPavan Nikhilesh [ip4_node] (@ref rte_node_ip4_api.h) 1826b919b0fSThomas Monjalon 1836b919b0fSThomas Monjalon- **basic**: 1847f3aa086SJoyce Kong [bitops] (@ref rte_bitops.h), 1856b919b0fSThomas Monjalon [approx fraction] (@ref rte_approx.h), 1866b919b0fSThomas Monjalon [random] (@ref rte_random.h), 1872b3f27eeSThomas Monjalon [config file] (@ref rte_cfgfile.h), 1886b919b0fSThomas Monjalon [key/value args] (@ref rte_kvargs.h), 1896b919b0fSThomas Monjalon [string] (@ref rte_string_fns.h) 1906b919b0fSThomas Monjalon 1916b919b0fSThomas Monjalon- **debug**: 1922b3f27eeSThomas Monjalon [jobstats] (@ref rte_jobstats.h), 1938877ac68SCiara Power [telemetry] (@ref rte_telemetry.h), 1946d059e99SReshma Pattan [pdump] (@ref rte_pdump.h), 1952b3f27eeSThomas Monjalon [hexdump] (@ref rte_hexdump.h), 1966b919b0fSThomas Monjalon [debug] (@ref rte_debug.h), 1976b919b0fSThomas Monjalon [log] (@ref rte_log.h), 19827db82c7SJerin Jacob [errno] (@ref rte_errno.h), 19927db82c7SJerin Jacob [trace] (@ref rte_trace.h), 20027db82c7SJerin Jacob [trace_point] (@ref rte_trace_point.h) 2016b919b0fSThomas Monjalon 2026b919b0fSThomas Monjalon- **misc**: 2036b919b0fSThomas Monjalon [EAL config] (@ref rte_eal.h), 2046b919b0fSThomas Monjalon [common] (@ref rte_common.h), 205dc61aa74SBruce Richardson [experimental APIs] (@ref rte_compat.h), 206dc61aa74SBruce Richardson [ABI versioning] (@ref rte_function_versioning.h), 2076b919b0fSThomas Monjalon [version] (@ref rte_version.h) 208