On 2019/8/18 9:09, Stephen Boyd wrote: > Quoting Mao Wenan (2019-08-15 00:48:48) >> There is one compilation error when CONFIG_INTERCONNECT_QCOM_QCS404=y and >> CONFIG_INTERCONNECT_QCOM_SMD_RPM=y, as well as CONFIG_COMPILE_TEST=y, >> but CONFIG_QCOM_SMD_RPM is not set, logs as below: >> >> drivers/interconnect/qcom/smd-rpm.o: In function `qcom_icc_rpm_smd_send': >> smd-rpm.c:(.text+0xe4): undefined reference to `qcom_rpm_smd_write' >> Makefile:1071: recipe for target 'vmlinux' failed >> make: *** [vmlinux] Error 1 >> >> This is because >> INTERCONNECT_QCOM_QCS404 depends on QCOM_SMD_RPM || COMPILE_TEST. >> Here CONFIG_COMPILE_TEST=y, so CONFIG_INTERCONNECT_QCOM_SMD_RPM >> is selected. If CONFIG_QCOM_SMD_RPM is not set, then >> qcom_rpm_smd_write() is not defined, and compilation error happen. >> Fix this by removing COMPILE_TEST from CONFIG_INTERCONNECT_QCOM_QCS404. > > Can you fix the actual problem with compile testing this driver vs. just > removing the possibility to compile test. Otherwise it gives up on > the spirit of the idea of COMPILE_TEST. yes, I have already tried to move COMPILE_TEST to INTERCONNECT_QCOM, config INTERCONNECT_QCOM bool "Qualcomm Network-on-Chip interconnect drivers" - depends on ARCH_QCOM + depends on ARCH_QCOM || COMPILE_TEST help Support for Qualcomm's Network-on-Chip interconnect hardware. > > > . >