mirror-linux/drivers/gpu/drm/msm
Arnd Bergmann 424953cf3c qcom_scm: hide Kconfig symbol
Now that SCM can be a loadable module, we have to add another
dependency to avoid link failures when ipa or adreno-gpu are
built-in:

aarch64-linux-ld: drivers/net/ipa/ipa_main.o: in function `ipa_probe':
ipa_main.c:(.text+0xfc4): undefined reference to `qcom_scm_is_available'

ld.lld: error: undefined symbol: qcom_scm_is_available
>>> referenced by adreno_gpu.c
>>>               gpu/drm/msm/adreno/adreno_gpu.o:(adreno_zap_shader_load) in archive drivers/built-in.a

This can happen when CONFIG_ARCH_QCOM is disabled and we don't select
QCOM_MDT_LOADER, but some other module selects QCOM_SCM. Ideally we'd
use a similar dependency here to what we have for QCOM_RPROC_COMMON,
but that causes dependency loops from other things selecting QCOM_SCM.

This appears to be an endless problem, so try something different this
time:

 - CONFIG_QCOM_SCM becomes a hidden symbol that nothing 'depends on'
   but that is simply selected by all of its users

 - All the stubs in include/linux/qcom_scm.h can go away

 - arm-smccc.h needs to provide a stub for __arm_smccc_smc() to
   allow compile-testing QCOM_SCM on all architectures.

 - To avoid a circular dependency chain involving RESET_CONTROLLER
   and PINCTRL_SUNXI, drop the 'select RESET_CONTROLLER' statement.
   According to my testing this still builds fine, and the QCOM
   platform selects this symbol already.

Acked-by: Kalle Valo <kvalo@codeaurora.org>
Acked-by: Alex Elder <elder@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2021-10-07 16:51:57 +02:00
..
adreno drm/msm: Rework SQE version check 2021-08-10 14:22:49 -07:00
disp Kbuild updates for v5.15 2021-09-03 15:33:47 -07:00
dp drm for v5.15-rc1 2021-09-01 11:26:46 -07:00
dsi Merge tag 'drm-msm-next-2021-08-12' of https://gitlab.freedesktop.org/drm/msm into drm-next 2021-08-17 10:53:52 +10:00
edp Merge tag 'drm-msm-next-2021-06-23b' of https://gitlab.freedesktop.org/drm/msm into drm-next 2021-06-24 07:21:16 +10:00
hdmi drm/msm: Generated register update 2021-06-23 07:33:54 -07:00
Kconfig qcom_scm: hide Kconfig symbol 2021-10-07 16:51:57 +02:00
Makefile drm/msm: Split out devfreq handling 2021-07-27 17:54:36 -07:00
NOTES
msm_atomic.c
msm_atomic_trace.h
msm_atomic_tracepoints.c
msm_debugfs.c drm/msm: Add debugfs to trigger shrinker 2021-06-23 07:33:55 -07:00
msm_debugfs.h
msm_drv.c Merge tag 'drm-msm-next-2021-08-12' of https://gitlab.freedesktop.org/drm/msm into drm-next 2021-08-17 10:53:52 +10:00
msm_drv.h drm/msm/dsi: add three helper functions 2021-08-07 11:48:39 -07:00
msm_fb.c drm/msm: Move FB debug prints to drm_dbg_state() 2021-06-23 07:32:15 -07:00
msm_fbdev.c Merge tag 'drm-msm-next-2021-08-12' of https://gitlab.freedesktop.org/drm/msm into drm-next 2021-08-17 10:53:52 +10:00
msm_fence.c drm/msm: Track "seqno" fences by idr 2021-07-27 18:09:18 -07:00
msm_fence.h drm/msm: Track "seqno" fences by idr 2021-07-27 18:09:18 -07:00
msm_gem.c drm/msm: Use list_move_tail instead of list_del/list_add_tail in msm_gem.c 2021-08-07 11:48:37 -07:00
msm_gem.h drm/msm: Implement mmap as GEM object function 2021-08-07 11:48:37 -07:00
msm_gem_prime.c drm/msm: Implement mmap as GEM object function 2021-08-07 11:48:37 -07:00
msm_gem_shrinker.c drm/msm: Add debugfs to trigger shrinker 2021-06-23 07:33:55 -07:00
msm_gem_submit.c Merge tag 'drm-msm-next-2021-07-28' of https://gitlab.freedesktop.org/drm/msm into drm-next 2021-07-30 16:24:01 +10:00
msm_gem_vma.c
msm_gpu.c drm/msm: Conversion to drm scheduler 2021-07-28 09:19:00 -07:00
msm_gpu.h drm/msm: Utilize gpu scheduler priorities 2021-07-28 09:19:00 -07:00
msm_gpu_devfreq.c drm/msm: Devfreq tuning 2021-07-27 17:54:36 -07:00
msm_gpu_trace.h
msm_gpu_tracepoints.c
msm_gpummu.c drm/msm: devcoredump iommu fault support 2021-06-23 07:33:55 -07:00
msm_iommu.c drm/msm: Fix display fault handling 2021-07-27 08:14:55 -07:00
msm_kms.h Merge tag 'drm-msm-next-2021-08-12' of https://gitlab.freedesktop.org/drm/msm into drm-next 2021-08-17 10:53:52 +10:00
msm_mmu.h drm/msm: devcoredump iommu fault support 2021-06-23 07:33:55 -07:00
msm_perf.c
msm_rd.c drm/msm: Conversion to drm scheduler 2021-07-28 09:19:00 -07:00
msm_ringbuffer.c Merge tag 'drm-msm-next-2021-07-28' of https://gitlab.freedesktop.org/drm/msm into drm-next 2021-07-30 16:24:01 +10:00
msm_ringbuffer.h drm/msm: Conversion to drm scheduler 2021-07-28 09:19:00 -07:00
msm_submitqueue.c drm/msm: Utilize gpu scheduler priorities 2021-07-28 09:19:00 -07:00