]> Git Repo - linux.git/blobdiff - drivers/gpu/drm/lima/lima_devfreq.c
Merge tag 'imx-dt64-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo...
[linux.git] / drivers / gpu / drm / lima / lima_devfreq.c
index dbc1d1eb954337271e300d31a9ae8e13828216de..8989e215dfc9d6076b06b68d2c093fb43fffa2cf 100644 (file)
@@ -81,6 +81,7 @@ static int lima_devfreq_get_dev_status(struct device *dev,
 }
 
 static struct devfreq_dev_profile lima_devfreq_profile = {
+       .timer = DEVFREQ_TIMER_DELAYED,
        .polling_ms = 50, /* ~3 frames */
        .target = lima_devfreq_target,
        .get_dev_status = lima_devfreq_get_dev_status,
@@ -143,8 +144,16 @@ int lima_devfreq_init(struct lima_device *ldev)
        lima_devfreq_profile.initial_freq = cur_freq;
        dev_pm_opp_put(opp);
 
+       /*
+        * Setup default thresholds for the simple_ondemand governor.
+        * The values are chosen based on experiments.
+        */
+       ldevfreq->gov_data.upthreshold = 30;
+       ldevfreq->gov_data.downdifferential = 5;
+
        devfreq = devm_devfreq_add_device(dev, &lima_devfreq_profile,
-                                         DEVFREQ_GOV_SIMPLE_ONDEMAND, NULL);
+                                         DEVFREQ_GOV_SIMPLE_ONDEMAND,
+                                         &ldevfreq->gov_data);
        if (IS_ERR(devfreq)) {
                dev_err(dev, "Couldn't initialize GPU devfreq\n");
                return PTR_ERR(devfreq);
This page took 0.034179 seconds and 4 git commands to generate.