xref: /dpdk/doc/api/doxy-api-index.md (revision a2bc05846c5bdd839ba9d13e65b02b981ea98130)
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