[RFC,5/5] examples/eventdev_p: add eventdev power management
Checks
Commit Message
From: Sivaprasad Tummala <Sivaprasad.Tummala@amd.com>
Add power management feature support to eventdev_pipeline sample app.
Signed-off-by: Sivaprasad Tummala <Sivaprasad.Tummala@amd.com>
---
examples/eventdev_pipeline/main.c | 15 ++++++++++++++-
examples/eventdev_pipeline/pipeline_common.h | 1 +
.../eventdev_pipeline/pipeline_worker_generic.c | 1 +
3 files changed, 16 insertions(+), 1 deletion(-)
@@ -430,7 +430,20 @@ main(int argc, char **argv)
continue;
dump_core_info(lcore_id, worker_data, worker_idx);
-
+ {
+ if (fdata->worker_core[lcore_id]) {
+ err = rte_power_eventdev_pmgmt_port_enable(
+ lcore_id, worker_data[worker_idx].dev_id,
+ worker_data[worker_idx].port_id,
+ RTE_POWER_MGMT_TYPE_MONITOR);
+ if (err) {
+ RTE_LOG(ERR, POWER,
+ "Power Management enabled failed on core %u\n",
+ lcore_id);
+ continue;
+ }
+ }
+ }
err = rte_eal_remote_launch(fdata->cap.worker,
&worker_data[worker_idx], lcore_id);
if (err) {
@@ -19,6 +19,7 @@
#include <rte_event_eth_tx_adapter.h>
#include <rte_service.h>
#include <rte_service_component.h>
+#include <rte_power_pmd_mgmt.h>
#define MAX_NUM_STAGES 8
#define BATCH_SIZE 16
@@ -6,6 +6,7 @@
#include <stdlib.h>
+#include <rte_power_pmd_mgmt.h>
#include "pipeline_common.h"
static __rte_always_inline int