xref: /f-stack/dpdk/doc/api/doxy-api-index.md (revision 2d9fd380)
10c6bd470SfengbojiangAPI
2a9643ea8Slogwang===
3a9643ea8Slogwang
4a9643ea8Slogwang<!--
5d30ea906Sjfb8856606  SPDX-License-Identifier: BSD-3-Clause
6d30ea906Sjfb8856606  Copyright(c) 2013-2017 6WIND S.A.
7a9643ea8Slogwang-->
8a9643ea8Slogwang
92bfe3f2eSlogwangThe public API headers are grouped by topics:
10a9643ea8Slogwang
11a9643ea8Slogwang- **device**:
12a9643ea8Slogwang  [dev]                (@ref rte_dev.h),
13a9643ea8Slogwang  [ethdev]             (@ref rte_ethdev.h),
14a9643ea8Slogwang  [ethctrl]            (@ref rte_eth_ctrl.h),
152bfe3f2eSlogwang  [rte_flow]           (@ref rte_flow.h),
162bfe3f2eSlogwang  [rte_tm]             (@ref rte_tm.h),
172bfe3f2eSlogwang  [rte_mtr]            (@ref rte_mtr.h),
18d30ea906Sjfb8856606  [bbdev]              (@ref rte_bbdev.h),
19a9643ea8Slogwang  [cryptodev]          (@ref rte_cryptodev.h),
202bfe3f2eSlogwang  [security]           (@ref rte_security.h),
21d30ea906Sjfb8856606  [compressdev]        (@ref rte_compressdev.h),
22d30ea906Sjfb8856606  [compress]           (@ref rte_comp.h),
23*2d9fd380Sjfb8856606  [regexdev]           (@ref rte_regexdev.h),
242bfe3f2eSlogwang  [eventdev]           (@ref rte_eventdev.h),
252bfe3f2eSlogwang  [event_eth_rx_adapter]   (@ref rte_event_eth_rx_adapter.h),
26d30ea906Sjfb8856606  [event_eth_tx_adapter]   (@ref rte_event_eth_tx_adapter.h),
27d30ea906Sjfb8856606  [event_timer_adapter]    (@ref rte_event_timer_adapter.h),
28d30ea906Sjfb8856606  [event_crypto_adapter]   (@ref rte_event_crypto_adapter.h),
29d30ea906Sjfb8856606  [rawdev]             (@ref rte_rawdev.h),
302bfe3f2eSlogwang  [metrics]            (@ref rte_metrics.h),
312bfe3f2eSlogwang  [bitrate]            (@ref rte_bitrate.h),
322bfe3f2eSlogwang  [latency]            (@ref rte_latencystats.h),
33a9643ea8Slogwang  [devargs]            (@ref rte_devargs.h),
34d30ea906Sjfb8856606  [PCI]                (@ref rte_pci.h),
354418919fSjohnjiang  [vdev]               (@ref rte_bus_vdev.h),
36d30ea906Sjfb8856606  [vfio]               (@ref rte_vfio.h)
372bfe3f2eSlogwang
382bfe3f2eSlogwang- **device specific**:
392bfe3f2eSlogwang  [softnic]            (@ref rte_eth_softnic.h),
40a9643ea8Slogwang  [bond]               (@ref rte_eth_bond.h),
412bfe3f2eSlogwang  [vhost]              (@ref rte_vhost.h),
42d30ea906Sjfb8856606  [vdpa]               (@ref rte_vdpa.h),
43a9643ea8Slogwang  [KNI]                (@ref rte_kni.h),
44*2d9fd380Sjfb8856606  [ark]                (@ref rte_pmd_ark.h),
452bfe3f2eSlogwang  [ixgbe]              (@ref rte_pmd_ixgbe.h),
462bfe3f2eSlogwang  [i40e]               (@ref rte_pmd_i40e.h),
474418919fSjohnjiang  [ice]                (@ref rte_pmd_ice.h),
48*2d9fd380Sjfb8856606  [iavf]               (@ref rte_pmd_iavf.h),
49*2d9fd380Sjfb8856606  [ioat]               (@ref rte_ioat_rawdev.h),
502bfe3f2eSlogwang  [bnxt]               (@ref rte_pmd_bnxt.h),
51d30ea906Sjfb8856606  [dpaa]               (@ref rte_pmd_dpaa.h),
524418919fSjohnjiang  [dpaa2]              (@ref rte_pmd_dpaa2.h),
53*2d9fd380Sjfb8856606  [mlx5]               (@ref rte_pmd_mlx5.h),
54d30ea906Sjfb8856606  [dpaa2_mempool]      (@ref rte_dpaa2_mempool.h),
55d30ea906Sjfb8856606  [dpaa2_cmdif]        (@ref rte_pmd_dpaa2_cmdif.h),
56d30ea906Sjfb8856606  [dpaa2_qdma]         (@ref rte_pmd_dpaa2_qdma.h),
57*2d9fd380Sjfb8856606  [crypto_scheduler]   (@ref rte_cryptodev_scheduler.h),
58*2d9fd380Sjfb8856606  [dlb]                (@ref rte_pmd_dlb.h),
59*2d9fd380Sjfb8856606  [dlb2]               (@ref rte_pmd_dlb2.h)
60a9643ea8Slogwang
61a9643ea8Slogwang- **memory**:
62a9643ea8Slogwang  [memseg]             (@ref rte_memory.h),
63a9643ea8Slogwang  [memzone]            (@ref rte_memzone.h),
64a9643ea8Slogwang  [mempool]            (@ref rte_mempool.h),
65a9643ea8Slogwang  [malloc]             (@ref rte_malloc.h),
66a9643ea8Slogwang  [memcpy]             (@ref rte_memcpy.h)
67a9643ea8Slogwang
68a9643ea8Slogwang- **timers**:
69a9643ea8Slogwang  [cycles]             (@ref rte_cycles.h),
70a9643ea8Slogwang  [timer]              (@ref rte_timer.h),
71a9643ea8Slogwang  [alarm]              (@ref rte_alarm.h)
72a9643ea8Slogwang
73a9643ea8Slogwang- **locks**:
74a9643ea8Slogwang  [atomic]             (@ref rte_atomic.h),
754418919fSjohnjiang  [mcslock]            (@ref rte_mcslock.h),
76a9643ea8Slogwang  [rwlock]             (@ref rte_rwlock.h),
774418919fSjohnjiang  [spinlock]           (@ref rte_spinlock.h),
784418919fSjohnjiang  [ticketlock]         (@ref rte_ticketlock.h),
794418919fSjohnjiang  [RCU]                (@ref rte_rcu_qsbr.h)
80a9643ea8Slogwang
81a9643ea8Slogwang- **CPU arch**:
82a9643ea8Slogwang  [branch prediction]  (@ref rte_branch_prediction.h),
83a9643ea8Slogwang  [cache prefetch]     (@ref rte_prefetch.h),
842bfe3f2eSlogwang  [SIMD]               (@ref rte_vect.h),
85a9643ea8Slogwang  [byte order]         (@ref rte_byteorder.h),
862bfe3f2eSlogwang  [CPU flags]          (@ref rte_cpuflags.h),
872bfe3f2eSlogwang  [CPU pause]          (@ref rte_pause.h),
882bfe3f2eSlogwang  [I/O access]         (@ref rte_io.h)
89a9643ea8Slogwang
90a9643ea8Slogwang- **CPU multicore**:
91a9643ea8Slogwang  [interrupts]         (@ref rte_interrupts.h),
92a9643ea8Slogwang  [launch]             (@ref rte_launch.h),
93a9643ea8Slogwang  [lcore]              (@ref rte_lcore.h),
94a9643ea8Slogwang  [per-lcore]          (@ref rte_per_lcore.h),
952bfe3f2eSlogwang  [service cores]      (@ref rte_service.h),
962bfe3f2eSlogwang  [keepalive]          (@ref rte_keepalive.h),
97a9643ea8Slogwang  [power/freq]         (@ref rte_power.h)
98a9643ea8Slogwang
99a9643ea8Slogwang- **layers**:
100a9643ea8Slogwang  [ethernet]           (@ref rte_ether.h),
101a9643ea8Slogwang  [ARP]                (@ref rte_arp.h),
1024418919fSjohnjiang  [HIGIG]              (@ref rte_higig.h),
103a9643ea8Slogwang  [ICMP]               (@ref rte_icmp.h),
1042bfe3f2eSlogwang  [ESP]                (@ref rte_esp.h),
1054418919fSjohnjiang  [IPsec]              (@ref rte_ipsec.h),
1064418919fSjohnjiang  [IPsec group]        (@ref rte_ipsec_group.h),
1074418919fSjohnjiang  [IPsec SA]           (@ref rte_ipsec_sa.h),
1084418919fSjohnjiang  [IPsec SAD]          (@ref rte_ipsec_sad.h),
109a9643ea8Slogwang  [IP]                 (@ref rte_ip.h),
110*2d9fd380Sjfb8856606  [frag/reass]         (@ref rte_ip_frag.h),
111a9643ea8Slogwang  [SCTP]               (@ref rte_sctp.h),
112a9643ea8Slogwang  [TCP]                (@ref rte_tcp.h),
113a9643ea8Slogwang  [UDP]                (@ref rte_udp.h),
1144418919fSjohnjiang  [GTP]                (@ref rte_gtp.h),
1152bfe3f2eSlogwang  [GRO]                (@ref rte_gro.h),
1162bfe3f2eSlogwang  [GSO]                (@ref rte_gso.h),
117*2d9fd380Sjfb8856606  [GRE]                (@ref rte_gre.h),
118*2d9fd380Sjfb8856606  [MPLS]               (@ref rte_mpls.h),
119*2d9fd380Sjfb8856606  [VXLAN]              (@ref rte_vxlan.h),
120*2d9fd380Sjfb8856606  [Geneve]             (@ref rte_geneve.h),
121*2d9fd380Sjfb8856606  [eCPRI]              (@ref rte_ecpri.h)
122a9643ea8Slogwang
123a9643ea8Slogwang- **QoS**:
124a9643ea8Slogwang  [metering]           (@ref rte_meter.h),
125a9643ea8Slogwang  [scheduler]          (@ref rte_sched.h),
126a9643ea8Slogwang  [RED congestion]     (@ref rte_red.h)
127a9643ea8Slogwang
1280c6bd470Sfengbojiang- **routing**:
1290c6bd470Sfengbojiang  [LPM IPv4 route]     (@ref rte_lpm.h),
1300c6bd470Sfengbojiang  [LPM IPv6 route]     (@ref rte_lpm6.h),
1310c6bd470Sfengbojiang  [RIB IPv4]           (@ref rte_rib.h),
1320c6bd470Sfengbojiang  [RIB IPv6]           (@ref rte_rib6.h),
1330c6bd470Sfengbojiang  [FIB IPv4]           (@ref rte_fib.h),
1340c6bd470Sfengbojiang  [FIB IPv6]           (@ref rte_fib6.h)
1350c6bd470Sfengbojiang
136a9643ea8Slogwang- **hashes**:
137a9643ea8Slogwang  [hash]               (@ref rte_hash.h),
138a9643ea8Slogwang  [jhash]              (@ref rte_jhash.h),
139a9643ea8Slogwang  [thash]              (@ref rte_thash.h),
140a9643ea8Slogwang  [FBK hash]           (@ref rte_fbk_hash.h),
141a9643ea8Slogwang  [CRC hash]           (@ref rte_hash_crc.h)
142a9643ea8Slogwang
1432bfe3f2eSlogwang- **classification**
1442bfe3f2eSlogwang  [reorder]            (@ref rte_reorder.h),
1452bfe3f2eSlogwang  [distributor]        (@ref rte_distributor.h),
1462bfe3f2eSlogwang  [EFD]                (@ref rte_efd.h),
1472bfe3f2eSlogwang  [ACL]                (@ref rte_acl.h),
1482bfe3f2eSlogwang  [member]             (@ref rte_member.h),
149d30ea906Sjfb8856606  [flow classify]      (@ref rte_flow_classify.h),
150d30ea906Sjfb8856606  [BPF]                (@ref rte_bpf.h)
1512bfe3f2eSlogwang
152a9643ea8Slogwang- **containers**:
153a9643ea8Slogwang  [mbuf]               (@ref rte_mbuf.h),
154d30ea906Sjfb8856606  [mbuf pool ops]      (@ref rte_mbuf_pool_ops.h),
155a9643ea8Slogwang  [ring]               (@ref rte_ring.h),
1564418919fSjohnjiang  [stack]              (@ref rte_stack.h),
157a9643ea8Slogwang  [tailq]              (@ref rte_tailq.h),
1582bfe3f2eSlogwang  [bitmap]             (@ref rte_bitmap.h)
159a9643ea8Slogwang
160a9643ea8Slogwang- **packet framework**:
161a9643ea8Slogwang  * [port]             (@ref rte_port.h):
162a9643ea8Slogwang    [ethdev]           (@ref rte_port_ethdev.h),
163a9643ea8Slogwang    [ring]             (@ref rte_port_ring.h),
164a9643ea8Slogwang    [frag]             (@ref rte_port_frag.h),
165a9643ea8Slogwang    [reass]            (@ref rte_port_ras.h),
166a9643ea8Slogwang    [sched]            (@ref rte_port_sched.h),
167a9643ea8Slogwang    [kni]              (@ref rte_port_kni.h),
168a9643ea8Slogwang    [src/sink]         (@ref rte_port_source_sink.h)
169a9643ea8Slogwang  * [table]            (@ref rte_table.h):
170a9643ea8Slogwang    [lpm IPv4]         (@ref rte_table_lpm.h),
171a9643ea8Slogwang    [lpm IPv6]         (@ref rte_table_lpm_ipv6.h),
172a9643ea8Slogwang    [ACL]              (@ref rte_table_acl.h),
173a9643ea8Slogwang    [hash]             (@ref rte_table_hash.h),
174a9643ea8Slogwang    [array]            (@ref rte_table_array.h),
175a9643ea8Slogwang    [stub]             (@ref rte_table_stub.h)
176a9643ea8Slogwang  * [pipeline]         (@ref rte_pipeline.h)
177d30ea906Sjfb8856606    [port_in_action]   (@ref rte_port_in_action.h)
178d30ea906Sjfb8856606    [table_action]     (@ref rte_table_action.h)
179*2d9fd380Sjfb8856606  * SWX pipeline:
180*2d9fd380Sjfb8856606    [control]          (@ref rte_swx_ctl.h),
181*2d9fd380Sjfb8856606    [extern]           (@ref rte_swx_extern.h),
182*2d9fd380Sjfb8856606    [pipeline]         (@ref rte_swx_pipeline.h)
183*2d9fd380Sjfb8856606  * SWX port:
184*2d9fd380Sjfb8856606    [port]             (@ref rte_swx_port.h),
185*2d9fd380Sjfb8856606    [ethdev]           (@ref rte_swx_port_ethdev.h),
186*2d9fd380Sjfb8856606    [src/sink]         (@ref rte_swx_port_source_sink.h)
187*2d9fd380Sjfb8856606  * SWX table:
188*2d9fd380Sjfb8856606    [table]            (@ref rte_swx_table.h),
189*2d9fd380Sjfb8856606    [table_em]         (@ref rte_swx_table_em.h)
190*2d9fd380Sjfb8856606  * [graph]            (@ref rte_graph.h):
191*2d9fd380Sjfb8856606    [graph_worker]     (@ref rte_graph_worker.h)
192*2d9fd380Sjfb8856606  * graph_nodes:
193*2d9fd380Sjfb8856606    [eth_node]         (@ref rte_node_eth_api.h),
194*2d9fd380Sjfb8856606    [ip4_node]         (@ref rte_node_ip4_api.h)
195a9643ea8Slogwang
196a9643ea8Slogwang- **basic**:
197*2d9fd380Sjfb8856606  [bitops]             (@ref rte_bitops.h),
198a9643ea8Slogwang  [approx fraction]    (@ref rte_approx.h),
199a9643ea8Slogwang  [random]             (@ref rte_random.h),
200a9643ea8Slogwang  [config file]        (@ref rte_cfgfile.h),
201a9643ea8Slogwang  [key/value args]     (@ref rte_kvargs.h),
202a9643ea8Slogwang  [string]             (@ref rte_string_fns.h)
203a9643ea8Slogwang
204a9643ea8Slogwang- **debug**:
205a9643ea8Slogwang  [jobstats]           (@ref rte_jobstats.h),
206d30ea906Sjfb8856606  [telemetry]          (@ref rte_telemetry.h),
2072bfe3f2eSlogwang  [pdump]              (@ref rte_pdump.h),
208a9643ea8Slogwang  [hexdump]            (@ref rte_hexdump.h),
209a9643ea8Slogwang  [debug]              (@ref rte_debug.h),
210a9643ea8Slogwang  [log]                (@ref rte_log.h),
211*2d9fd380Sjfb8856606  [errno]              (@ref rte_errno.h),
212*2d9fd380Sjfb8856606  [trace]              (@ref rte_trace.h),
213*2d9fd380Sjfb8856606  [trace_point]        (@ref rte_trace_point.h)
214a9643ea8Slogwang
215a9643ea8Slogwang- **misc**:
216a9643ea8Slogwang  [EAL config]         (@ref rte_eal.h),
217a9643ea8Slogwang  [common]             (@ref rte_common.h),
2184418919fSjohnjiang  [experimental APIs]  (@ref rte_compat.h),
2194418919fSjohnjiang  [ABI versioning]     (@ref rte_function_versioning.h),
220a9643ea8Slogwang  [version]            (@ref rte_version.h)
221