rte_power.h(3) | DPDK | rte_power.h(3) |
NAME¶
rte_power.h
SYNOPSIS¶
#include <rte_common.h>
#include <rte_log.h>
#include <rte_power_guest_channel.h>
Data Structures¶
struct rte_power_core_capabilities
Typedefs¶
typedef uint32_t(* rte_power_freqs_t) (unsigned int
lcore_id, uint32_t *freqs, uint32_t num)
typedef uint32_t(* rte_power_get_freq_t) (unsigned int lcore_id)
typedef int(* rte_power_set_freq_t) (unsigned int lcore_id,
uint32_t index)
typedef int(* rte_power_freq_change_t) (unsigned int lcore_id)
typedef int(* rte_power_get_capabilities_t) (unsigned int
lcore_id, struct rte_power_core_capabilities *caps)
Functions¶
int rte_power_check_env_supported (enum
power_management_env env)
int rte_power_set_env (enum power_management_env env)
void rte_power_unset_env (void)
enum power_management_env rte_power_get_env (void)
int rte_power_init (unsigned int lcore_id)
int rte_power_exit (unsigned int lcore_id)
Variables¶
rte_power_freq_change_t rte_power_freq_up
rte_power_freq_change_t rte_power_freq_down
rte_power_freq_change_t rte_power_freq_max
rte_power_freq_change_t rte_power_freq_min
rte_power_freq_change_t rte_power_turbo_status
rte_power_freq_change_t rte_power_freq_enable_turbo
rte_power_freq_change_t rte_power_freq_disable_turbo
Detailed Description¶
RTE Power Management
Definition in file rte_power.h.
Typedef Documentation¶
typedef uint32_t(* rte_power_freqs_t) (unsigned int lcore_id, uint32_t *freqs, uint32_t num)¶
Get the available frequencies of a specific lcore. Function pointer definition. Review each environments specific documentation for usage.
Parameters:
freqs The buffer array to save the frequencies.
num The number of frequencies to get.
Returns:
Definition at line 111 of file rte_power.h.
typedef uint32_t(* rte_power_get_freq_t) (unsigned int lcore_id)¶
Return the current index of available frequencies of a specific lcore. Function pointer definition. Review each environments specific documentation for usage.
Parameters:
Returns:
Definition at line 127 of file rte_power.h.
typedef int(* rte_power_set_freq_t) (unsigned int lcore_id, uint32_t index)¶
Set the new frequency for a specific lcore by indicating the index of available frequencies. Function pointer definition. Review each environments specific documentation for usage.
Parameters:
index The index of available frequencies.
Returns:
- 1 on success with frequency changed.
- 0 on success without frequency changed.
- Negative on error.
Definition at line 147 of file rte_power.h.
typedef int(* rte_power_freq_change_t) (unsigned int lcore_id)¶
Function pointer definition for generic frequency change functions. Review each environments specific documentation for usage.
Parameters:
Returns:
- 1 on success with frequency changed.
- 0 on success without frequency changed.
- Negative on error.
Definition at line 163 of file rte_power.h.
typedef int(* rte_power_get_capabilities_t) (unsigned int lcore_id, struct rte_power_core_capabilities *caps)¶
Returns power capabilities for a specific lcore. Function pointer definition. Review each environments specific documentation for usage.
Parameters:
caps pointer to rte_power_core_capabilities object.
Returns:
- 0 on success.
- Negative on error.
Definition at line 238 of file rte_power.h.
Function Documentation¶
int rte_power_check_env_supported (enum power_management_env env)¶
Check if a specific power management environment type is supported on a currently running system.
Parameters:
Returns:
- 1 if supported
- 0 if unsupported
- -1 if error, with rte_errno indicating reason for error.
int rte_power_set_env (enum power_management_env env)¶
Set the default power management implementation. If this is not called prior to rte_power_init(), then auto-detect of the environment will take place. It is thread safe. New env can be set only in uninitialized state (thus rte_power_unset_env must be called if different env was already set).
Parameters:
Returns:
- 0 on success.
- Negative on error.
void rte_power_unset_env (void)¶
Unset the global environment configuration. This can only be called after all threads have completed.
enum power_management_env rte_power_get_env (void)¶
Get the default power management implementation.
Returns:
int rte_power_init (unsigned int lcore_id)¶
Initialize power management for a specific lcore. If rte_power_set_env() has not been called then an auto-detect of the environment will start and initialise the corresponding resources.
Parameters:
Returns:
- 0 on success.
- Negative on error.
int rte_power_exit (unsigned int lcore_id)¶
Exit power management on a specific lcore. This will call the environment dependent exit function.
Parameters:
Returns:
- 0 on success.
- Negative on error.
Variable Documentation¶
rte_power_freq_change_t rte_power_freq_up¶
Scale up the frequency of a specific lcore according to the available frequencies. Review each environments specific documentation for usage.
rte_power_freq_change_t rte_power_freq_down¶
Scale down the frequency of a specific lcore according to the available frequencies. Review each environments specific documentation for usage.
rte_power_freq_change_t rte_power_freq_max¶
Scale up the frequency of a specific lcore to the highest according to the available frequencies. Review each environments specific documentation for usage.
rte_power_freq_change_t rte_power_freq_min¶
Scale down the frequency of a specific lcore to the lowest according to the available frequencies. Review each environments specific documentation for usage..
rte_power_freq_change_t rte_power_turbo_status¶
Query the Turbo Boost status of a specific lcore. Review each environments specific documentation for usage..
rte_power_freq_change_t rte_power_freq_enable_turbo¶
Enable Turbo Boost for this lcore. Review each environments specific documentation for usage..
rte_power_freq_change_t rte_power_freq_disable_turbo¶
Disable Turbo Boost for this lcore. Review each environments specific documentation for usage..
Author¶
Generated automatically by Doxygen for DPDK from the source code.
Thu May 23 2024 | Version 23.11.0 |