Hi Morten,
On 18-08-2026 17:40, Morten Brørup wrote:
From: Hemant Agrawal [mailto:[email protected]]
Sent: Tuesday, 18 August 2026 13.17
To: [email protected]; [email protected]; [email protected]
Subject: [PATCH v12 16/26] net/dpaa: add Tx rate limiting API
Add a DPAA PMD API to configure the transmit rate limit (rate and
burst) on a DPAA port, using the FMAN port rate limiter.
Signed-off-by: Hemant Agrawal <[email protected]>
---
diff --git a/drivers/net/dpaa/rte_pmd_dpaa.h
b/drivers/net/dpaa/rte_pmd_dpaa.h
index 0a57e2097a..680ff387f8 100644
--- a/drivers/net/dpaa/rte_pmd_dpaa.h
+++ b/drivers/net/dpaa/rte_pmd_dpaa.h
@@ -1,11 +1,12 @@
/* SPDX-License-Identifier: BSD-3-Clause
- * Copyright 2018 NXP
+ * Copyright 2018,2022 NXP
*/
#ifndef _PMD_DPAA_H_
#define _PMD_DPAA_H_
#include <stdint.h>
+#include <rte_compat.h>
/**
* @file rte_pmd_dpaa.h
@@ -33,4 +34,24 @@
int
rte_pmd_dpaa_set_tx_loopback(uint16_t port, uint8_t on);
+/**
+ * Set TX rate limit
+ *
+ * @param port_id
+ * The port identifier of the Ethernet device.
+ * @param burst
+ * Max burst size(KBytes) of the Ethernet device.
+ * 0 - Disable TX rate limit.
+ * @param rate
+ * Max rate(Kb/sec) of the Ethernet device.
+ * 0 - Disable TX rate limit.
+ * @return
+ * 0 - if successful.
+ * <0 - if failed, with proper error code.
+ */
+__rte_experimental
+int
+rte_pmd_dpaa_port_set_rate_limit(uint16_t port_id, uint16_t burst,
+ uint32_t rate);
+
#endif /* _PMD_DPAA_H_ */
--
2.25.1
We already have a generic API for per-queue TX rate limit:
rte_eth_set_queue_rate_limit().
Let's have a generic API for per-port TX rate limit, instead of a
device-specific API.
The per-queue API doesn't support burst size, but the per-port API could.
It could be noted in the API description that if a port doesn't support burst capacity,
the "burst" parameter will be ignored.
Yes, that is good idea. i will remove this patch from this series and
submit it separately with per-port rate limit API introduction in ethdev.