xref: /dpdk/doc/api/doxy-api-index.md (revision 9667d97c250729eba96f95daa16c248d9bef27f3)
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),
4712b435bfSJeff Guo  [iavf]               (@ref rte_pmd_iavf.h),
48b28a44fdSBruce Richardson  [ioat]               (@ref rte_ioat_rawdev.h),
497e9b4e58SFerruh Yigit  [bnxt]               (@ref rte_pmd_bnxt.h),
508c3495f5SHemant Agrawal  [dpaa]               (@ref rte_pmd_dpaa.h),
51c1870f65SAkhil Goyal  [dpaa2]              (@ref rte_pmd_dpaa2.h),
52a0dd7cc7SBing Zhao  [mlx5]               (@ref rte_pmd_mlx5.h),
537ed35990SNipun Gupta  [dpaa2_mempool]      (@ref rte_dpaa2_mempool.h),
5453c71586SNipun Gupta  [dpaa2_cmdif]        (@ref rte_pmd_dpaa2_cmdif.h),
55c22fab9aSNipun Gupta  [dpaa2_qdma]         (@ref rte_pmd_dpaa2_qdma.h),
56c667583dSTimothy McDaniel  [crypto_scheduler]   (@ref rte_cryptodev_scheduler.h),
57a05bd1b4SWei Huang  [dlb2]               (@ref rte_pmd_dlb2.h),
58a05bd1b4SWei Huang  [ifpga]              (@ref rte_pmd_ifpga.h)
596b919b0fSThomas Monjalon
606b919b0fSThomas Monjalon- **memory**:
616b919b0fSThomas Monjalon  [memseg]             (@ref rte_memory.h),
626b919b0fSThomas Monjalon  [memzone]            (@ref rte_memzone.h),
636b919b0fSThomas Monjalon  [mempool]            (@ref rte_mempool.h),
646b919b0fSThomas Monjalon  [malloc]             (@ref rte_malloc.h),
656b919b0fSThomas Monjalon  [memcpy]             (@ref rte_memcpy.h)
666b919b0fSThomas Monjalon
676b919b0fSThomas Monjalon- **timers**:
686b919b0fSThomas Monjalon  [cycles]             (@ref rte_cycles.h),
696b919b0fSThomas Monjalon  [timer]              (@ref rte_timer.h),
706b919b0fSThomas Monjalon  [alarm]              (@ref rte_alarm.h)
716b919b0fSThomas Monjalon
726b919b0fSThomas Monjalon- **locks**:
736b919b0fSThomas Monjalon  [atomic]             (@ref rte_atomic.h),
742173f333SPhil Yang  [mcslock]            (@ref rte_mcslock.h),
75*9667d97cSStephen Hemminger  [pflock]             (@ref rte_pflock.h),
766b919b0fSThomas Monjalon  [rwlock]             (@ref rte_rwlock.h),
7764994b56SHonnappa Nagarahalli  [spinlock]           (@ref rte_spinlock.h),
7864994b56SHonnappa Nagarahalli  [ticketlock]         (@ref rte_ticketlock.h),
7964994b56SHonnappa Nagarahalli  [RCU]                (@ref rte_rcu_qsbr.h)
806b919b0fSThomas Monjalon
816b919b0fSThomas Monjalon- **CPU arch**:
826b919b0fSThomas Monjalon  [branch prediction]  (@ref rte_branch_prediction.h),
836b919b0fSThomas Monjalon  [cache prefetch]     (@ref rte_prefetch.h),
8486c743cfSNelio Laranjeiro  [SIMD]               (@ref rte_vect.h),
856b919b0fSThomas Monjalon  [byte order]         (@ref rte_byteorder.h),
8669736db1SJerin Jacob  [CPU flags]          (@ref rte_cpuflags.h),
87841e7ae5SJerin Jacob  [CPU pause]          (@ref rte_pause.h),
88cb217305SAnatoly Burakov  [I/O access]         (@ref rte_io.h),
89cb217305SAnatoly Burakov  [power management]   (@ref rte_power_intrinsics.h)
906b919b0fSThomas Monjalon
916b919b0fSThomas Monjalon- **CPU multicore**:
926b919b0fSThomas Monjalon  [interrupts]         (@ref rte_interrupts.h),
936b919b0fSThomas Monjalon  [launch]             (@ref rte_launch.h),
946b919b0fSThomas Monjalon  [lcore]              (@ref rte_lcore.h),
956b919b0fSThomas Monjalon  [per-lcore]          (@ref rte_per_lcore.h),
9621698354SHarry van Haaren  [service cores]      (@ref rte_service.h),
975c8baff8SThomas Monjalon  [keepalive]          (@ref rte_keepalive.h),
98cb217305SAnatoly Burakov  [power/freq]         (@ref rte_power.h),
99cb217305SAnatoly Burakov  [PMD power]          (@ref rte_power_pmd_mgmt.h)
1006b919b0fSThomas Monjalon
1016b919b0fSThomas Monjalon- **layers**:
1026b919b0fSThomas Monjalon  [ethernet]           (@ref rte_ether.h),
1032b3f27eeSThomas Monjalon  [ARP]                (@ref rte_arp.h),
10401b3156dSKiran Kumar K  [HIGIG]              (@ref rte_higig.h),
1052b3f27eeSThomas Monjalon  [ICMP]               (@ref rte_icmp.h),
106d4b684f7SBoris Pismenny  [ESP]                (@ref rte_esp.h),
1073a97a35bSVladimir Medvedkin  [IPsec]              (@ref rte_ipsec.h),
1083a97a35bSVladimir Medvedkin  [IPsec group]        (@ref rte_ipsec_group.h),
1093a97a35bSVladimir Medvedkin  [IPsec SA]           (@ref rte_ipsec_sa.h),
1103a97a35bSVladimir Medvedkin  [IPsec SAD]          (@ref rte_ipsec_sad.h),
1116b919b0fSThomas Monjalon  [IP]                 (@ref rte_ip.h),
11244d00a1dSOlivier Matz  [frag/reass]         (@ref rte_ip_frag.h),
1136b919b0fSThomas Monjalon  [SCTP]               (@ref rte_sctp.h),
1146b919b0fSThomas Monjalon  [TCP]                (@ref rte_tcp.h),
1156b919b0fSThomas Monjalon  [UDP]                (@ref rte_udp.h),
116d8e5e69fSTing Xu  [GTP]                (@ref rte_gtp.h),
117e996506aSJiayu Hu  [GRO]                (@ref rte_gro.h),
118ec51443cSJiayu Hu  [GSO]                (@ref rte_gso.h),
11944d00a1dSOlivier Matz  [GRE]                (@ref rte_gre.h),
12044d00a1dSOlivier Matz  [MPLS]               (@ref rte_mpls.h),
12144d00a1dSOlivier Matz  [VXLAN]              (@ref rte_vxlan.h),
12244d00a1dSOlivier Matz  [Geneve]             (@ref rte_geneve.h),
12344d00a1dSOlivier Matz  [eCPRI]              (@ref rte_ecpri.h)
1246b919b0fSThomas Monjalon
1256b919b0fSThomas Monjalon- **QoS**:
1266b919b0fSThomas Monjalon  [metering]           (@ref rte_meter.h),
1276b919b0fSThomas Monjalon  [scheduler]          (@ref rte_sched.h),
1286b919b0fSThomas Monjalon  [RED congestion]     (@ref rte_red.h)
1296b919b0fSThomas Monjalon
1300b459fa0SVladimir Medvedkin- **routing**:
1310b459fa0SVladimir Medvedkin  [LPM IPv4 route]     (@ref rte_lpm.h),
1320b459fa0SVladimir Medvedkin  [LPM IPv6 route]     (@ref rte_lpm6.h),
1330b459fa0SVladimir Medvedkin  [RIB IPv4]           (@ref rte_rib.h),
1340b459fa0SVladimir Medvedkin  [RIB IPv6]           (@ref rte_rib6.h),
1350b459fa0SVladimir Medvedkin  [FIB IPv4]           (@ref rte_fib.h),
1360b459fa0SVladimir Medvedkin  [FIB IPv6]           (@ref rte_fib6.h)
1370b459fa0SVladimir Medvedkin
1386b919b0fSThomas Monjalon- **hashes**:
1396b919b0fSThomas Monjalon  [hash]               (@ref rte_hash.h),
1406b919b0fSThomas Monjalon  [jhash]              (@ref rte_jhash.h),
1412b3f27eeSThomas Monjalon  [thash]              (@ref rte_thash.h),
1426b919b0fSThomas Monjalon  [FBK hash]           (@ref rte_fbk_hash.h),
143a266b313SThomas Monjalon  [CRC hash]           (@ref rte_hash_crc.h)
144e8009a07SThomas Monjalon
145e8009a07SThomas Monjalon- **classification**
146e8009a07SThomas Monjalon  [reorder]            (@ref rte_reorder.h),
147e8009a07SThomas Monjalon  [distributor]        (@ref rte_distributor.h),
148e8009a07SThomas Monjalon  [EFD]                (@ref rte_efd.h),
149e8009a07SThomas Monjalon  [ACL]                (@ref rte_acl.h),
150be41ac2aSFerruh Yigit  [member]             (@ref rte_member.h),
15194972f35SKonstantin Ananyev  [flow classify]      (@ref rte_flow_classify.h),
15294972f35SKonstantin Ananyev  [BPF]                (@ref rte_bpf.h)
1536b919b0fSThomas Monjalon
1546b919b0fSThomas Monjalon- **containers**:
1556b919b0fSThomas Monjalon  [mbuf]               (@ref rte_mbuf.h),
156a3acc314SHemant Agrawal  [mbuf pool ops]      (@ref rte_mbuf_pool_ops.h),
1576b919b0fSThomas Monjalon  [ring]               (@ref rte_ring.h),
15805d3b528SGage Eads  [stack]              (@ref rte_stack.h),
1596b919b0fSThomas Monjalon  [tailq]              (@ref rte_tailq.h),
160a266b313SThomas Monjalon  [bitmap]             (@ref rte_bitmap.h)
1616b919b0fSThomas Monjalon
1626b919b0fSThomas Monjalon- **packet framework**:
1636b919b0fSThomas Monjalon  * [port]             (@ref rte_port.h):
1646b919b0fSThomas Monjalon    [ethdev]           (@ref rte_port_ethdev.h),
1656b919b0fSThomas Monjalon    [ring]             (@ref rte_port_ring.h),
1666b919b0fSThomas Monjalon    [frag]             (@ref rte_port_frag.h),
1676b919b0fSThomas Monjalon    [reass]            (@ref rte_port_ras.h),
1686b919b0fSThomas Monjalon    [sched]            (@ref rte_port_sched.h),
1699fc37d1cSWeiJie Zhuang    [kni]              (@ref rte_port_kni.h),
1706b919b0fSThomas Monjalon    [src/sink]         (@ref rte_port_source_sink.h)
1716b919b0fSThomas Monjalon  * [table]            (@ref rte_table.h):
1726b919b0fSThomas Monjalon    [lpm IPv4]         (@ref rte_table_lpm.h),
1736b919b0fSThomas Monjalon    [lpm IPv6]         (@ref rte_table_lpm_ipv6.h),
1746b919b0fSThomas Monjalon    [ACL]              (@ref rte_table_acl.h),
1756b919b0fSThomas Monjalon    [hash]             (@ref rte_table_hash.h),
1766b919b0fSThomas Monjalon    [array]            (@ref rte_table_array.h),
1776b919b0fSThomas Monjalon    [stub]             (@ref rte_table_stub.h)
1786b919b0fSThomas Monjalon  * [pipeline]         (@ref rte_pipeline.h)
179f0e352ddSJasvinder Singh    [port_in_action]   (@ref rte_port_in_action.h)
180654dd411SJasvinder Singh    [table_action]     (@ref rte_table_action.h)
18156492fd5SCristian Dumitrescu  * SWX pipeline:
182e9d870ddSCristian Dumitrescu    [control]          (@ref rte_swx_ctl.h),
1831e4c88caSCristian Dumitrescu    [extern]           (@ref rte_swx_extern.h),
18456492fd5SCristian Dumitrescu    [pipeline]         (@ref rte_swx_pipeline.h)
1856e0ca01cSCristian Dumitrescu  * SWX port:
186ecc5f433SCristian Dumitrescu    [port]             (@ref rte_swx_port.h),
187394813ebSCristian Dumitrescu    [ethdev]           (@ref rte_swx_port_ethdev.h),
188e2b8dc52SVenkata Suresh Kumar P    [fd]               (@ref rte_swx_port_fd.h),
18977a41301SCristian Dumitrescu    [ring]             (@ref rte_swx_port_ring.h),
190394813ebSCristian Dumitrescu    [src/sink]         (@ref rte_swx_port_source_sink.h)
191e9d870ddSCristian Dumitrescu  * SWX table:
192d0a00966SCristian Dumitrescu    [table]            (@ref rte_swx_table.h),
193d0a00966SCristian Dumitrescu    [table_em]         (@ref rte_swx_table_em.h)
19466440b7bSCristian Dumitrescu    [table_wm]         (@ref rte_swx_table_wm.h)
195a2da7427SJerin Jacob  * [graph]            (@ref rte_graph.h):
19640d4f514SJerin Jacob    [graph_worker]     (@ref rte_graph_worker.h)
197947d7f68SNithin Dabilpuram  * graph_nodes:
198947d7f68SNithin Dabilpuram    [eth_node]         (@ref rte_node_eth_api.h),
1990555f11cSPavan Nikhilesh    [ip4_node]         (@ref rte_node_ip4_api.h)
2006b919b0fSThomas Monjalon
2016b919b0fSThomas Monjalon- **basic**:
2027f3aa086SJoyce Kong  [bitops]             (@ref rte_bitops.h),
2036b919b0fSThomas Monjalon  [approx fraction]    (@ref rte_approx.h),
2046b919b0fSThomas Monjalon  [random]             (@ref rte_random.h),
2052b3f27eeSThomas Monjalon  [config file]        (@ref rte_cfgfile.h),
2066b919b0fSThomas Monjalon  [key/value args]     (@ref rte_kvargs.h),
2076b919b0fSThomas Monjalon  [string]             (@ref rte_string_fns.h)
2086b919b0fSThomas Monjalon
2096b919b0fSThomas Monjalon- **debug**:
2102b3f27eeSThomas Monjalon  [jobstats]           (@ref rte_jobstats.h),
2118877ac68SCiara Power  [telemetry]          (@ref rte_telemetry.h),
2126d059e99SReshma Pattan  [pdump]              (@ref rte_pdump.h),
2132b3f27eeSThomas Monjalon  [hexdump]            (@ref rte_hexdump.h),
2146b919b0fSThomas Monjalon  [debug]              (@ref rte_debug.h),
2156b919b0fSThomas Monjalon  [log]                (@ref rte_log.h),
21627db82c7SJerin Jacob  [errno]              (@ref rte_errno.h),
21727db82c7SJerin Jacob  [trace]              (@ref rte_trace.h),
21827db82c7SJerin Jacob  [trace_point]        (@ref rte_trace_point.h)
2196b919b0fSThomas Monjalon
2206b919b0fSThomas Monjalon- **misc**:
2216b919b0fSThomas Monjalon  [EAL config]         (@ref rte_eal.h),
2226b919b0fSThomas Monjalon  [common]             (@ref rte_common.h),
223dc61aa74SBruce Richardson  [experimental APIs]  (@ref rte_compat.h),
224dc61aa74SBruce Richardson  [ABI versioning]     (@ref rte_function_versioning.h),
2256b919b0fSThomas Monjalon  [version]            (@ref rte_version.h)
226