From: Greg Kroah-Hartman Date: Fri, 13 Dec 2024 12:18:02 +0000 (+0100) Subject: drop the drm-fsl patches from 5.4 as they break the build X-Git-Tag: v5.4.287~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=55b89a457f1edc6e93ecb3243d192734b5a20a4d;p=thirdparty%2Fkernel%2Fstable-queue.git drop the drm-fsl patches from 5.4 as they break the build --- diff --git a/queue-5.4/drm-fsl-dcu-convert-to-linux-irq-interfaces.patch b/queue-5.4/drm-fsl-dcu-convert-to-linux-irq-interfaces.patch deleted file mode 100644 index bcc0f78d45a..00000000000 --- a/queue-5.4/drm-fsl-dcu-convert-to-linux-irq-interfaces.patch +++ /dev/null @@ -1,167 +0,0 @@ -From 75388df24d42977379132c72fd904480f44f1690 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 3 Aug 2021 11:06:54 +0200 -Subject: drm/fsl-dcu: Convert to Linux IRQ interfaces - -From: Thomas Zimmermann - -[ Upstream commit 03ac16e584e496230903ba20f2b4bbfd942a16b4 ] - -Drop the DRM IRQ midlayer in favor of Linux IRQ interfaces. DRM's -IRQ helpers are mostly useful for UMS drivers. Modern KMS drivers -don't benefit from using it. DRM IRQ callbacks are now being called -directly or inlined. - -Signed-off-by: Thomas Zimmermann -Acked-by: Sam Ravnborg -Link: https://patchwork.freedesktop.org/patch/msgid/20210803090704.32152-5-tzimmermann@suse.de -Stable-dep-of: ffcde9e44d3e ("drm: fsl-dcu: enable PIXCLK on LS1021A") -Signed-off-by: Sasha Levin ---- - drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 78 +++++++++++++---------- - 1 file changed, 46 insertions(+), 32 deletions(-) - -diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -index abbc1ddbf27f0..11b4a81bacc68 100644 ---- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -+++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -@@ -23,7 +23,6 @@ - #include - #include - #include --#include - #include - #include - #include -@@ -51,7 +50,7 @@ static const struct regmap_config fsl_dcu_regmap_config = { - .volatile_reg = fsl_dcu_drm_is_volatile_reg, - }; - --static void fsl_dcu_irq_uninstall(struct drm_device *dev) -+static void fsl_dcu_irq_reset(struct drm_device *dev) - { - struct fsl_dcu_drm_device *fsl_dev = dev->dev_private; - -@@ -59,6 +58,45 @@ static void fsl_dcu_irq_uninstall(struct drm_device *dev) - regmap_write(fsl_dev->regmap, DCU_INT_MASK, ~0); - } - -+static irqreturn_t fsl_dcu_drm_irq(int irq, void *arg) -+{ -+ struct drm_device *dev = arg; -+ struct fsl_dcu_drm_device *fsl_dev = dev->dev_private; -+ unsigned int int_status; -+ int ret; -+ -+ ret = regmap_read(fsl_dev->regmap, DCU_INT_STATUS, &int_status); -+ if (ret) { -+ dev_err(dev->dev, "read DCU_INT_STATUS failed\n"); -+ return IRQ_NONE; -+ } -+ -+ if (int_status & DCU_INT_STATUS_VBLANK) -+ drm_handle_vblank(dev, 0); -+ -+ regmap_write(fsl_dev->regmap, DCU_INT_STATUS, int_status); -+ -+ return IRQ_HANDLED; -+} -+ -+static int fsl_dcu_irq_install(struct drm_device *dev, unsigned int irq) -+{ -+ if (irq == IRQ_NOTCONNECTED) -+ return -ENOTCONN; -+ -+ fsl_dcu_irq_reset(dev); -+ -+ return request_irq(irq, fsl_dcu_drm_irq, 0, dev->driver->name, dev); -+} -+ -+static void fsl_dcu_irq_uninstall(struct drm_device *dev) -+{ -+ struct fsl_dcu_drm_device *fsl_dev = dev->dev_private; -+ -+ fsl_dcu_irq_reset(dev); -+ free_irq(fsl_dev->irq, dev); -+} -+ - static int fsl_dcu_load(struct drm_device *dev, unsigned long flags) - { - struct fsl_dcu_drm_device *fsl_dev = dev->dev_private; -@@ -73,13 +111,13 @@ static int fsl_dcu_load(struct drm_device *dev, unsigned long flags) - ret = drm_vblank_init(dev, dev->mode_config.num_crtc); - if (ret < 0) { - dev_err(dev->dev, "failed to initialize vblank\n"); -- goto done; -+ goto done_vblank; - } - -- ret = drm_irq_install(dev, fsl_dev->irq); -+ ret = fsl_dcu_irq_install(dev, fsl_dev->irq); - if (ret < 0) { - dev_err(dev->dev, "failed to install IRQ handler\n"); -- goto done; -+ goto done_irq; - } - - if (legacyfb_depth != 16 && legacyfb_depth != 24 && -@@ -90,11 +128,11 @@ static int fsl_dcu_load(struct drm_device *dev, unsigned long flags) - } - - return 0; --done: -+done_irq: - drm_kms_helper_poll_fini(dev); - - drm_mode_config_cleanup(dev); -- drm_irq_uninstall(dev); -+done_vblank: - dev->dev_private = NULL; - - return ret; -@@ -106,41 +144,17 @@ static void fsl_dcu_unload(struct drm_device *dev) - drm_kms_helper_poll_fini(dev); - - drm_mode_config_cleanup(dev); -- drm_irq_uninstall(dev); -+ fsl_dcu_irq_uninstall(dev); - - dev->dev_private = NULL; - } - --static irqreturn_t fsl_dcu_drm_irq(int irq, void *arg) --{ -- struct drm_device *dev = arg; -- struct fsl_dcu_drm_device *fsl_dev = dev->dev_private; -- unsigned int int_status; -- int ret; -- -- ret = regmap_read(fsl_dev->regmap, DCU_INT_STATUS, &int_status); -- if (ret) { -- dev_err(dev->dev, "read DCU_INT_STATUS failed\n"); -- return IRQ_NONE; -- } -- -- if (int_status & DCU_INT_STATUS_VBLANK) -- drm_handle_vblank(dev, 0); -- -- regmap_write(fsl_dev->regmap, DCU_INT_STATUS, int_status); -- -- return IRQ_HANDLED; --} -- - DEFINE_DRM_GEM_CMA_FOPS(fsl_dcu_drm_fops); - - static struct drm_driver fsl_dcu_drm_driver = { - .driver_features = DRIVER_GEM | DRIVER_MODESET | DRIVER_ATOMIC, - .load = fsl_dcu_load, - .unload = fsl_dcu_unload, -- .irq_handler = fsl_dcu_drm_irq, -- .irq_preinstall = fsl_dcu_irq_uninstall, -- .irq_uninstall = fsl_dcu_irq_uninstall, - DRM_GEM_CMA_DRIVER_OPS, - .fops = &fsl_dcu_drm_fops, - .name = "fsl-dcu-drm", --- -2.43.0 - diff --git a/queue-5.4/drm-fsl-dcu-enable-pixclk-on-ls1021a.patch b/queue-5.4/drm-fsl-dcu-enable-pixclk-on-ls1021a.patch deleted file mode 100644 index f6a0277c63c..00000000000 --- a/queue-5.4/drm-fsl-dcu-enable-pixclk-on-ls1021a.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 3f5e17e7289a97dfb3542bf9d920346434ef1ece Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Thu, 26 Sep 2024 07:55:51 +0200 -Subject: drm: fsl-dcu: enable PIXCLK on LS1021A - -From: Matthias Schiffer - -[ Upstream commit ffcde9e44d3e18fde3d18bfff8d9318935413bfd ] - -The PIXCLK needs to be enabled in SCFG before accessing certain DCU -registers, or the access will hang. For simplicity, the PIXCLK is enabled -unconditionally, resulting in increased power consumption. - -Signed-off-by: Matthias Schiffer -Signed-off-by: Alexander Stein -Fixes: 109eee2f2a18 ("drm/layerscape: Add Freescale DCU DRM driver") -Acked-by: Dmitry Baryshkov -Link: https://patchwork.freedesktop.org/patch/msgid/20240926055552.1632448-2-alexander.stein@ew.tq-group.com -Signed-off-by: Dmitry Baryshkov -Signed-off-by: Sasha Levin ---- - drivers/gpu/drm/fsl-dcu/Kconfig | 1 + - drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 15 +++++++++++++++ - drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h | 3 +++ - 3 files changed, 19 insertions(+) - -diff --git a/drivers/gpu/drm/fsl-dcu/Kconfig b/drivers/gpu/drm/fsl-dcu/Kconfig -index d7dd8ba90e3af..9e5a35e7c00cc 100644 ---- a/drivers/gpu/drm/fsl-dcu/Kconfig -+++ b/drivers/gpu/drm/fsl-dcu/Kconfig -@@ -8,6 +8,7 @@ config DRM_FSL_DCU - select DRM_PANEL - select REGMAP_MMIO - select VIDEOMODE_HELPERS -+ select MFD_SYSCON if SOC_LS1021A - help - Choose this option if you have an Freescale DCU chipset. - If M is selected the module will be called fsl-dcu-drm. -diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -index 11b4a81bacc68..1065249807323 100644 ---- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -+++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -@@ -100,6 +100,7 @@ static void fsl_dcu_irq_uninstall(struct drm_device *dev) - static int fsl_dcu_load(struct drm_device *dev, unsigned long flags) - { - struct fsl_dcu_drm_device *fsl_dev = dev->dev_private; -+ struct regmap *scfg; - int ret; - - ret = fsl_dcu_drm_modeset_init(fsl_dev); -@@ -108,6 +109,20 @@ static int fsl_dcu_load(struct drm_device *dev, unsigned long flags) - return ret; - } - -+ scfg = syscon_regmap_lookup_by_compatible("fsl,ls1021a-scfg"); -+ if (PTR_ERR(scfg) != -ENODEV) { -+ /* -+ * For simplicity, enable the PIXCLK unconditionally, -+ * resulting in increased power consumption. Disabling -+ * the clock in PM or on unload could be implemented as -+ * a future improvement. -+ */ -+ ret = regmap_update_bits(scfg, SCFG_PIXCLKCR, SCFG_PIXCLKCR_PXCEN, -+ SCFG_PIXCLKCR_PXCEN); -+ if (ret < 0) -+ return dev_err_probe(dev->dev, ret, "failed to enable pixclk\n"); -+ } -+ - ret = drm_vblank_init(dev, dev->mode_config.num_crtc); - if (ret < 0) { - dev_err(dev->dev, "failed to initialize vblank\n"); -diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h -index e2049a0e8a92a..566396013c04a 100644 ---- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h -+++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h -@@ -160,6 +160,9 @@ - #define FSL_DCU_ARGB4444 12 - #define FSL_DCU_YUV422 14 - -+#define SCFG_PIXCLKCR 0x28 -+#define SCFG_PIXCLKCR_PXCEN BIT(31) -+ - #define VF610_LAYER_REG_NUM 9 - #define LS1021A_LAYER_REG_NUM 10 - --- -2.43.0 - diff --git a/queue-5.4/drm-fsl-dcu-set-gem-cma-functions-with-drm_gem_cma_d.patch b/queue-5.4/drm-fsl-dcu-set-gem-cma-functions-with-drm_gem_cma_d.patch deleted file mode 100644 index e9bb0483d18..00000000000 --- a/queue-5.4/drm-fsl-dcu-set-gem-cma-functions-with-drm_gem_cma_d.patch +++ /dev/null @@ -1,42 +0,0 @@ -From ee7adc74f8e5cf669ef85f7cc517a1b6473c6099 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Fri, 5 Jun 2020 09:32:15 +0200 -Subject: drm/fsl-dcu: Set GEM CMA functions with DRM_GEM_CMA_DRIVER_OPS - -From: Thomas Zimmermann - -[ Upstream commit 6a32e55d18b34a787f7beaacc912b30b58022646 ] - -DRM_GEM_CMA_DRIVER_OPS sets the functions in struct drm_driver -to their defaults. No functional changes are made. - -Signed-off-by: Thomas Zimmermann -Reviewed-by: Emil Velikov -Link: https://patchwork.freedesktop.org/patch/msgid/20200605073247.4057-12-tzimmermann@suse.de -Stable-dep-of: ffcde9e44d3e ("drm: fsl-dcu: enable PIXCLK on LS1021A") -Signed-off-by: Sasha Levin ---- - drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 7 +------ - 1 file changed, 1 insertion(+), 6 deletions(-) - -diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -index 113d2e30cf952..abbc1ddbf27f0 100644 ---- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -+++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -@@ -141,12 +141,7 @@ static struct drm_driver fsl_dcu_drm_driver = { - .irq_handler = fsl_dcu_drm_irq, - .irq_preinstall = fsl_dcu_irq_uninstall, - .irq_uninstall = fsl_dcu_irq_uninstall, -- .gem_create_object = drm_gem_cma_create_object_default_funcs, -- .prime_handle_to_fd = drm_gem_prime_handle_to_fd, -- .prime_fd_to_handle = drm_gem_prime_fd_to_handle, -- .gem_prime_import_sg_table = drm_gem_cma_prime_import_sg_table, -- .gem_prime_mmap = drm_gem_cma_prime_mmap, -- .dumb_create = drm_gem_cma_dumb_create, -+ DRM_GEM_CMA_DRIVER_OPS, - .fops = &fsl_dcu_drm_fops, - .name = "fsl-dcu-drm", - .desc = "Freescale DCU DRM", --- -2.43.0 - diff --git a/queue-5.4/drm-fsl-dcu-use-gem-cma-object-functions.patch b/queue-5.4/drm-fsl-dcu-use-gem-cma-object-functions.patch deleted file mode 100644 index 3c47b208243..00000000000 --- a/queue-5.4/drm-fsl-dcu-use-gem-cma-object-functions.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 73437846418b6f526094a7add1159ad5ac2dfda0 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Fri, 5 Jun 2020 09:32:14 +0200 -Subject: drm/fsl-dcu: Use GEM CMA object functions - -From: Thomas Zimmermann - -[ Upstream commit 929027087f527ef1d9e906e4ebeca7eb3a36042e ] - -Create GEM objects with drm_gem_cma_create_object_default_funcs(), which -allocates the object and sets CMA's default object functions. Corresponding -callbacks in struct drm_driver are cleared. No functional changes are made. - -Driver and object-function instances use the same callback functions, with -the exception of vunmap. The implementation of vunmap is empty and left out -in CMA's default object functions. - -v3: - * convert to DRIVER_OPS macro in a separate patch - -Signed-off-by: Thomas Zimmermann -Reviewed-by: Emil Velikov -Link: https://patchwork.freedesktop.org/patch/msgid/20200605073247.4057-11-tzimmermann@suse.de -Stable-dep-of: ffcde9e44d3e ("drm: fsl-dcu: enable PIXCLK on LS1021A") -Signed-off-by: Sasha Levin ---- - drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 6 +----- - 1 file changed, 1 insertion(+), 5 deletions(-) - -diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -index f15d2e7967a3e..113d2e30cf952 100644 ---- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -+++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c -@@ -141,14 +141,10 @@ static struct drm_driver fsl_dcu_drm_driver = { - .irq_handler = fsl_dcu_drm_irq, - .irq_preinstall = fsl_dcu_irq_uninstall, - .irq_uninstall = fsl_dcu_irq_uninstall, -- .gem_free_object_unlocked = drm_gem_cma_free_object, -- .gem_vm_ops = &drm_gem_cma_vm_ops, -+ .gem_create_object = drm_gem_cma_create_object_default_funcs, - .prime_handle_to_fd = drm_gem_prime_handle_to_fd, - .prime_fd_to_handle = drm_gem_prime_fd_to_handle, -- .gem_prime_get_sg_table = drm_gem_cma_prime_get_sg_table, - .gem_prime_import_sg_table = drm_gem_cma_prime_import_sg_table, -- .gem_prime_vmap = drm_gem_cma_prime_vmap, -- .gem_prime_vunmap = drm_gem_cma_prime_vunmap, - .gem_prime_mmap = drm_gem_cma_prime_mmap, - .dumb_create = drm_gem_cma_dumb_create, - .fops = &fsl_dcu_drm_fops, --- -2.43.0 - diff --git a/queue-5.4/series b/queue-5.4/series index ffd9bcdb3f7..f7bc9bd7fdb 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -65,10 +65,6 @@ asoc-fsl_micfil-use-genmask-to-define-register-bit-f.patch asoc-fsl_micfil-fix-regmap_write_bits-usage.patch bpf-fix-the-xdp_adjust_tail-sample-prog-issue.patch wifi-mwifiex-fix-memcpy-field-spanning-write-warning.patch -drm-fsl-dcu-use-gem-cma-object-functions.patch -drm-fsl-dcu-set-gem-cma-functions-with-drm_gem_cma_d.patch -drm-fsl-dcu-convert-to-linux-irq-interfaces.patch -drm-fsl-dcu-enable-pixclk-on-ls1021a.patch drm-panfrost-remove-unused-id_mask-from-struct-panfr.patch drm-msm-adreno-use-irqf_no_autoen-flag-in-request_ir.patch drm-etnaviv-dump-fix-sparse-warnings.patch