From ea08eeccae9297f7aabd2ef7f0c2517ac4549acc Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Tue, 20 Feb 2024 01:18:26 +0000
Subject: [PATCH] write in 30M
---
kernel/drivers/devfreq/governor_simpleondemand.c | 34 +++++++++-------------------------
1 files changed, 9 insertions(+), 25 deletions(-)
diff --git a/kernel/drivers/devfreq/governor_simpleondemand.c b/kernel/drivers/devfreq/governor_simpleondemand.c
index d2c5002..1b314e1 100644
--- a/kernel/drivers/devfreq/governor_simpleondemand.c
+++ b/kernel/drivers/devfreq/governor_simpleondemand.c
@@ -1,12 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0-only
/*
* linux/drivers/devfreq/governor_simpleondemand.c
*
* Copyright (C) 2011 Samsung Electronics
* MyungJoo Ham <myungjoo.ham@samsung.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
*/
#include <linux/errno.h>
@@ -27,7 +24,6 @@
unsigned int dfso_upthreshold = DFSO_UPTHRESHOLD;
unsigned int dfso_downdifferential = DFSO_DOWNDIFFERENCTIAL;
struct devfreq_simple_ondemand_data *data = df->data;
- unsigned long min = (df->min_freq) ? df->min_freq : DEVFREQ_MIN_FREQ;
err = devfreq_update_stats(df);
if (err)
@@ -45,28 +41,16 @@
dfso_upthreshold < dfso_downdifferential)
return -EINVAL;
- /* Prevent overflow */
- if (stat->busy_time >= (1 << 24) || stat->total_time >= (1 << 24)) {
- stat->busy_time >>= 7;
- stat->total_time >>= 7;
- }
-
- if (data && data->simple_scaling) {
- if (stat->busy_time * 100 >
- stat->total_time * dfso_upthreshold)
- *freq = DEVFREQ_MAX_FREQ;
- else if (stat->busy_time * 100 <
- stat->total_time * dfso_downdifferential)
- *freq = min;
- else
- *freq = df->previous_freq;
- return 0;
- }
-
/* Assume MAX if it is going to be divided by zero */
if (stat->total_time == 0) {
*freq = DEVFREQ_MAX_FREQ;
return 0;
+ }
+
+ /* Prevent overflow */
+ if (stat->busy_time >= (1 << 24) || stat->total_time >= (1 << 24)) {
+ stat->busy_time >>= 7;
+ stat->total_time >>= 7;
}
/* Set MAX if it's busy enough */
@@ -112,8 +96,8 @@
devfreq_monitor_stop(devfreq);
break;
- case DEVFREQ_GOV_INTERVAL:
- devfreq_interval_update(devfreq, (unsigned int *)data);
+ case DEVFREQ_GOV_UPDATE_INTERVAL:
+ devfreq_update_interval(devfreq, (unsigned int *)data);
break;
case DEVFREQ_GOV_SUSPEND:
--
Gitblit v1.6.2