diff --git a/projects/NXP/devices/iMX8/patches/linux/0001-drm-bridge-mhdp-Add-cdns-mhdp-driver-bridge-driver.patch b/projects/NXP/devices/iMX8/patches/linux/0001-drm-bridge-mhdp-Add-cdns-mhdp-driver-bridge-driver.patch index cb984a03e0..fe7401a2b3 100644 --- a/projects/NXP/devices/iMX8/patches/linux/0001-drm-bridge-mhdp-Add-cdns-mhdp-driver-bridge-driver.patch +++ b/projects/NXP/devices/iMX8/patches/linux/0001-drm-bridge-mhdp-Add-cdns-mhdp-driver-bridge-driver.patch @@ -80,8 +80,8 @@ diff --git a/drivers/gpu/drm/bridge/cadence/Makefile b/drivers/gpu/drm/bridge/ca index 8f647991b374..618290870ba5 100644 --- a/drivers/gpu/drm/bridge/cadence/Makefile +++ b/drivers/gpu/drm/bridge/cadence/Makefile -@@ -1,4 +1,13 @@ - # SPDX-License-Identifier: GPL-2.0-only +@@ -4,4 +4,13 @@ + cdns-dsi-$(CONFIG_DRM_CDNS_DSI_J721E) += cdns-dsi-j721e.o obj-$(CONFIG_DRM_CDNS_MHDP8546) += cdns-mhdp8546.o cdns-mhdp8546-y := cdns-mhdp8546-core.o cdns-mhdp8546-hdcp.o cdns-mhdp8546-$(CONFIG_DRM_CDNS_MHDP8546_J721E) += cdns-mhdp8546-j721e.o diff --git a/projects/NXP/devices/iMX8/patches/linux/0030-drm-imx-Add-mhdp-dp-hdmi-driver-for-imx8x-platform.patch b/projects/NXP/devices/iMX8/patches/linux/0030-drm-imx-Add-mhdp-dp-hdmi-driver-for-imx8x-platform.patch index 3d69a9a4f7..b275a1b160 100644 --- a/projects/NXP/devices/iMX8/patches/linux/0030-drm-imx-Add-mhdp-dp-hdmi-driver-for-imx8x-platform.patch +++ b/projects/NXP/devices/iMX8/patches/linux/0030-drm-imx-Add-mhdp-dp-hdmi-driver-for-imx8x-platform.patch @@ -35,19 +35,19 @@ diff --git a/drivers/gpu/drm/imx/Kconfig b/drivers/gpu/drm/imx/Kconfig index 6231048aa5aa..4af2f575f04b 100644 --- a/drivers/gpu/drm/imx/Kconfig +++ b/drivers/gpu/drm/imx/Kconfig -@@ -41,3 +41,4 @@ config DRM_IMX_HDMI - Choose this if you want to use HDMI on i.MX6. +@@ -2,3 +2,4 @@ config DRM_IMX_HDMI source "drivers/gpu/drm/imx/dcss/Kconfig" + source "drivers/gpu/drm/imx/ipuv3/Kconfig" +source "drivers/gpu/drm/imx/mhdp/Kconfig" diff --git a/drivers/gpu/drm/imx/Makefile b/drivers/gpu/drm/imx/Makefile index b644deffe948..0b46c46b19a8 100644 --- a/drivers/gpu/drm/imx/Makefile +++ b/drivers/gpu/drm/imx/Makefile -@@ -10,3 +10,4 @@ obj-$(CONFIG_DRM_IMX_LDB) += imx-ldb.o +@@ -2,3 +2,4 @@ obj-$(CONFIG_DRM_IMX_LDB) += imx-ldb.o - obj-$(CONFIG_DRM_IMX_HDMI) += dw_hdmi-imx.o obj-$(CONFIG_DRM_IMX_DCSS) += dcss/ + obj-$(CONFIG_DRM_IMX) += ipuv3/ +obj-$(CONFIG_DRM_IMX_CDNS_MHDP) += mhdp/ diff --git a/drivers/gpu/drm/imx/mhdp/Kconfig b/drivers/gpu/drm/imx/mhdp/Kconfig new file mode 100644 @@ -2134,7 +2134,7 @@ index 000000000000..3acbdf575ee2 + +#include "cdns-mhdp-imx.h" +#include "cdns-mhdp-phy.h" -+#include "../imx-drm.h" ++#include "../ipuv3/imx-drm.h" + +static void cdns_mhdp_imx_encoder_disable(struct drm_encoder *encoder) +{ diff --git a/projects/NXP/devices/iMX8/patches/linux/0041-drm-imx-dcss-add-component-framework-functionality.patch b/projects/NXP/devices/iMX8/patches/linux/0041-drm-imx-dcss-add-component-framework-functionality.patch index 4b15c1da0a..a1e33406f2 100644 --- a/projects/NXP/devices/iMX8/patches/linux/0041-drm-imx-dcss-add-component-framework-functionality.patch +++ b/projects/NXP/devices/iMX8/patches/linux/0041-drm-imx-dcss-add-component-framework-functionality.patch @@ -77,7 +77,7 @@ index 8dc2f85c514b..09d0ac28e28a 100644 if (IS_ERR(mdrv->kms)) { err = PTR_ERR(mdrv->kms); goto dcss_shutoff; -@@ -79,19 +70,73 @@ static int dcss_drv_platform_probe(struct platform_device *pdev) +@@ -79,14 +70,68 @@ static int dcss_drv_platform_probe(struct platform_device *pdev) return err; } @@ -87,17 +87,10 @@ index 8dc2f85c514b..09d0ac28e28a 100644 - struct dcss_drv *mdrv = dev_get_drvdata(&pdev->dev); + struct dcss_drv *mdrv = dev_get_drvdata(dev); - if (!mdrv) -- return 0; -+ return; - - dcss_kms_detach(mdrv->kms); + dcss_kms_detach(mdrv->kms, componentized); dcss_dev_destroy(mdrv->dcss); -- dev_set_drvdata(&pdev->dev, NULL); -+ dev_set_drvdata(dev, NULL); - kfree(mdrv); +} + @@ -197,16 +190,6 @@ index 135a62366ab8..cafb09df6c75 100644 drm_mode_config_reset(drm); -@@ -171,7 +176,8 @@ struct dcss_kms_dev *dcss_kms_attach(struct dcss_dev *dcss) - return kms; - - cleanup_crtc: -- drm_bridge_connector_disable_hpd(kms->connector); -+ if (!componentized) -+ drm_bridge_connector_disable_hpd(kms->connector); - drm_kms_helper_poll_fini(drm); - dcss_crtc_deinit(crtc, drm); - @@ -182,9 +188,10 @@ struct dcss_kms_dev *dcss_kms_attach(struct dcss_dev *dcss) return ERR_PTR(ret); }