OSDN Git Service

drm/tegra: Bump VIC/NVDEC clock rates to Fmax
authorMikko Perttunen <mperttunen@nvidia.com>
Thu, 16 Sep 2021 15:09:20 +0000 (18:09 +0300)
committerThierry Reding <treding@nvidia.com>
Thu, 16 Dec 2021 13:07:06 +0000 (14:07 +0100)
To get full performance out of these engines, bump their clock rates
to maximum. In the future we may want something smarter but this
should be fine for now.

Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/tegra/nvdec.c
drivers/gpu/drm/tegra/vic.c

index c3b6fe7..48c90e2 100644 (file)
@@ -374,6 +374,12 @@ static int nvdec_probe(struct platform_device *pdev)
                return PTR_ERR(nvdec->clk);
        }
 
+       err = clk_set_rate(nvdec->clk, ULONG_MAX);
+       if (err < 0) {
+               dev_err(&pdev->dev, "failed to set clock rate\n");
+               return err;
+       }
+
        err = of_property_read_u32(dev->of_node, "nvidia,host1x-class", &host_class);
        if (err < 0)
                host_class = HOST1X_CLASS_NVDEC;
index c02010f..dec5e56 100644 (file)
@@ -441,6 +441,12 @@ static int vic_probe(struct platform_device *pdev)
                return PTR_ERR(vic->clk);
        }
 
+       err = clk_set_rate(vic->clk, ULONG_MAX);
+       if (err < 0) {
+               dev_err(&pdev->dev, "failed to set clock rate\n");
+               return err;
+       }
+
        if (!dev->pm_domain) {
                vic->rst = devm_reset_control_get(dev, "vic");
                if (IS_ERR(vic->rst)) {