root/drivers/cpufreq/cpufreq_powersave.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. cpufreq_gov_powersave_limits
  2. cpufreq_gov_powersave_init
  3. cpufreq_gov_powersave_exit
  4. cpufreq_default_governor

   1 // SPDX-License-Identifier: GPL-2.0-only
   2 /*
   3  * linux/drivers/cpufreq/cpufreq_powersave.c
   4  *
   5  * Copyright (C) 2002 - 2003 Dominik Brodowski <linux@brodo.de>
   6  */
   7 
   8 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
   9 
  10 #include <linux/cpufreq.h>
  11 #include <linux/init.h>
  12 #include <linux/module.h>
  13 
  14 static void cpufreq_gov_powersave_limits(struct cpufreq_policy *policy)
  15 {
  16         pr_debug("setting to %u kHz\n", policy->min);
  17         __cpufreq_driver_target(policy, policy->min, CPUFREQ_RELATION_L);
  18 }
  19 
  20 static struct cpufreq_governor cpufreq_gov_powersave = {
  21         .name           = "powersave",
  22         .limits         = cpufreq_gov_powersave_limits,
  23         .owner          = THIS_MODULE,
  24 };
  25 
  26 static int __init cpufreq_gov_powersave_init(void)
  27 {
  28         return cpufreq_register_governor(&cpufreq_gov_powersave);
  29 }
  30 
  31 static void __exit cpufreq_gov_powersave_exit(void)
  32 {
  33         cpufreq_unregister_governor(&cpufreq_gov_powersave);
  34 }
  35 
  36 MODULE_AUTHOR("Dominik Brodowski <linux@brodo.de>");
  37 MODULE_DESCRIPTION("CPUfreq policy governor 'powersave'");
  38 MODULE_LICENSE("GPL");
  39 
  40 #ifdef CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE
  41 struct cpufreq_governor *cpufreq_default_governor(void)
  42 {
  43         return &cpufreq_gov_powersave;
  44 }
  45 
  46 fs_initcall(cpufreq_gov_powersave_init);
  47 #else
  48 module_init(cpufreq_gov_powersave_init);
  49 #endif
  50 module_exit(cpufreq_gov_powersave_exit);

/* [<][>][^][v][top][bottom][index][help] */