xref: /linux/drivers/devfreq/governor_performance.c (revision 08ec212c0f92cbf30e3ecc7349f18151714041d6)
1 /*
2  *  linux/drivers/devfreq/governor_performance.c
3  *
4  *  Copyright (C) 2011 Samsung Electronics
5  *	MyungJoo Ham <myungjoo.ham@samsung.com>
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License version 2 as
9  * published by the Free Software Foundation.
10  */
11 
12 #include <linux/devfreq.h>
13 #include "governor.h"
14 
15 static int devfreq_performance_func(struct devfreq *df,
16 				    unsigned long *freq)
17 {
18 	/*
19 	 * target callback should be able to get floor value as
20 	 * said in devfreq.h
21 	 */
22 	if (!df->max_freq)
23 		*freq = UINT_MAX;
24 	else
25 		*freq = df->max_freq;
26 	return 0;
27 }
28 
29 static int performance_init(struct devfreq *devfreq)
30 {
31 	return update_devfreq(devfreq);
32 }
33 
34 const struct devfreq_governor devfreq_performance = {
35 	.name = "performance",
36 	.init = performance_init,
37 	.get_target_freq = devfreq_performance_func,
38 	.no_central_polling = true,
39 };
40