Provided by: dpdk-doc_24.11.2-2_all bug

NAME

       rte_power_cpufreq.h

SYNOPSIS

       #include <rte_common.h>
       #include <rte_log.h>
       #include 'power_cpufreq.h'

   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)
       uint32_t rte_power_freqs (unsigned int lcore_id, uint32_t *freqs, uint32_t num)
       uint32_t rte_power_get_freq (unsigned int lcore_id)
       uint32_t rte_power_set_freq (unsigned int lcore_id, uint32_t index)
       int rte_power_freq_up (unsigned int lcore_id)
       int rte_power_freq_down (unsigned int lcore_id)
       int rte_power_freq_max (unsigned int lcore_id)
       int rte_power_freq_min (unsigned int lcore_id)
       int rte_power_turbo_status (unsigned int lcore_id)
       int rte_power_freq_enable_turbo (unsigned int lcore_id)
       int rte_power_freq_disable_turbo (unsigned int lcore_id)
       int rte_power_get_capabilities (unsigned int lcore_id, struct rte_power_core_capabilities *caps)

Detailed Description

       CPU Frequency Management

       Definition in file rte_power_cpufreq.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
           env The environment type to check support for.

       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
           env env. The environment in which to initialise Power Management for.

       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
           power_management_env The configured environment.

   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
           lcore_id lcore id.

       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
           lcore_id lcore id.

       Returns

           • 0 on success.

           • Negative on error.

   uint32_t rte_power_freqs (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
           lcore_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_t rte_power_get_freq (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
           lcore_id lcore id.

       Returns
           The current index of available frequencies.

   uint32_t rte_power_set_freq (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
           lcore_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.

   int rte_power_freq_up (unsigned int lcore_id)
       Scale  up  the  frequency  of  a  specific  lcore  according  to  the  available frequencies. Review each
       environments specific documentation for usage.

       Parameters
           lcore_id lcore id.

       Returns

           • 1 on success with frequency changed.

           • 0 on success without frequency changed.

           • Negative on error.

   int rte_power_freq_down (unsigned int lcore_id)
       Scale down the frequency of a  specific  lcore  according  to  the  available  frequencies.  Review  each
       environments specific documentation for usage.

       Parameters
           lcore_id lcore id.

       Returns

           • 1 on success with frequency changed.

           • 0 on success without frequency changed.

           • Negative on error.

   int rte_power_freq_max (unsigned int lcore_id)
       Scale  up the frequency of a specific lcore to the highest according to the available frequencies. Review
       each environments specific documentation for usage.

       Parameters
           lcore_id lcore id.

       Returns

           • 1 on success with frequency changed.

           • 0 on success without frequency changed.

           • Negative on error.

   int rte_power_freq_min (unsigned int lcore_id)
       Scale down the frequency of a specific lcore to the lowest according to the available frequencies. Review
       each environments specific documentation for usage..

       Parameters
           lcore_id lcore id.

       Returns

           • 1 on success with frequency changed.

           • 0 on success without frequency changed.

           • Negative on error.

   int rte_power_turbo_status (unsigned int lcore_id)
       Query the Turbo Boost status of a specific lcore. Review each  environments  specific  documentation  for
       usage..

       Parameters
           lcore_id lcore id.

       Returns

           • 1 turbo boost enabled.

           • 0 turbo boost disabled.

           • Negative on error.

   int rte_power_freq_enable_turbo (unsigned int lcore_id)
       Enable Turbo Boost for this lcore. Review each environments specific documentation for usage..

       Parameters
           lcore_id lcore id.

       Returns

           • 0 on success.

           • Negative on error.

   int rte_power_freq_disable_turbo (unsigned int lcore_id)
       Disable Turbo Boost for this lcore. Review each environments specific documentation for usage..

       Parameters
           lcore_id lcore id.

       Returns

           • 0 on success.

           • Negative on error.

   int rte_power_get_capabilities (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
           lcore_id lcore id.
           caps pointer to rte_power_core_capabilities object.

       Returns

           • 0 on success.

           • Negative on error.

Author

       Generated automatically by Doxygen for DPDK from the source code.

DPDK                                             Version 24.11.2                          rte_power_cpufreq.h(3)