This is an automated email from the ASF dual-hosted git repository.

acassis pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 1e2f9745cb811b807544e2917e08ec2f2da5be44
Author: guanyi3 <[email protected]>
AuthorDate: Tue Sep 30 12:15:42 2025 +0800

    drivers/devfreq: remove default governor
    
    
    It's better not to use global governor, as modifying one device will cause 
all devices' governor to be modified.
    
    Signed-off-by: guanyi3 <[email protected]>
---
 drivers/devfreq/Kconfig               | 21 ---------------------
 drivers/devfreq/devfreq.c             | 11 ++++++-----
 drivers/devfreq/devfreq_performance.c |  6 +-----
 drivers/devfreq/devfreq_powersave.c   |  6 +-----
 include/nuttx/devfreq.h               |  9 +++------
 5 files changed, 11 insertions(+), 42 deletions(-)

diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
index cd0b562913f..509d6238d2d 100644
--- a/drivers/devfreq/Kconfig
+++ b/drivers/devfreq/Kconfig
@@ -12,27 +12,6 @@ config DEVFREQ
 
 if DEVFREQ
 
-choice
-       prompt "DEVFREQ_DEFAULT_GOVERNOR"
-       default DEVFREQ_DEFAULT_GOV_PERFORMANCE
-
-config DEVFREQ_DEFAULT_GOV_PERFORMANCE
-       bool "devfreq_performance"
-       ---help---
-               devfreq performance governor, always choose the highest 
frequency
-
-config DEVFREQ_DEFAULT_GOV_POWERSAVE
-       bool "devfreq_powersave"
-       ---help---
-               devfreq powersave governor, always choose the lowest frequency
-
-config DEVFREQ_DEFAULT_GOV_PASSIVE
-       bool "devfreq_passive"
-       ---help---
-               devfreq passive governor, a device-defined governor
-
-endchoice
-
 config DEVFREQ_PROCFS
        bool "devfreq_procfs"
        default n
diff --git a/drivers/devfreq/devfreq.c b/drivers/devfreq/devfreq.c
index c2116315b5c..28eaa2b6096 100644
--- a/drivers/devfreq/devfreq.c
+++ b/drivers/devfreq/devfreq.c
@@ -485,6 +485,9 @@ FAR struct devfreq_s *devfreq_register(
   devfreq->priv       = priv;
   devfreq->suspended  = false;
   devfreq->freq_table = driver->get_table(devfreq);
+  devfreq->min        = 0;
+  devfreq->max        = UINT32_MAX;
+  devfreq->cur        = driver->get_frequency(devfreq);
   if (!devfreq->freq_table)
     {
       goto out;
@@ -497,13 +500,11 @@ FAR struct devfreq_s *devfreq_register(
 
   if (!governor)
     {
-      devfreq->governor = devfreq_default_governor();
-    }
-  else
-    {
-      devfreq->governor = governor;
+      goto out;
     }
 
+  devfreq->governor = governor;
+
   if (devfreq_init_governor(devfreq) < 0)
     {
       goto out;
diff --git a/drivers/devfreq/devfreq_performance.c 
b/drivers/devfreq/devfreq_performance.c
index 5e582607f9e..1b39ce3341c 100644
--- a/drivers/devfreq/devfreq_performance.c
+++ b/drivers/devfreq/devfreq_performance.c
@@ -24,8 +24,6 @@
 
 #include <nuttx/devfreq.h>
 
-#ifdef CONFIG_DEVFREQ_DEFAULT_GOV_PERFORMANCE
-
 /****************************************************************************
  * Private Function Prototypes
  ****************************************************************************/
@@ -55,9 +53,7 @@ static uint32_t devfreq_performance_limit(FAR struct 
devfreq_s *devfreq)
  * Public Functions
  ****************************************************************************/
 
-FAR struct devfreq_governor_s *devfreq_default_governor(void)
+FAR struct devfreq_governor_s *devfreq_performance(void)
 {
   return &g_devfreq_gov_performance;
 }
-
-#endif /* CONFIG_DEVFREQ_DEFAULT_GOV_PERFORMANCE */
diff --git a/drivers/devfreq/devfreq_powersave.c 
b/drivers/devfreq/devfreq_powersave.c
index bc4e991dd12..6d272c1753a 100644
--- a/drivers/devfreq/devfreq_powersave.c
+++ b/drivers/devfreq/devfreq_powersave.c
@@ -24,8 +24,6 @@
 
 #include <nuttx/devfreq.h>
 
-#ifdef CONFIG_DEVFREQ_DEFAULT_GOV_POWERSAVE
-
 /****************************************************************************
  * Private Function Prototypes
  ****************************************************************************/
@@ -55,9 +53,7 @@ static uint32_t devfreq_powersave_limit(FAR struct devfreq_s 
*devfreq)
  * Public Functions
  ****************************************************************************/
 
-FAR struct devfreq_governor_s *devfreq_default_governor(void)
+FAR struct devfreq_governor_s *devfreq_powersave(void)
 {
   return &g_devfreq_gov_powersave;
 }
-
-#endif /* CONFIG_DEVFREQ_DEFAULT_GOV_POWERSAVE */
diff --git a/include/nuttx/devfreq.h b/include/nuttx/devfreq.h
index 2487a05bf1e..426d3fb585f 100644
--- a/include/nuttx/devfreq.h
+++ b/include/nuttx/devfreq.h
@@ -222,7 +222,7 @@ int devfreq_unregister_notifier(FAR struct devfreq_s 
*devfreq,
                                 FAR struct notifier_block *nb);
 
 /****************************************************************************
- * Name: devfreq_get
+ * Name: devfreq_get_frequency
  *
  * Description:
  *   get the current device frequency (in kHz)
@@ -342,11 +342,8 @@ FAR struct devfreq_s *devfreq_find_by_index(size_t index);
 
 void devfreq_procfs_initialize(void);
 
-#ifdef CONFIG_DEVFREQ_DEFAULT_GOV_PASSIVE
-#define devfreq_default_governor() NULL
-#else
-FAR struct devfreq_governor_s *devfreq_default_governor(void);
-#endif
+FAR struct devfreq_governor_s *devfreq_performance(void);
+FAR struct devfreq_governor_s *devfreq_powersave(void);
 
 #undef EXTERN
 #if defined(__cplusplus)

Reply via email to