Commit 885f5669 authored by Christian Marangi's avatar Christian Marangi Committed by Ulf Hansson
Browse files

pmdomain: airoha: Fix compilation error with Clang-20 and Thumb2 mode



The use of R7 in the SMCCC conflicts with the compiler's use of R7 as a frame
pointer in Thumb2 mode, which is forcibly enabled by Clang when profiling
hooks are inserted via the -pg switch.

This is a known issue and similar driver workaround this with a Makefile
ifdef. Exact workaround are applied in
drivers/firmware/arm_scmi/transports/Makefile and other similar driver.

Suggested-by: default avatarSudeep Holla <sudeep.holla@arm.com>
Reported-by: default avatarkernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202501201840.XmpHXpQ4-lkp@intel.com/


Fixes: 82e703dd ("pmdomain: airoha: Add Airoha CPU PM Domain support")
Signed-off-by: default avatarChristian Marangi <ansuelsmth@gmail.com>
Link: https://lore.kernel.org/r/20250120153817.11807-1-ansuelsmth@gmail.com


Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent c2d7aa30
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -2,3 +2,10 @@
obj-$(CONFIG_MTK_SCPSYS)		+= mtk-scpsys.o
obj-$(CONFIG_MTK_SCPSYS_PM_DOMAINS) 	+= mtk-pm-domains.o
obj-$(CONFIG_AIROHA_CPU_PM_DOMAIN) 	+= airoha-cpu-pmdomain.o

ifeq ($(CONFIG_THUMB2_KERNEL)$(CONFIG_CC_IS_CLANG),yy)
# The use of R7 in the SMCCC conflicts with the compiler's use of R7 as a frame
# pointer in Thumb2 mode, which is forcibly enabled by Clang when profiling
# hooks are inserted via the -pg switch.
CFLAGS_REMOVE_airoha-cpu-pmdomain.o += $(CC_FLAGS_FTRACE)
endif