cryptodev: add elliptic curve Diffie-Hellman
[dpdk.git] / doc / api / doxy-api-index.md
1 API
2 ===
3
4 <!--
5   SPDX-License-Identifier: BSD-3-Clause
6   Copyright(c) 2013-2017 6WIND S.A.
7 -->
8
9 The public API headers are grouped by topics:
10
11 - **device**:
12   [dev](@ref rte_dev.h),
13   [ethdev](@ref rte_ethdev.h),
14   [ethctrl](@ref rte_eth_ctrl.h),
15   [rte_flow](@ref rte_flow.h),
16   [rte_tm](@ref rte_tm.h),
17   [rte_mtr](@ref rte_mtr.h),
18   [bbdev](@ref rte_bbdev.h),
19   [cryptodev](@ref rte_cryptodev.h),
20   [security](@ref rte_security.h),
21   [compressdev](@ref rte_compressdev.h),
22   [compress](@ref rte_comp.h),
23   [regexdev](@ref rte_regexdev.h),
24   [dmadev](@ref rte_dmadev.h),
25   [eventdev](@ref rte_eventdev.h),
26   [event_eth_rx_adapter](@ref rte_event_eth_rx_adapter.h),
27   [event_eth_tx_adapter](@ref rte_event_eth_tx_adapter.h),
28   [event_timer_adapter](@ref rte_event_timer_adapter.h),
29   [event_crypto_adapter](@ref rte_event_crypto_adapter.h),
30   [rawdev](@ref rte_rawdev.h),
31   [metrics](@ref rte_metrics.h),
32   [bitrate](@ref rte_bitrate.h),
33   [latency](@ref rte_latencystats.h),
34   [devargs](@ref rte_devargs.h),
35   [PCI](@ref rte_pci.h),
36   [vdev](@ref rte_bus_vdev.h),
37   [vfio](@ref rte_vfio.h)
38
39 - **device specific**:
40   [softnic](@ref rte_eth_softnic.h),
41   [bond](@ref rte_eth_bond.h),
42   [vhost](@ref rte_vhost.h),
43   [vdpa](@ref rte_vdpa.h),
44   [KNI](@ref rte_kni.h),
45   [ixgbe](@ref rte_pmd_ixgbe.h),
46   [i40e](@ref rte_pmd_i40e.h),
47   [ice](@ref rte_pmd_ice.h),
48   [iavf](@ref rte_pmd_iavf.h),
49   [ioat](@ref rte_ioat_rawdev.h),
50   [bnxt](@ref rte_pmd_bnxt.h),
51   [cnxk](@ref rte_pmd_cnxk.h),
52   [dpaa](@ref rte_pmd_dpaa.h),
53   [dpaa2](@ref rte_pmd_dpaa2.h),
54   [mlx5](@ref rte_pmd_mlx5.h),
55   [dpaa2_mempool](@ref rte_dpaa2_mempool.h),
56   [dpaa2_cmdif](@ref rte_pmd_dpaa2_cmdif.h),
57   [dpaa2_qdma](@ref rte_pmd_dpaa2_qdma.h),
58   [crypto_scheduler](@ref rte_cryptodev_scheduler.h),
59   [dlb2](@ref rte_pmd_dlb2.h),
60   [ifpga](@ref rte_pmd_ifpga.h)
61
62 - **memory**:
63   [memseg](@ref rte_memory.h),
64   [memzone](@ref rte_memzone.h),
65   [mempool](@ref rte_mempool.h),
66   [malloc](@ref rte_malloc.h),
67   [memcpy](@ref rte_memcpy.h)
68
69 - **timers**:
70   [cycles](@ref rte_cycles.h),
71   [timer](@ref rte_timer.h),
72   [alarm](@ref rte_alarm.h)
73
74 - **locks**:
75   [atomic](@ref rte_atomic.h),
76   [mcslock](@ref rte_mcslock.h),
77   [pflock](@ref rte_pflock.h),
78   [rwlock](@ref rte_rwlock.h),
79   [spinlock](@ref rte_spinlock.h),
80   [ticketlock](@ref rte_ticketlock.h),
81   [RCU](@ref rte_rcu_qsbr.h)
82
83 - **CPU arch**:
84   [branch prediction](@ref rte_branch_prediction.h),
85   [cache prefetch](@ref rte_prefetch.h),
86   [SIMD](@ref rte_vect.h),
87   [byte order](@ref rte_byteorder.h),
88   [CPU flags](@ref rte_cpuflags.h),
89   [CPU pause](@ref rte_pause.h),
90   [I/O access](@ref rte_io.h),
91   [power management](@ref rte_power_intrinsics.h)
92
93 - **CPU multicore**:
94   [interrupts](@ref rte_interrupts.h),
95   [launch](@ref rte_launch.h),
96   [lcore](@ref rte_lcore.h),
97   [per-lcore](@ref rte_per_lcore.h),
98   [service cores](@ref rte_service.h),
99   [keepalive](@ref rte_keepalive.h),
100   [power/freq](@ref rte_power.h),
101   [PMD power](@ref rte_power_pmd_mgmt.h)
102
103 - **layers**:
104   [ethernet](@ref rte_ether.h),
105   [ARP](@ref rte_arp.h),
106   [HIGIG](@ref rte_higig.h),
107   [ICMP](@ref rte_icmp.h),
108   [ESP](@ref rte_esp.h),
109   [IPsec](@ref rte_ipsec.h),
110   [IPsec group](@ref rte_ipsec_group.h),
111   [IPsec SA](@ref rte_ipsec_sa.h),
112   [IPsec SAD](@ref rte_ipsec_sad.h),
113   [IP](@ref rte_ip.h),
114   [frag/reass](@ref rte_ip_frag.h),
115   [SCTP](@ref rte_sctp.h),
116   [TCP](@ref rte_tcp.h),
117   [UDP](@ref rte_udp.h),
118   [GTP](@ref rte_gtp.h),
119   [GRO](@ref rte_gro.h),
120   [GSO](@ref rte_gso.h),
121   [GRE](@ref rte_gre.h),
122   [MPLS](@ref rte_mpls.h),
123   [VXLAN](@ref rte_vxlan.h),
124   [Geneve](@ref rte_geneve.h),
125   [eCPRI](@ref rte_ecpri.h),
126   [L2TPv2](@ref rte_l2tpv2.h),
127   [PPP](@ref rte_ppp.h)
128
129 - **QoS**:
130   [metering](@ref rte_meter.h),
131   [scheduler](@ref rte_sched.h),
132   [RED congestion](@ref rte_red.h)
133
134 - **routing**:
135   [LPM IPv4 route](@ref rte_lpm.h),
136   [LPM IPv6 route](@ref rte_lpm6.h),
137   [RIB IPv4](@ref rte_rib.h),
138   [RIB IPv6](@ref rte_rib6.h),
139   [FIB IPv4](@ref rte_fib.h),
140   [FIB IPv6](@ref rte_fib6.h)
141
142 - **hashes**:
143   [hash](@ref rte_hash.h),
144   [jhash](@ref rte_jhash.h),
145   [thash](@ref rte_thash.h),
146   [thash_gfni](@ref rte_thash_gfni.h),
147   [FBK hash](@ref rte_fbk_hash.h),
148   [CRC hash](@ref rte_hash_crc.h)
149
150 - **classification**
151   [reorder](@ref rte_reorder.h),
152   [distributor](@ref rte_distributor.h),
153   [EFD](@ref rte_efd.h),
154   [ACL](@ref rte_acl.h),
155   [member](@ref rte_member.h),
156   [flow classify](@ref rte_flow_classify.h),
157   [BPF](@ref rte_bpf.h)
158
159 - **containers**:
160   [mbuf](@ref rte_mbuf.h),
161   [mbuf pool ops](@ref rte_mbuf_pool_ops.h),
162   [ring](@ref rte_ring.h),
163   [stack](@ref rte_stack.h),
164   [tailq](@ref rte_tailq.h),
165   [bitmap](@ref rte_bitmap.h)
166
167 - **packet framework**:
168   * [port](@ref rte_port.h):
169     [ethdev](@ref rte_port_ethdev.h),
170     [ring](@ref rte_port_ring.h),
171     [frag](@ref rte_port_frag.h),
172     [reass](@ref rte_port_ras.h),
173     [sched](@ref rte_port_sched.h),
174     [kni](@ref rte_port_kni.h),
175     [src/sink](@ref rte_port_source_sink.h)
176   * [table](@ref rte_table.h):
177     [lpm IPv4](@ref rte_table_lpm.h),
178     [lpm IPv6](@ref rte_table_lpm_ipv6.h),
179     [ACL](@ref rte_table_acl.h),
180     [hash](@ref rte_table_hash.h),
181     [array](@ref rte_table_array.h),
182     [stub](@ref rte_table_stub.h)
183   * [pipeline](@ref rte_pipeline.h)
184     [port_in_action](@ref rte_port_in_action.h)
185     [table_action](@ref rte_table_action.h)
186   * SWX pipeline:
187     [control](@ref rte_swx_ctl.h),
188     [extern](@ref rte_swx_extern.h),
189     [pipeline](@ref rte_swx_pipeline.h)
190   * SWX port:
191     [port](@ref rte_swx_port.h),
192     [ethdev](@ref rte_swx_port_ethdev.h),
193     [fd](@ref rte_swx_port_fd.h),
194     [ring](@ref rte_swx_port_ring.h),
195     [src/sink](@ref rte_swx_port_source_sink.h)
196   * SWX table:
197     [table](@ref rte_swx_table.h),
198     [table_em](@ref rte_swx_table_em.h)
199     [table_wm](@ref rte_swx_table_wm.h)
200   * [graph](@ref rte_graph.h):
201     [graph_worker](@ref rte_graph_worker.h)
202   * graph_nodes:
203     [eth_node](@ref rte_node_eth_api.h),
204     [ip4_node](@ref rte_node_ip4_api.h)
205
206 - **basic**:
207   [bitops](@ref rte_bitops.h),
208   [approx fraction](@ref rte_approx.h),
209   [random](@ref rte_random.h),
210   [config file](@ref rte_cfgfile.h),
211   [key/value args](@ref rte_kvargs.h),
212   [string](@ref rte_string_fns.h)
213
214 - **debug**:
215   [jobstats](@ref rte_jobstats.h),
216   [telemetry](@ref rte_telemetry.h),
217   [pcapng](@ref rte_pcapng.h),
218   [pdump](@ref rte_pdump.h),
219   [hexdump](@ref rte_hexdump.h),
220   [debug](@ref rte_debug.h),
221   [log](@ref rte_log.h),
222   [errno](@ref rte_errno.h),
223   [trace](@ref rte_trace.h),
224   [trace_point](@ref rte_trace_point.h)
225
226 - **misc**:
227   [EAL config](@ref rte_eal.h),
228   [common](@ref rte_common.h),
229   [experimental APIs](@ref rte_compat.h),
230   [ABI versioning](@ref rte_function_versioning.h),
231   [version](@ref rte_version.h)