From patchwork Mon Feb 22 21:08:41 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 102712 Delivered-To: patch@linaro.org Received: by 10.112.43.199 with SMTP id y7csp1480072lbl; Mon, 22 Feb 2016 13:17:13 -0800 (PST) X-Received: by 10.98.10.65 with SMTP id s62mr41503545pfi.119.1456175832508; Mon, 22 Feb 2016 13:17:12 -0800 (PST) Return-Path: Received: from bombadil.infradead.org (bombadil.infradead.org. [2001:1868:205::9]) by mx.google.com with ESMTPS id vz3si41958495pab.93.2016.02.22.13.17.12 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 22 Feb 2016 13:17:12 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org designates 2001:1868:205::9 as permitted sender) client-ip=2001:1868:205::9; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org designates 2001:1868:205::9 as permitted sender) smtp.mailfrom=linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1aXxpD-0003pG-IF; Mon, 22 Feb 2016 21:15:23 +0000 Received: from mout.kundenserver.de ([212.227.17.10]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1aXxoI-00028u-03 for linux-arm-kernel@lists.infradead.org; Mon, 22 Feb 2016 21:14:31 +0000 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue104) with ESMTPA (Nemesis) id 0MMWL8-1aagp92Nmo-008GLy; Mon, 22 Feb 2016 22:13:57 +0100 From: Arnd Bergmann To: Rob Clark Subject: [PATCH 7/8] drm: msm: move HDMI into separate module Date: Mon, 22 Feb 2016 22:08:41 +0100 Message-Id: <1456175331-714117-8-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1456175331-714117-1-git-send-email-arnd@arndb.de> References: <1456175331-714117-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:XNpIiJG3erIP+P/CsRr5/2O0HTUzP/pUK8lurR8qJxAdrXWQ0XN +n4SOjFq8hXBlHvFMc2VvxtolT0kWQQxcrLrbmuw5LjnXF65tKTEmAdHwxiDU9Csnhb015y aLnNjW3ZClX/sKc4l8FgtBy0pcT3z/2lD0/vpVd7sP051exlLcVlC7bmIvPsPEp6ZnPadqX +9uFME4ktl+1zyyP30bFw== X-UI-Out-Filterresults: notjunk:1; V01:K0:05cf34gdMRI=:uYmwVVvRDyLGk+VwLXGpuf B+VzelYJYBJlk5QrXls3biNjxkymaBT69YOul6dG+XE+kI7nqLPfTfMZY6Sa+Ve8W068y+yut v+aV6GSta9qcxB+vO008zfDmgVBclcXV78KdgOsOMMPTQovsKqaptVCQm4VzCAJYOToMP11Cu 6JqTMF4hPO0JwCIMDib85b/SudBxLud1QmeEvFMgA1ZiUUJrFEkHxIA+bMOE6BGcRO4/6CnUB N9/dtve2GqIpCKbj3+9S+CWwMCUVqIMv00A2O/KFFgfsmTqzLMFxrxrboD1su672MZjMwPhit Q18O/hcskpIH5j/VuGEWjvZDdF1B1laFLi/21h1FF5273wcHsLsB7Iez/UNZ9kuG5SxAb2FLc FeUjg9uaTnndJ0rjBDtLh645SF+A/I+gmaqWUBtdoovN5lH2/4r0xKODsGQIm+tsz7NsPZVI5 7qRYwivgWf36qJUICnmGo6phb8y2IK4QaYuFa33kRPNr5Jw6N8M77PUbYPsUQIurfONVkGU8p vp14+q8tU0Cyf9sbY06zIjL2JXdZc1G7l/XW1o5jpixPRtzBJ+6Befcg/VqsJJmxsGfo9ryPv 3RAarrWLMdfETIvCF40nxhUYmGWCiMd0Mz32KK0kreG9JAH8Plce6mgIqwIz0iRNi8ydbIONx zzfd42ABY1Sz1x4yNmWEMD28z0/ac6aidzcesXU57hmzMNB9+XO7RwY8NKKQ6Q1GY1lY= X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160222_131426_711493_0A67A629 X-CRM114-Status: GOOD ( 13.66 ) X-Spam-Score: -2.6 (--) X-Spam-Report: SpamAssassin version 3.4.0 on bombadil.infradead.org summary: Content analysis details: (-2.6 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.17.10 listed in wl.mailspike.net] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [212.227.17.10 listed in list.dnswl.org] -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: dri-devel@lists.freedesktop.org, Archit Taneja , Arnd Bergmann , linux-arm-kernel@lists.infradead.org MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org Moving around the Makefile for HDMI caused a link error with the main driver referring to a builtin module that has no exported symbols: drivers/gpu/built-in.o: In function `msm_drm_register': :(.init.text+0x654): undefined reference to `msm_hdmi_register' This changes the EDP symbol to a 'tristate' so we can build it as a module, and exports the symbols as necessary. Signed-off-by: Arnd Bergmann Fixes: 883656affe4d ("drm/msm/hdmi: Create separate Makefile/Kconfig") --- drivers/gpu/drm/msm/Makefile | 2 +- drivers/gpu/drm/msm/hdmi/Kconfig | 7 ++++++- drivers/gpu/drm/msm/hdmi/Makefile | 6 ++++-- drivers/gpu/drm/msm/hdmi/hdmi.c | 3 +++ drivers/gpu/drm/msm/msm_drv.h | 2 +- 5 files changed, 15 insertions(+), 5 deletions(-) -- 2.7.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel diff --git a/drivers/gpu/drm/msm/Makefile b/drivers/gpu/drm/msm/Makefile index e67bdaa14635..06fd13989476 100644 --- a/drivers/gpu/drm/msm/Makefile +++ b/drivers/gpu/drm/msm/Makefile @@ -40,7 +40,7 @@ drm-msm-$(CONFIG_DRM_FBDEV_EMULATION) += msm_fbdev.o drm-msm-$(CONFIG_COMMON_CLK) += mdp/mdp4/mdp4_lvds_pll.o obj-$(CONFIG_DRM_MSM_DSI_MODULE) += dsi/ -obj-$(CONFIG_DRM_MSM_HDMI) += hdmi/ +obj-$(CONFIG_DRM_MSM_HDMI_MODULE) += hdmi/ obj-$(CONFIG_DRM_MSM_EDP_MODULE) += edp/ obj-$(CONFIG_DRM_MSM) += drm-msm.o drm_msm_helper.o diff --git a/drivers/gpu/drm/msm/hdmi/Kconfig b/drivers/gpu/drm/msm/hdmi/Kconfig index 4b24e1e4bac4..8e9abaeae758 100644 --- a/drivers/gpu/drm/msm/hdmi/Kconfig +++ b/drivers/gpu/drm/msm/hdmi/Kconfig @@ -1,7 +1,12 @@ config DRM_MSM_HDMI - bool "Enable HDMI support in MSM DRM driver" + tristate "Enable HDMI support in MSM DRM driver" depends on DRM_MSM default y help Choose this option if you have a need for HDMI connector support. + +config DRM_MSM_HDMI_MODULE + tristate + default y if DRM_MSM=y && DRM_MSM_HDMI=m + default DRM_MSM_HDMI diff --git a/drivers/gpu/drm/msm/hdmi/Makefile b/drivers/gpu/drm/msm/hdmi/Makefile index 799dbca89bd4..6cb4598f48d7 100644 --- a/drivers/gpu/drm/msm/hdmi/Makefile +++ b/drivers/gpu/drm/msm/hdmi/Makefile @@ -1,6 +1,8 @@ ccflags-y := -Iinclude/drm -Idrivers/gpu/drm/msm -obj-y := hdmi.o hdmi_phy.o hdmi_audio.o hdmi_bridge.o hdmi_connector.o \ +obj-$(CONFIG_DRM_MSM_HDMI_MODULE) += drm-msm-hdmi.o + +drm-msm-hdmi-y := hdmi.o hdmi_phy.o hdmi_audio.o hdmi_bridge.o hdmi_connector.o \ hdmi_hdcp.o hdmi_i2c.o hdmi_phy_8960.o hdmi_phy_8x60.o hdmi_phy_8x74.o -obj-$(CONFIG_COMMON_CLK) += hdmi_pll_8960.o hdmi_phy_8996.o +drm-msm-hdmi-$(CONFIG_COMMON_CLK) += hdmi_pll_8960.o hdmi_phy_8996.o diff --git a/drivers/gpu/drm/msm/hdmi/hdmi.c b/drivers/gpu/drm/msm/hdmi/hdmi.c index 3bcfb1ded8b3..8e01d942d1c9 100644 --- a/drivers/gpu/drm/msm/hdmi/hdmi.c +++ b/drivers/gpu/drm/msm/hdmi/hdmi.c @@ -343,6 +343,7 @@ fail: return ret; } +EXPORT_SYMBOL_GPL(msm_hdmi_modeset_init); /* * The hdmi device: @@ -522,9 +523,11 @@ void __init msm_hdmi_register(void) msm_hdmi_phy_driver_register(); platform_driver_register(&msm_hdmi_driver); } +EXPORT_SYMBOL_GPL(msm_hdmi_register); void __exit msm_hdmi_unregister(void) { platform_driver_unregister(&msm_hdmi_driver); msm_hdmi_phy_driver_unregister(); } +EXPORT_SYMBOL_GPL(msm_hdmi_unregister); diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h index 8786738a6832..905c17e373e7 100644 --- a/drivers/gpu/drm/msm/msm_drv.h +++ b/drivers/gpu/drm/msm/msm_drv.h @@ -244,7 +244,7 @@ struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev); void msm_fbdev_free(struct drm_device *dev); struct hdmi; -#ifdef CONFIG_DRM_MSM_HDMI +#if IS_ENABLED(CONFIG_DRM_MSM_HDMI) int msm_hdmi_modeset_init(struct hdmi *hdmi, struct drm_device *dev, struct drm_encoder *encoder); void __init msm_hdmi_register(void);