From 2b8caa86c969cb14e295e60ddc21995b47dc2efe Mon Sep 17 00:00:00 2001
From: Sandor Yu <Sandor.yu@nxp.com>
Date: Mon, 2 Dec 2019 16:14:09 +0800
Subject: [PATCH] LF-296: drm: mhdp: build mhdp sub-modules into one driver
 module

mhdp kernel driver support build as module.
All mhdp sub-modules are built into one driver module.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
(cherry picked from commit f516f7769a52fdda185920a89efa3de9a1ddb9e8)
[rebase]
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
---
 drivers/gpu/drm/bridge/cadence/Makefile | 14 +++++++++-----
 drivers/gpu/drm/imx/Makefile            |  4 +++-
 include/drm/bridge/cdns-mhdp-common.h   |  4 ----
 3 files changed, 12 insertions(+), 10 deletions(-)

--- a/drivers/gpu/drm/bridge/cadence/Makefile
+++ b/drivers/gpu/drm/bridge/cadence/Makefile
@@ -1,5 +1,9 @@
-obj-$(CONFIG_DRM_CDNS_MHDP) += cdns-mhdp-common.o cdns-mhdp-hdmi.o
-obj-$(CONFIG_DRM_CDNS_HDMI) += cdns-hdmi-core.o
-obj-$(CONFIG_DRM_CDNS_DP) += cdns-dp-core.o
-obj-$(CONFIG_DRM_CDNS_AUDIO) += cdns-mhdp-audio.o
-obj-$(CONFIG_DRM_CDNS_HDMI_CEC) += cdns-mhdp-cec.o
+
+cdns_mhdp_drmcore-y := cdns-mhdp-common.o cdns-mhdp-hdmi.o
+
+cdns_mhdp_drmcore-$(CONFIG_DRM_CDNS_HDMI) += cdns-hdmi-core.o
+cdns_mhdp_drmcore-$(CONFIG_DRM_CDNS_DP) += cdns-dp-core.o
+cdns_mhdp_drmcore-$(CONFIG_DRM_CDNS_AUDIO) += cdns-mhdp-audio.o
+cdns_mhdp_drmcore-$(CONFIG_DRM_CDNS_HDMI_CEC) += cdns-mhdp-cec.o
+
+obj-$(CONFIG_DRM_CDNS_MHDP)		+= cdns_mhdp_drmcore.o
--- a/drivers/gpu/drm/imx/Makefile
+++ b/drivers/gpu/drm/imx/Makefile
@@ -9,4 +9,6 @@ obj-$(CONFIG_DRM_IMX_TVE) += imx-tve.o
 obj-$(CONFIG_DRM_IMX_LDB) += imx-ldb.o
 
 obj-$(CONFIG_DRM_IMX_HDMI) += dw_hdmi-imx.o
-obj-$(CONFIG_DRM_IMX_CDNS_MHDP) += cdn-mhdp-imxdrv.o cdn-mhdp-dp-phy.o cdn-mhdp-hdmi-phy.o cdn-mhdp-imx8qm.o cdn-mhdp-ls1028a.o
+
+cdns_mhdp_imx-objs := cdn-mhdp-imxdrv.o cdn-mhdp-dp-phy.o cdn-mhdp-hdmi-phy.o cdn-mhdp-imx8qm.o cdn-mhdp-ls1028a.o
+obj-$(CONFIG_DRM_IMX_CDNS_MHDP) += cdns_mhdp_imx.o
--- a/include/drm/bridge/cdns-mhdp-common.h
+++ b/include/drm/bridge/cdns-mhdp-common.h
@@ -621,7 +621,6 @@ struct cdns_mhdp_connector {
 	struct cdns_mhdp_bridge *bridge;
 };
 
-#ifdef CONFIG_DRM_CDNS_HDMI_CEC
 struct cdns_mhdp_cec {
        struct cec_adapter *adap;
        struct device *dev;
@@ -630,7 +629,6 @@ struct cdns_mhdp_cec {
        struct cec_msg msg;
        struct task_struct *cec_worker;
 };
-#endif
 
 struct cdns_plat_data {
 	/* Vendor PHY support */
@@ -704,9 +702,7 @@ struct cdns_mhdp_device {
 			bool can_mst;
 		} dp;
 		struct _hdmi_data {
-#ifdef CONFIG_DRM_CDNS_HDMI_CEC
 			struct cdns_mhdp_cec cec;
-#endif
 			u32 char_rate;
 			u32 hdmi_type;
 		} hdmi;
