2017-12-19 15:49:03 +00:00
|
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
# Copyright(c) 2010-2017 Intel Corporation
|
2012-09-04 13:54:00 +01:00
|
|
|
|
|
|
|
include $(RTE_SDK)/mk/rte.vars.mk
|
|
|
|
|
|
|
|
#
|
|
|
|
# library name
|
|
|
|
#
|
2016-11-06 19:18:23 +01:00
|
|
|
LIB = librte_ethdev.a
|
2012-09-04 13:54:00 +01:00
|
|
|
|
2018-01-21 20:48:05 -05:00
|
|
|
CFLAGS += -DALLOW_EXPERIMENTAL_API
|
2012-09-04 13:54:00 +01:00
|
|
|
CFLAGS += -O3
|
|
|
|
CFLAGS += $(WERROR_FLAGS)
|
2017-10-12 18:04:21 +02:00
|
|
|
LDLIBS += -lrte_net -lrte_eal -lrte_mempool -lrte_ring
|
2018-12-20 12:16:08 +00:00
|
|
|
LDLIBS += -lrte_mbuf -lrte_kvargs -lrte_cmdline -lrte_meter
|
2012-09-04 13:54:00 +01:00
|
|
|
|
2017-08-31 14:42:43 +01:00
|
|
|
EXPORT_MAP := rte_ethdev_version.map
|
2015-02-02 12:40:20 -05:00
|
|
|
|
2019-03-29 17:52:13 +00:00
|
|
|
LIBABIVER := 12
|
2015-02-02 12:40:21 -05:00
|
|
|
|
2018-09-19 18:03:35 +02:00
|
|
|
SRCS-y += ethdev_private.c
|
2012-09-04 13:54:00 +01:00
|
|
|
SRCS-y += rte_ethdev.c
|
2018-09-19 18:03:36 +02:00
|
|
|
SRCS-y += rte_class_eth.c
|
2016-12-21 15:51:17 +01:00
|
|
|
SRCS-y += rte_flow.c
|
ethdev: add traffic management API
This patch introduces the generic ethdev API for the traffic manager
capability, which includes: hierarchical scheduling, traffic shaping,
congestion management, packet marking.
Main features:
- Exposed as ethdev plugin capability (similar to rte_flow)
- Capability query API per port, per level and per node
- Scheduling algorithms: Strict Priority (SP), Weighed Fair Queuing (WFQ)
- Traffic shaping: single/dual rate, private (per node) and shared (by
multiple nodes) shapers
- Congestion management for hierarchy leaf nodes: algorithms of tail drop,
head drop, WRED; private (per node) and shared (by multiple nodes) WRED
contexts
- Packet marking: IEEE 802.1q (VLAN DEI), IETF RFC 3168 (IPv4/IPv6 ECN for
TCP and SCTP), IETF RFC 2597 (IPv4 / IPv6 DSCP)
Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: Balasubramanian Manoharan <balasubramanian.manoharan@caviumnetworks.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2017-06-12 14:35:39 +01:00
|
|
|
SRCS-y += rte_tm.c
|
2017-10-13 13:22:16 +01:00
|
|
|
SRCS-y += rte_mtr.c
|
2017-09-22 17:52:29 +03:00
|
|
|
SRCS-y += ethdev_profile.c
|
2012-09-04 13:54:00 +01:00
|
|
|
|
|
|
|
#
|
|
|
|
# Export include files
|
|
|
|
#
|
|
|
|
SYMLINK-y-include += rte_ethdev.h
|
2018-01-22 00:16:22 +00:00
|
|
|
SYMLINK-y-include += rte_ethdev_driver.h
|
2018-01-22 00:16:23 +00:00
|
|
|
SYMLINK-y-include += rte_ethdev_core.h
|
2017-04-11 17:44:23 +02:00
|
|
|
SYMLINK-y-include += rte_ethdev_pci.h
|
2017-04-11 17:44:11 +02:00
|
|
|
SYMLINK-y-include += rte_ethdev_vdev.h
|
2014-10-20 13:40:32 +08:00
|
|
|
SYMLINK-y-include += rte_eth_ctrl.h
|
2015-07-16 09:25:34 -04:00
|
|
|
SYMLINK-y-include += rte_dev_info.h
|
2016-12-21 15:51:17 +01:00
|
|
|
SYMLINK-y-include += rte_flow.h
|
|
|
|
SYMLINK-y-include += rte_flow_driver.h
|
ethdev: add traffic management API
This patch introduces the generic ethdev API for the traffic manager
capability, which includes: hierarchical scheduling, traffic shaping,
congestion management, packet marking.
Main features:
- Exposed as ethdev plugin capability (similar to rte_flow)
- Capability query API per port, per level and per node
- Scheduling algorithms: Strict Priority (SP), Weighed Fair Queuing (WFQ)
- Traffic shaping: single/dual rate, private (per node) and shared (by
multiple nodes) shapers
- Congestion management for hierarchy leaf nodes: algorithms of tail drop,
head drop, WRED; private (per node) and shared (by multiple nodes) WRED
contexts
- Packet marking: IEEE 802.1q (VLAN DEI), IETF RFC 3168 (IPv4/IPv6 ECN for
TCP and SCTP), IETF RFC 2597 (IPv4 / IPv6 DSCP)
Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: Balasubramanian Manoharan <balasubramanian.manoharan@caviumnetworks.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2017-06-12 14:35:39 +01:00
|
|
|
SYMLINK-y-include += rte_tm.h
|
|
|
|
SYMLINK-y-include += rte_tm_driver.h
|
2017-10-13 13:22:16 +01:00
|
|
|
SYMLINK-y-include += rte_mtr.h
|
|
|
|
SYMLINK-y-include += rte_mtr_driver.h
|
2012-09-04 13:54:00 +01:00
|
|
|
|
|
|
|
include $(RTE_SDK)/mk/rte.lib.mk
|