drm/mediatek: Separate mtk_mipi_tx to an independent module
authorChun-Kuang Hu <chunkuang.hu@kernel.org>
Sun, 4 Oct 2020 02:30:03 +0000 (10:30 +0800)
committerChun-Kuang Hu <chunkuang.hu@kernel.org>
Mon, 30 Nov 2020 15:37:40 +0000 (23:37 +0800)
mtk_mipi_tx is a part of mtk_drm module, but phy driver should be an
independent module rather than be part of drm module, so separate the phy
driver to an independent module.

Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
drivers/gpu/drm/mediatek/Kconfig
drivers/gpu/drm/mediatek/Makefile
drivers/gpu/drm/mediatek/mtk_drm_drv.c
drivers/gpu/drm/mediatek/mtk_drm_drv.h
drivers/gpu/drm/mediatek/mtk_mipi_tx.c

index 65cd03a..24c4890 100644 (file)
@@ -13,6 +13,7 @@ config DRM_MEDIATEK
        select DRM_PANEL
        select MEMORY
        select MTK_SMI
+       select PHY_MTK_MIPI_DSI
        select VIDEOMODE_HELPERS
        help
          Choose this option if you have a Mediatek SoCs.
@@ -27,3 +28,10 @@ config DRM_MEDIATEK_HDMI
        select PHY_MTK_HDMI
        help
          DRM/KMS HDMI driver for Mediatek SoCs
+
+config PHY_MTK_MIPI_DSI
+       tristate "Mediatek MIPI-DSI-PHY Driver"
+       depends on ARCH_MEDIATEK && OF
+       select GENERIC_PHY
+       help
+         Support MIPI DSI PHY for Mediatek SoCs.
index 77b0fd8..baa1880 100644 (file)
@@ -10,9 +10,6 @@ mediatek-drm-y := mtk_disp_color.o \
                  mtk_drm_gem.o \
                  mtk_drm_plane.o \
                  mtk_dsi.o \
-                 mtk_mipi_tx.o \
-                 mtk_mt8173_mipi_tx.o \
-                 mtk_mt8183_mipi_tx.o \
                  mtk_dpi.o
 
 obj-$(CONFIG_DRM_MEDIATEK) += mediatek-drm.o
@@ -22,3 +19,9 @@ mediatek-drm-hdmi-objs := mtk_cec.o \
                          mtk_hdmi_ddc.o
 
 obj-$(CONFIG_DRM_MEDIATEK_HDMI) += mediatek-drm-hdmi.o
+
+phy-mtk-mipi-dsi-drv-objs := mtk_mipi_tx.o \
+                            mtk_mt8173_mipi_tx.o \
+                            mtk_mt8183_mipi_tx.o
+
+obj-$(CONFIG_PHY_MTK_MIPI_DSI) += phy-mtk-mipi-dsi-drv.o
index fae346b..b59c5df 100644 (file)
@@ -610,7 +610,6 @@ static struct platform_driver * const mtk_drm_drivers[] = {
        &mtk_disp_rdma_driver,
        &mtk_dpi_driver,
        &mtk_drm_platform_driver,
-       &mtk_mipi_tx_driver,
        &mtk_dsi_driver,
 };
 
index 6afd0b5..5d771cf 100644 (file)
@@ -52,6 +52,5 @@ extern struct platform_driver mtk_disp_ovl_driver;
 extern struct platform_driver mtk_disp_rdma_driver;
 extern struct platform_driver mtk_dpi_driver;
 extern struct platform_driver mtk_dsi_driver;
-extern struct platform_driver mtk_mipi_tx_driver;
 
 #endif /* MTK_DRM_DRV_H */
index 8cee259..f2a892e 100644 (file)
@@ -242,4 +242,7 @@ struct platform_driver mtk_mipi_tx_driver = {
                .of_match_table = mtk_mipi_tx_match,
        },
 };
+module_platform_driver(mtk_mipi_tx_driver);
 
+MODULE_DESCRIPTION("MediaTek MIPI TX Driver");
+MODULE_LICENSE("GPL v2");