1# SPDX-License-Identifier: GPL-2.0-only 2scmi-bus-y = bus.o 3scmi-core-objs := $(scmi-bus-y) 4 5scmi-driver-y = driver.o notify.o 6scmi-driver-$(CONFIG_ARM_SCMI_RAW_MODE_SUPPORT) += raw_mode.o 7scmi-transport-$(CONFIG_ARM_SCMI_HAVE_SHMEM) = shmem.o 8scmi-transport-$(CONFIG_ARM_SCMI_TRANSPORT_MAILBOX) += mailbox.o 9scmi-transport-$(CONFIG_ARM_SCMI_TRANSPORT_SMC) += smc.o 10scmi-transport-$(CONFIG_ARM_SCMI_HAVE_MSG) += msg.o 11scmi-transport-$(CONFIG_ARM_SCMI_TRANSPORT_VIRTIO) += virtio.o 12scmi-transport-$(CONFIG_ARM_SCMI_TRANSPORT_OPTEE) += optee.o 13scmi-protocols-y = base.o clock.o perf.o power.o reset.o sensors.o system.o voltage.o powercap.o 14scmi-module-objs := $(scmi-driver-y) $(scmi-protocols-y) $(scmi-transport-y) 15 16obj-$(CONFIG_ARM_SCMI_PROTOCOL) += scmi-core.o 17obj-$(CONFIG_ARM_SCMI_PROTOCOL) += scmi-module.o 18 19obj-$(CONFIG_ARM_SCMI_POWER_CONTROL) += scmi_power_control.o 20 21ifeq ($(CONFIG_THUMB2_KERNEL)$(CONFIG_CC_IS_CLANG),yy) 22# The use of R7 in the SMCCC conflicts with the compiler's use of R7 as a frame 23# pointer in Thumb2 mode, which is forcibly enabled by Clang when profiling 24# hooks are inserted via the -pg switch. 25CFLAGS_REMOVE_smc.o += $(CC_FLAGS_FTRACE) 26endif 27