From: Sivaprasad Tummala <sivaprasad.tumm...@amd.com> Add power management feature support to eventdev_pipeline sample app.
Signed-off-by: Sivaprasad Tummala <sivaprasad.tumm...@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(-) diff --git a/examples/eventdev_pipeline/main.c b/examples/eventdev_pipeline/main.c index 8d6c90f15d..bd6d568b78 100644 --- a/examples/eventdev_pipeline/main.c +++ b/examples/eventdev_pipeline/main.c @@ -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) { diff --git a/examples/eventdev_pipeline/pipeline_common.h b/examples/eventdev_pipeline/pipeline_common.h index 28b6ab85ff..b33162adfb 100644 --- a/examples/eventdev_pipeline/pipeline_common.h +++ b/examples/eventdev_pipeline/pipeline_common.h @@ -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 diff --git a/examples/eventdev_pipeline/pipeline_worker_generic.c b/examples/eventdev_pipeline/pipeline_worker_generic.c index 783f68c91e..22d644bd51 100644 --- a/examples/eventdev_pipeline/pipeline_worker_generic.c +++ b/examples/eventdev_pipeline/pipeline_worker_generic.c @@ -6,6 +6,7 @@ #include <stdlib.h> +#include <rte_power_pmd_mgmt.h> #include "pipeline_common.h" static __rte_always_inline int -- 2.34.1