intrte_power_check_env_supported(enumpower_management_envenv)
Check if a specific power management environment type is supported on a currently running system.
Parametersenv The environment type to check support for.
Returns
• 1 if supported
• 0 if unsupported
• -1 if error, with rte_errno indicating reason for error.
intrte_power_set_env(enumpower_management_envenv)
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).
Parametersenv env. The environment in which to initialise Power Management for.
Returns
• 0 on success.
• Negative on error.
voidrte_power_unset_env(void)
Unset the global environment configuration. This can only be called after all threads have completed.
enumpower_management_envrte_power_get_env(void)
Get the default power management implementation.
Returns
power_management_env The configured environment.
intrte_power_init(unsignedintlcore_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.
Parameterslcore_id lcore id.
Returns
• 0 on success.
• Negative on error.
intrte_power_exit(unsignedintlcore_id)
Exit power management on a specific lcore. This will call the environment dependent exit function.
Parameterslcore_id lcore id.
Returns
• 0 on success.
• Negative on error.
uint32_trte_power_freqs(unsignedintlcore_id,uint32_t*freqs,uint32_tnum)
Get the available frequencies of a specific lcore. Function pointer definition. Review each environments
specific documentation for usage.
Parameterslcore_id lcore id.
freqs The buffer array to save the frequencies.
num The number of frequencies to get.
Returns
The number of available frequencies.
uint32_trte_power_get_freq(unsignedintlcore_id)
Return the current index of available frequencies of a specific lcore. Function pointer definition.
Review each environments specific documentation for usage.
Parameterslcore_id lcore id.
Returns
The current index of available frequencies.
uint32_trte_power_set_freq(unsignedintlcore_id,uint32_tindex)
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.
Parameterslcore_id lcore id.
index The index of available frequencies.
Returns
• 1 on success with frequency changed.
• 0 on success without frequency changed.
• Negative on error.
intrte_power_freq_up(unsignedintlcore_id)
Scale up the frequency of a specific lcore according to the available frequencies. Review each
environments specific documentation for usage.
Parameterslcore_id lcore id.
Returns
• 1 on success with frequency changed.
• 0 on success without frequency changed.
• Negative on error.
intrte_power_freq_down(unsignedintlcore_id)
Scale down the frequency of a specific lcore according to the available frequencies. Review each
environments specific documentation for usage.
Parameterslcore_id lcore id.
Returns
• 1 on success with frequency changed.
• 0 on success without frequency changed.
• Negative on error.
intrte_power_freq_max(unsignedintlcore_id)
Scale up the frequency of a specific lcore to the highest according to the available frequencies. Review
each environments specific documentation for usage.
Parameterslcore_id lcore id.
Returns
• 1 on success with frequency changed.
• 0 on success without frequency changed.
• Negative on error.
intrte_power_freq_min(unsignedintlcore_id)
Scale down the frequency of a specific lcore to the lowest according to the available frequencies. Review
each environments specific documentation for usage..
Parameterslcore_id lcore id.
Returns
• 1 on success with frequency changed.
• 0 on success without frequency changed.
• Negative on error.
intrte_power_turbo_status(unsignedintlcore_id)
Query the Turbo Boost status of a specific lcore. Review each environments specific documentation for
usage..
Parameterslcore_id lcore id.
Returns
• 1 turbo boost enabled.
• 0 turbo boost disabled.
• Negative on error.
intrte_power_freq_enable_turbo(unsignedintlcore_id)
Enable Turbo Boost for this lcore. Review each environments specific documentation for usage..
Parameterslcore_id lcore id.
Returns
• 0 on success.
• Negative on error.
intrte_power_freq_disable_turbo(unsignedintlcore_id)
Disable Turbo Boost for this lcore. Review each environments specific documentation for usage..
Parameterslcore_id lcore id.
Returns
• 0 on success.
• Negative on error.
intrte_power_get_capabilities(unsignedintlcore_id,structrte_power_core_capabilities*caps)
Returns power capabilities for a specific lcore. Function pointer definition. Review each environments
specific documentation for usage.
Parameterslcore_id lcore id.
caps pointer to rte_power_core_capabilities object.
Returns
• 0 on success.
• Negative on error.