drm/msm: gpu: call qcom_mdt interfaces only for ARCH_QCOM
When compile-testing for something other than ARCH_QCOM,
we run into a link error:
drivers/gpu/drm/msm/adreno/a5xx_gpu.o: In function `a5xx_hw_init':
a5xx_gpu.c:(.text.a5xx_hw_init+0x600): undefined reference to `qcom_mdt_get_size'
a5xx_gpu.c:(.text.a5xx_hw_init+0x93c): undefined reference to `qcom_mdt_load'
There is already an #ifdef that tries to check for CONFIG_QCOM_MDT_LOADER,
but that symbol is only meaningful when building for ARCH_QCOM.
This adds a compile-time check for ARCH_QCOM, and clarifies the
Kconfig select statement so we don't even try it for other targets.
The check for CONFIG_QCOM_MDT_LOADER can then go away, which also
improves compile-time coverage and makes the code a little nicer
to read.
Fixes: 7c65817e6d
("drm/msm: gpu: Enable zap shader for A5XX")
Acked-by: Jordan Crouse <jcrouse@codeaurora.org>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Rob Clark <robdclark@gmail.com>
This commit is contained in:
parent
541de4c9c9
commit
bdab8e8b2b
|
@ -5,7 +5,7 @@ config DRM_MSM
|
||||||
depends on ARCH_QCOM || (ARM && COMPILE_TEST)
|
depends on ARCH_QCOM || (ARM && COMPILE_TEST)
|
||||||
depends on OF && COMMON_CLK
|
depends on OF && COMMON_CLK
|
||||||
depends on MMU
|
depends on MMU
|
||||||
select QCOM_MDT_LOADER
|
select QCOM_MDT_LOADER if ARCH_QCOM
|
||||||
select REGULATOR
|
select REGULATOR
|
||||||
select DRM_KMS_HELPER
|
select DRM_KMS_HELPER
|
||||||
select DRM_PANEL
|
select DRM_PANEL
|
||||||
|
|
|
@ -26,8 +26,6 @@ static void a5xx_dump(struct msm_gpu *gpu);
|
||||||
|
|
||||||
#define GPU_PAS_ID 13
|
#define GPU_PAS_ID 13
|
||||||
|
|
||||||
#if IS_ENABLED(CONFIG_QCOM_MDT_LOADER)
|
|
||||||
|
|
||||||
static int zap_shader_load_mdt(struct device *dev, const char *fwname)
|
static int zap_shader_load_mdt(struct device *dev, const char *fwname)
|
||||||
{
|
{
|
||||||
const struct firmware *fw;
|
const struct firmware *fw;
|
||||||
|
@ -36,6 +34,9 @@ static int zap_shader_load_mdt(struct device *dev, const char *fwname)
|
||||||
void *mem_region = NULL;
|
void *mem_region = NULL;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
if (!IS_ENABLED(CONFIG_ARCH_QCOM))
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
/* Request the MDT file for the firmware */
|
/* Request the MDT file for the firmware */
|
||||||
ret = request_firmware(&fw, fwname, dev);
|
ret = request_firmware(&fw, fwname, dev);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
|
@ -73,12 +74,6 @@ out:
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
static int zap_shader_load_mdt(struct device *dev, const char *fwname)
|
|
||||||
{
|
|
||||||
return -ENODEV;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void a5xx_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit,
|
static void a5xx_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit,
|
||||||
struct msm_file_private *ctx)
|
struct msm_file_private *ctx)
|
||||||
|
|
Loading…
Reference in New Issue