xref: /dpdk/doc/api/doxy-api-index.md (revision 26fb45a32826900e109384aa3e377094e77fe708)
16b919b0fSThomas MonjalonAPI {#index}
26b919b0fSThomas Monjalon===
36b919b0fSThomas Monjalon
46b919b0fSThomas Monjalon<!--
56b919b0fSThomas Monjalon  BSD LICENSE
66b919b0fSThomas Monjalon
76b919b0fSThomas Monjalon  Copyright 2013 6WIND S.A.
86b919b0fSThomas Monjalon
96b919b0fSThomas Monjalon  Redistribution and use in source and binary forms, with or without
106b919b0fSThomas Monjalon  modification, are permitted provided that the following conditions
116b919b0fSThomas Monjalon  are met:
126b919b0fSThomas Monjalon
136b919b0fSThomas Monjalon    * Redistributions of source code must retain the above copyright
146b919b0fSThomas Monjalon      notice, this list of conditions and the following disclaimer.
156b919b0fSThomas Monjalon    * Redistributions in binary form must reproduce the above copyright
166b919b0fSThomas Monjalon      notice, this list of conditions and the following disclaimer in
176b919b0fSThomas Monjalon      the documentation and/or other materials provided with the
186b919b0fSThomas Monjalon      distribution.
196b919b0fSThomas Monjalon    * Neither the name of 6WIND S.A. nor the names of its
206b919b0fSThomas Monjalon      contributors may be used to endorse or promote products derived
216b919b0fSThomas Monjalon      from this software without specific prior written permission.
226b919b0fSThomas Monjalon
236b919b0fSThomas Monjalon  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
246b919b0fSThomas Monjalon  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
256b919b0fSThomas Monjalon  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
266b919b0fSThomas Monjalon  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
276b919b0fSThomas Monjalon  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
286b919b0fSThomas Monjalon  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
296b919b0fSThomas Monjalon  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
306b919b0fSThomas Monjalon  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
316b919b0fSThomas Monjalon  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
326b919b0fSThomas Monjalon  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
336b919b0fSThomas Monjalon  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
346b919b0fSThomas Monjalon-->
356b919b0fSThomas Monjalon
366b919b0fSThomas MonjalonThere are many libraries, so their headers may be grouped by topics:
376b919b0fSThomas Monjalon
386b919b0fSThomas Monjalon- **device**:
392b3f27eeSThomas Monjalon  [dev]                (@ref rte_dev.h),
406b919b0fSThomas Monjalon  [ethdev]             (@ref rte_ethdev.h),
412b3f27eeSThomas Monjalon  [ethctrl]            (@ref rte_eth_ctrl.h),
42b1a4b4cbSAdrien Mazarguil  [rte_flow]           (@ref rte_flow.h),
43b1a4b4cbSAdrien Mazarguil  [rte_flow_driver]    (@ref rte_flow_driver.h),
44d11b0f30SDeclan Doherty  [cryptodev]          (@ref rte_cryptodev.h),
456b919b0fSThomas Monjalon  [devargs]            (@ref rte_devargs.h),
46*26fb45a3SFerruh Yigit  [PCI]                (@ref rte_pci.h)
47*26fb45a3SFerruh Yigit
48*26fb45a3SFerruh Yigit- **device specific**:
496b919b0fSThomas Monjalon  [bond]               (@ref rte_eth_bond.h),
506b919b0fSThomas Monjalon  [vhost]              (@ref rte_virtio_net.h),
516b919b0fSThomas Monjalon  [KNI]                (@ref rte_kni.h),
52*26fb45a3SFerruh Yigit  [ixgbe]              (@ref rte_pmd_ixgbe.h),
53*26fb45a3SFerruh Yigit  [i40e]               (@ref rte_pmd_i40e.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),
696b919b0fSThomas Monjalon  [rwlock]             (@ref rte_rwlock.h),
706b919b0fSThomas Monjalon  [spinlock]           (@ref rte_spinlock.h)
716b919b0fSThomas Monjalon
726b919b0fSThomas Monjalon- **CPU arch**:
736b919b0fSThomas Monjalon  [branch prediction]  (@ref rte_branch_prediction.h),
746b919b0fSThomas Monjalon  [cache prefetch]     (@ref rte_prefetch.h),
7586c743cfSNelio Laranjeiro  [SIMD]               (@ref rte_vect.h),
766b919b0fSThomas Monjalon  [byte order]         (@ref rte_byteorder.h),
7769736db1SJerin Jacob  [CPU flags]          (@ref rte_cpuflags.h),
7869736db1SJerin Jacob  [I/O access]         (@ref rte_io.h)
796b919b0fSThomas Monjalon
806b919b0fSThomas Monjalon- **CPU multicore**:
816b919b0fSThomas Monjalon  [interrupts]         (@ref rte_interrupts.h),
826b919b0fSThomas Monjalon  [launch]             (@ref rte_launch.h),
836b919b0fSThomas Monjalon  [lcore]              (@ref rte_lcore.h),
846b919b0fSThomas Monjalon  [per-lcore]          (@ref rte_per_lcore.h),
856b919b0fSThomas Monjalon  [power/freq]         (@ref rte_power.h)
866b919b0fSThomas Monjalon
876b919b0fSThomas Monjalon- **layers**:
886b919b0fSThomas Monjalon  [ethernet]           (@ref rte_ether.h),
892b3f27eeSThomas Monjalon  [ARP]                (@ref rte_arp.h),
902b3f27eeSThomas Monjalon  [ICMP]               (@ref rte_icmp.h),
916b919b0fSThomas Monjalon  [IP]                 (@ref rte_ip.h),
926b919b0fSThomas Monjalon  [SCTP]               (@ref rte_sctp.h),
936b919b0fSThomas Monjalon  [TCP]                (@ref rte_tcp.h),
946b919b0fSThomas Monjalon  [UDP]                (@ref rte_udp.h),
956b919b0fSThomas Monjalon  [frag/reass]         (@ref rte_ip_frag.h),
962b3f27eeSThomas Monjalon  [LPM IPv4 route]     (@ref rte_lpm.h),
972b3f27eeSThomas Monjalon  [LPM IPv6 route]     (@ref rte_lpm6.h),
9856b6ef87SPablo de Lara  [ACL]                (@ref rte_acl.h),
9956b6ef87SPablo de Lara  [EFD]                (@ref rte_efd.h)
1006b919b0fSThomas Monjalon
1016b919b0fSThomas Monjalon- **QoS**:
1026b919b0fSThomas Monjalon  [metering]           (@ref rte_meter.h),
1036b919b0fSThomas Monjalon  [scheduler]          (@ref rte_sched.h),
1046b919b0fSThomas Monjalon  [RED congestion]     (@ref rte_red.h)
1056b919b0fSThomas Monjalon
1066b919b0fSThomas Monjalon- **hashes**:
1076b919b0fSThomas Monjalon  [hash]               (@ref rte_hash.h),
1086b919b0fSThomas Monjalon  [jhash]              (@ref rte_jhash.h),
1092b3f27eeSThomas Monjalon  [thash]              (@ref rte_thash.h),
1106b919b0fSThomas Monjalon  [FBK hash]           (@ref rte_fbk_hash.h),
1116b919b0fSThomas Monjalon  [CRC hash]           (@ref rte_hash_crc.h)
1126b919b0fSThomas Monjalon
1136b919b0fSThomas Monjalon- **containers**:
1146b919b0fSThomas Monjalon  [mbuf]               (@ref rte_mbuf.h),
1156b919b0fSThomas Monjalon  [ring]               (@ref rte_ring.h),
1166b919b0fSThomas Monjalon  [distributor]        (@ref rte_distributor.h),
1172b3f27eeSThomas Monjalon  [reorder]            (@ref rte_reorder.h),
1186b919b0fSThomas Monjalon  [tailq]              (@ref rte_tailq.h),
1192b3f27eeSThomas Monjalon  [bitmap]             (@ref rte_bitmap.h),
1206b919b0fSThomas Monjalon
1216b919b0fSThomas Monjalon- **packet framework**:
1226b919b0fSThomas Monjalon  * [port]             (@ref rte_port.h):
1236b919b0fSThomas Monjalon    [ethdev]           (@ref rte_port_ethdev.h),
1246b919b0fSThomas Monjalon    [ring]             (@ref rte_port_ring.h),
1256b919b0fSThomas Monjalon    [frag]             (@ref rte_port_frag.h),
1266b919b0fSThomas Monjalon    [reass]            (@ref rte_port_ras.h),
1276b919b0fSThomas Monjalon    [sched]            (@ref rte_port_sched.h),
1289fc37d1cSWeiJie Zhuang    [kni]              (@ref rte_port_kni.h),
1296b919b0fSThomas Monjalon    [src/sink]         (@ref rte_port_source_sink.h)
1306b919b0fSThomas Monjalon  * [table]            (@ref rte_table.h):
1316b919b0fSThomas Monjalon    [lpm IPv4]         (@ref rte_table_lpm.h),
1326b919b0fSThomas Monjalon    [lpm IPv6]         (@ref rte_table_lpm_ipv6.h),
1336b919b0fSThomas Monjalon    [ACL]              (@ref rte_table_acl.h),
1346b919b0fSThomas Monjalon    [hash]             (@ref rte_table_hash.h),
1356b919b0fSThomas Monjalon    [array]            (@ref rte_table_array.h),
1366b919b0fSThomas Monjalon    [stub]             (@ref rte_table_stub.h)
1376b919b0fSThomas Monjalon  * [pipeline]         (@ref rte_pipeline.h)
1386b919b0fSThomas Monjalon
1396b919b0fSThomas Monjalon- **basic**:
1406b919b0fSThomas Monjalon  [approx fraction]    (@ref rte_approx.h),
1416b919b0fSThomas Monjalon  [random]             (@ref rte_random.h),
1422b3f27eeSThomas Monjalon  [config file]        (@ref rte_cfgfile.h),
1436b919b0fSThomas Monjalon  [key/value args]     (@ref rte_kvargs.h),
1446b919b0fSThomas Monjalon  [string]             (@ref rte_string_fns.h)
1456b919b0fSThomas Monjalon
1466b919b0fSThomas Monjalon- **debug**:
1472b3f27eeSThomas Monjalon  [jobstats]           (@ref rte_jobstats.h),
1486d059e99SReshma Pattan  [pdump]              (@ref rte_pdump.h),
1492b3f27eeSThomas Monjalon  [hexdump]            (@ref rte_hexdump.h),
1506b919b0fSThomas Monjalon  [debug]              (@ref rte_debug.h),
1516b919b0fSThomas Monjalon  [log]                (@ref rte_log.h),
1526b919b0fSThomas Monjalon  [errno]              (@ref rte_errno.h)
1536b919b0fSThomas Monjalon
1546b919b0fSThomas Monjalon- **misc**:
1556b919b0fSThomas Monjalon  [EAL config]         (@ref rte_eal.h),
1566b919b0fSThomas Monjalon  [common]             (@ref rte_common.h),
1572b3f27eeSThomas Monjalon  [ABI compat]         (@ref rte_compat.h),
15875583b0dSRemy Horton  [keepalive]          (@ref rte_keepalive.h),
1596b919b0fSThomas Monjalon  [version]            (@ref rte_version.h)
160