]> git.droids-corp.org - dpdk.git/blobdiff - lib/librte_power/rte_power.c
power: add environment capability probing
[dpdk.git] / lib / librte_power / rte_power.c
index 6b7722727550014c738b46a54c3bc8b5f642a4ca..98eaba9154552327f3d8902ccc591d26d8c74db0 100644 (file)
@@ -2,6 +2,7 @@
  * Copyright(c) 2010-2014 Intel Corporation
  */
 
+#include <rte_errno.h>
 #include <rte_spinlock.h>
 
 #include "rte_power.h"
@@ -43,6 +44,22 @@ reset_power_function_ptrs(void)
        rte_power_get_capabilities = NULL;
 }
 
+int
+rte_power_check_env_supported(enum power_management_env env)
+{
+       switch (env) {
+       case PM_ENV_ACPI_CPUFREQ:
+               return power_acpi_cpufreq_check_supported();
+       case PM_ENV_PSTATE_CPUFREQ:
+               return power_pstate_cpufreq_check_supported();
+       case PM_ENV_KVM_VM:
+               return power_kvm_vm_check_supported();
+       default:
+               rte_errno = EINVAL;
+               return -1;
+       }
+}
+
 int
 rte_power_set_env(enum power_management_env env)
 {