1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2933c5044SSudeep Hollascmi-bus-y = bus.o
3*37b5be82SCristian Marussiscmi-core-objs := $(scmi-bus-y)
4*37b5be82SCristian Marussi
51fc2dd18SCristian Marussiscmi-driver-y = driver.o notify.o
6a7b1138bSIgor Skalkinscmi-transport-$(CONFIG_ARM_SCMI_HAVE_SHMEM) = shmem.o
7e8419c24SCristian Marussiscmi-transport-$(CONFIG_ARM_SCMI_TRANSPORT_MAILBOX) += mailbox.o
8e8419c24SCristian Marussiscmi-transport-$(CONFIG_ARM_SCMI_TRANSPORT_SMC) += smc.o
9f301bba0SPeter Hilberscmi-transport-$(CONFIG_ARM_SCMI_HAVE_MSG) += msg.o
1046abe13bSIgor Skalkinscmi-transport-$(CONFIG_ARM_SCMI_TRANSPORT_VIRTIO) += virtio.o
115f90f189SEtienne Carrierescmi-transport-$(CONFIG_ARM_SCMI_TRANSPORT_OPTEE) += optee.o
120316f99cSCristian Marussiscmi-protocols-y = base.o clock.o perf.o power.o reset.o sensors.o system.o voltage.o powercap.o
13*37b5be82SCristian Marussiscmi-module-objs := $(scmi-driver-y) $(scmi-protocols-y) $(scmi-transport-y)
14*37b5be82SCristian Marussi
15*37b5be82SCristian Marussiobj-$(CONFIG_ARM_SCMI_PROTOCOL) += scmi-core.o
1666d90f6eSSudeep Hollaobj-$(CONFIG_ARM_SCMI_PROTOCOL) += scmi-module.o
17*37b5be82SCristian Marussi
18898216c9SSudeep Hollaobj-$(CONFIG_ARM_SCMI_POWER_DOMAIN) += scmi_pm_domain.o
192c4b97feSCristian Marussiobj-$(CONFIG_ARM_SCMI_POWER_CONTROL) += scmi_power_control.o
20cdf157faSArd Biesheuvel
21cdf157faSArd Biesheuvelifeq ($(CONFIG_THUMB2_KERNEL)$(CONFIG_CC_IS_CLANG),yy)
22cdf157faSArd Biesheuvel# The use of R7 in the SMCCC conflicts with the compiler's use of R7 as a frame
23cdf157faSArd Biesheuvel# pointer in Thumb2 mode, which is forcibly enabled by Clang when profiling
24cdf157faSArd Biesheuvel# hooks are inserted via the -pg switch.
25cdf157faSArd BiesheuvelCFLAGS_REMOVE_smc.o += $(CC_FLAGS_FTRACE)
26cdf157faSArd Biesheuvelendif
27