diff --git a/projects/Rockchip/patches/linux/default/linux-0021-drm-from-5.10.patch b/projects/Rockchip/patches/linux/default/linux-0021-drm-from-5.10.patch index 85b4b22d40..c87b42921d 100644 --- a/projects/Rockchip/patches/linux/default/linux-0021-drm-from-5.10.patch +++ b/projects/Rockchip/patches/linux/default/linux-0021-drm-from-5.10.patch @@ -782,223 +782,6 @@ index 3392df1020be..210269944687 100644 ktime_t busy_time; ktime_t idle_time; -From 3d97427897f27de62bf02518918cc79ac6f7239c Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Cl=C3=A9ment=20P=C3=A9ron?= -Date: Fri, 10 Jul 2020 11:54:02 +0200 -Subject: [PATCH] drm/panfrost: rename error labels in device_init -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Rename goto labels in device_init it will be easier to maintain. - -Reviewed-by: Alyssa Rosenzweig -Reviewed-by: Steven Price -Signed-off-by: Clément Péron -Signed-off-by: Rob Herring -Link: https://patchwork.freedesktop.org/patch/msgid/20200710095409.407087-8-peron.clem@gmail.com -(cherry picked from commit d3c335da0200be9287cdf5755d19f62ce1670a8d) ---- - drivers/gpu/drm/panfrost/panfrost_device.c | 30 +++++++++++++++--------------- - 1 file changed, 15 insertions(+), 15 deletions(-) - -diff --git a/drivers/gpu/drm/panfrost/panfrost_device.c b/drivers/gpu/drm/panfrost/panfrost_device.c -index b172087eee6a..9f89984f652a 100644 ---- a/drivers/gpu/drm/panfrost/panfrost_device.c -+++ b/drivers/gpu/drm/panfrost/panfrost_device.c -@@ -216,56 +216,56 @@ int panfrost_device_init(struct panfrost_device *pfdev) - - err = panfrost_regulator_init(pfdev); - if (err) -- goto err_out0; -+ goto out_clk; - - err = panfrost_reset_init(pfdev); - if (err) { - dev_err(pfdev->dev, "reset init failed %d\n", err); -- goto err_out1; -+ goto out_regulator; - } - - err = panfrost_pm_domain_init(pfdev); - if (err) -- goto err_out2; -+ goto out_reset; - - res = platform_get_resource(pfdev->pdev, IORESOURCE_MEM, 0); - pfdev->iomem = devm_ioremap_resource(pfdev->dev, res); - if (IS_ERR(pfdev->iomem)) { - dev_err(pfdev->dev, "failed to ioremap iomem\n"); - err = PTR_ERR(pfdev->iomem); -- goto err_out3; -+ goto out_pm_domain; - } - - err = panfrost_gpu_init(pfdev); - if (err) -- goto err_out3; -+ goto out_pm_domain; - - err = panfrost_mmu_init(pfdev); - if (err) -- goto err_out4; -+ goto out_gpu; - - err = panfrost_job_init(pfdev); - if (err) -- goto err_out5; -+ goto out_mmu; - - err = panfrost_perfcnt_init(pfdev); - if (err) -- goto err_out6; -+ goto out_job; - - return 0; --err_out6: -+out_job: - panfrost_job_fini(pfdev); --err_out5: -+out_mmu: - panfrost_mmu_fini(pfdev); --err_out4: -+out_gpu: - panfrost_gpu_fini(pfdev); --err_out3: -+out_pm_domain: - panfrost_pm_domain_fini(pfdev); --err_out2: -+out_reset: - panfrost_reset_fini(pfdev); --err_out1: -+out_regulator: - panfrost_regulator_fini(pfdev); --err_out0: -+out_clk: - panfrost_clk_fini(pfdev); - return err; - } - -From 73bf666c4c5f23c8b0165c4ec8580b335771f3e8 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Cl=C3=A9ment=20P=C3=A9ron?= -Date: Fri, 10 Jul 2020 11:54:03 +0200 -Subject: [PATCH] drm/panfrost: move devfreq_init()/fini() in device -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Later we will introduce devfreq probing regulator if they -are present. As regulator should be probe only one time we -need to get this logic in the device_init(). - -panfrost_device is already taking care of devfreq_resume() -and devfreq_suspend(), so it's not totally illogic to move -the devfreq_init() and devfreq_fini() here. - -Reviewed-by: Alyssa Rosenzweig -Reviewed-by: Steven Price -Signed-off-by: Clément Péron -Signed-off-by: Rob Herring -Link: https://patchwork.freedesktop.org/patch/msgid/20200710095409.407087-9-peron.clem@gmail.com -(cherry picked from commit 25e247bbf85af3ad721dfeb2e2caf405f43b7e66) ---- - drivers/gpu/drm/panfrost/panfrost_device.c | 12 +++++++++++- - drivers/gpu/drm/panfrost/panfrost_drv.c | 15 ++------------- - 2 files changed, 13 insertions(+), 14 deletions(-) - -diff --git a/drivers/gpu/drm/panfrost/panfrost_device.c b/drivers/gpu/drm/panfrost/panfrost_device.c -index 9f89984f652a..36b5c8fea3eb 100644 ---- a/drivers/gpu/drm/panfrost/panfrost_device.c -+++ b/drivers/gpu/drm/panfrost/panfrost_device.c -@@ -214,9 +214,16 @@ int panfrost_device_init(struct panfrost_device *pfdev) - return err; - } - -+ err = panfrost_devfreq_init(pfdev); -+ if (err) { -+ if (err != -EPROBE_DEFER) -+ dev_err(pfdev->dev, "devfreq init failed %d\n", err); -+ goto out_clk; -+ } -+ - err = panfrost_regulator_init(pfdev); - if (err) -- goto out_clk; -+ goto out_devfreq; - - err = panfrost_reset_init(pfdev); - if (err) { -@@ -265,6 +272,8 @@ int panfrost_device_init(struct panfrost_device *pfdev) - panfrost_reset_fini(pfdev); - out_regulator: - panfrost_regulator_fini(pfdev); -+out_devfreq: -+ panfrost_devfreq_fini(pfdev); - out_clk: - panfrost_clk_fini(pfdev); - return err; -@@ -278,6 +287,7 @@ void panfrost_device_fini(struct panfrost_device *pfdev) - panfrost_gpu_fini(pfdev); - panfrost_pm_domain_fini(pfdev); - panfrost_reset_fini(pfdev); -+ panfrost_devfreq_fini(pfdev); - panfrost_regulator_fini(pfdev); - panfrost_clk_fini(pfdev); - } -diff --git a/drivers/gpu/drm/panfrost/panfrost_drv.c b/drivers/gpu/drm/panfrost/panfrost_drv.c -index f79f98534ab6..36463c89e966 100644 ---- a/drivers/gpu/drm/panfrost/panfrost_drv.c -+++ b/drivers/gpu/drm/panfrost/panfrost_drv.c -@@ -14,7 +14,6 @@ - #include - - #include "panfrost_device.h" --#include "panfrost_devfreq.h" - #include "panfrost_gem.h" - #include "panfrost_mmu.h" - #include "panfrost_job.h" -@@ -606,13 +605,6 @@ static int panfrost_probe(struct platform_device *pdev) - goto err_out0; - } - -- err = panfrost_devfreq_init(pfdev); -- if (err) { -- if (err != -EPROBE_DEFER) -- dev_err(&pdev->dev, "Fatal error during devfreq init\n"); -- goto err_out1; -- } -- - pm_runtime_set_active(pfdev->dev); - pm_runtime_mark_last_busy(pfdev->dev); - pm_runtime_enable(pfdev->dev); -@@ -625,16 +617,14 @@ static int panfrost_probe(struct platform_device *pdev) - */ - err = drm_dev_register(ddev, 0); - if (err < 0) -- goto err_out2; -+ goto err_out1; - - panfrost_gem_shrinker_init(ddev); - - return 0; - --err_out2: -- pm_runtime_disable(pfdev->dev); -- panfrost_devfreq_fini(pfdev); - err_out1: -+ pm_runtime_disable(pfdev->dev); - panfrost_device_fini(pfdev); - err_out0: - drm_dev_put(ddev); -@@ -650,7 +640,6 @@ static int panfrost_remove(struct platform_device *pdev) - panfrost_gem_shrinker_cleanup(ddev); - - pm_runtime_get_sync(pfdev->dev); -- panfrost_devfreq_fini(pfdev); - panfrost_device_fini(pfdev); - pm_runtime_put_sync_suspend(pfdev->dev); - pm_runtime_disable(pfdev->dev); - From 6d5816fcaa6621b0f7bb9c07bdc4a74696b0d4f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20P=C3=A9ron?= Date: Fri, 10 Jul 2020 11:54:04 +0200