blob: cc83c661107b4cad068e9c4e980088e2ba5b63b0 [file] [log] [blame]
rjw1f884582022-01-06 17:20:42 +08001$(info ======== Build met.ko ... ========)
2MET_CORE := common
3obj-m := met.o
4
5ccflags-y += -DCONFIG_MET_MODULE
6ccflags-y += -DMET_PLF_USE
7ccflags-y += -I$(MET_COMMON_DIR)
8ccflags-y += -I$(MET_PLF_DIR)
9ccflags-y += -I$(KERNEL_SRC)/include/
10ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/include/
11ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/include/mt-plat/
12ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/include/mt-plat/$(MTK_PLATFORM)/include/
13
14ccflags-y += $(EXTRA_ARGS) $(EXTRA_CFLAGS)
15
16met-y := $(MET_CORE)/met_main.o \
17 $(MET_CORE)/met_backlight.o \
18 $(MET_CORE)/met_tag_ex.o \
19 $(MET_CORE)/interface.o \
20 $(MET_CORE)/sampler.o \
21 $(MET_CORE)/dummy_header.o \
22 $(MET_CORE)/util.o \
23 $(MET_CORE)/stat.o \
24 $(MET_CORE)/cookie.o \
25 $(MET_CORE)/mem_stat.o \
26 $(MET_CORE)/switch.o \
27 $(MET_CORE)/trace_event.o \
28 $(MET_CORE)/core_plf_init.o \
29 $(MET_CORE)/core_plf_trace.o \
30 $(MET_CORE)/ondiemet.o \
31 $(MET_CORE)/ondiemet_log.o \
32 $(MET_CORE)/sspm/ondiemet_sspm.o
33
34CFLAGS_interface.o += -DMET_USER_EVENT_SUPPORT
35CFLAGS_met_tag_ex.o += -DMET_USER_EVENT_SUPPORT
36
37$(info ARCH = $(ARCH))
38ifeq ($(ARCH), mips)
39 met-y += $(MET_CORE)/mips_pmu_hw.o
40endif #ifeq ($(ARCH), mips)
41
42ifeq ($(ARCH), arm)
43 ccflags-y += -DCONFIG_MET_ARM_32BIT
44 met-y += $(MET_CORE)/cpu_pmu.o
45 met-y += $(MET_CORE)/v7_pmu_hw.o
46 met-y += $(MET_CORE)/v6_pmu_hw.o
47endif #ifeq ($(ARCH), arm)
48
49ifeq ($(ARCH), arm64)
50 met-y += $(MET_CORE)/cpu_pmu.o
51 met-y += $(MET_CORE)/v8_pmu_hw.o
52endif
53
54$(info CONFIG_CPU_FREQ = $(CONFIG_CPU_FREQ))
55ifeq ($(CONFIG_CPU_FREQ),y)
56 met-y += $(MET_CORE)/power.o
57endif
58
59
60#################################################################################
61# Kbuild.platform.include
62#################################################################################
63ifneq ($(wildcard $(MET_PLF_DIR)/Kbuild.platform.include),)
64 include $(MET_PLF_DIR)/Kbuild.platform.include
65else
66 $(info ======= Missing $(MET_PLF_DIR)/Kbuild.platform.include ========)
67endif
68
69
70################################################################################
71# CPUPMU_VERSION
72################################################################################
73$(info CPUPMU_VERSION = $(CPUPMU_VERSION))
74ifeq ("$(CPUPMU_VERSION)", "V8_2")
75 ccflags-y += -DCPUPMU_V8_2
76endif
77
78
79################################################################################
80# MET_EMI
81################################################################################
82FEATURE_SSPM_EMI := $(if $(FEATURE_SSPM_EMI),$(FEATURE_SSPM_EMI),y)
83$(info FEATURE_SSPM_EMI = $(FEATURE_SSPM_EMI))
84
85MET_EMI := $(if $(filter n,$(FEATURE_SSPM_EMI)),n,y)
86
87met-$(MET_EMI) += $(MET_CORE)/met_emi.o \
88 $(MET_CORE)/mtk_emi_bm.o
89
90
91################################################################################
92# MET_GPU
93################################################################################
94FEATURE_GPU := $(if $(FEATURE_GPU),$(FEATURE_GPU),y)
95$(info FEATURE_GPU = $(FEATURE_GPU))
96
97ifneq ($(FEATURE_GPU), n)
98 MET_GPU := y
99
100 # for mtk_gpufreq.h
101 ifneq ("$(wildcard $(KERNEL_SRC)/drivers/misc/mediatek/base/power/$(MTK_PLATFORM)/mtk_gpufreq.h)","")
102 ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/base/power/$(MTK_PLATFORM)/
103 else
104 MET_GPU = n
105 $(info ======= Missing $(KERNEL_SRC)/drivers/misc/mediatek/base/power/$(MTK_PLATFORM)/mtk_gpufreq.h ========)
106 $(info ======== disable MET_GPU ========)
107 endif
108
109 # for mtk_gpu_utility.h
110 ifneq ("$(wildcard $(KERNEL_SRC)/drivers/misc/mediatek/include/mt-plat/mtk_gpu_utility.h)","")
111 ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/include/mt-plat/
112 else
113 MET_GPU = n
114 $(info ======== Missing $(KERNEL_SRC)/drivers/misc/mediatek/include/mt-plat/mtk_gpu_utility.h ========)
115 $(info ======== disable MET_GPU ========)
116 endif
117
118 ifneq ($(CONFIG_MTK_GPU_SUPPORT), y)
119 MET_GPU = n
120 $(info ======== CONFIG_MTK_GPU_SUPPORT = n ========)
121 $(info ======== disable MET_GPU ========)
122 endif
123else
124 MET_GPU := n
125endif
126
127met-$(MET_GPU) += $(MET_CORE)/mtk_gpu_metmonitor.o
128
129
130################################################################################
131# MET_VCOREDVFS
132################################################################################
133FEATURE_VCOREDVFS := $(if $(FEATURE_VCOREDVFS),$(FEATURE_VCOREDVFS),y)
134$(info FEATURE_VCOREDVFS = $(FEATURE_VCOREDVFS))
135
136ifneq ($(FEATURE_VCOREDVFS), n)
137 MET_VCOREDVFS := y
138
139 # for mtk_vcorefs_manager.h
140 ifneq ("$(wildcard $(MET_VCOREDVFS_INC)/mtk_vcorefs_manager.h)","")
141 ccflags-y += -I$(MET_VCOREDVFS_INC)/
142 else
143 MET_VCOREDVFS = n
144 $(info ======== Missing $(MET_VCOREDVFS_INC)/mtk_vcorefs_manager.h ========)
145 $(info ======== disable MET_VCOREDVFS ========)
146 endif
147
148 # for mtk_vcorefs_governor.h
149 ifneq ("$(wildcard $(MET_VCOREDVFS_INC)/mtk_vcorefs_governor.h)","")
150 ccflags-y += -I$(MET_VCOREDVFS_INC)
151 else
152 MET_VCOREDVFS = n
153 $(info ======== Missing $(MET_VCOREDVFS_INC)/mtk_vcorefs_governor.h ========)
154 $(info ======== disable MET_VCOREDVFS ========)
155 endif
156
157 # for helio-dvfsrc.h
158 ifneq ("$(wildcard $(KERNEL_SRC)/drivers/devfreq/helio-dvfsrc.h)","")
159 ccflags-y += -I$(KERNEL_SRC)/drivers/devfreq/
160 else
161 MET_VCOREDVFS = n
162 $(info ======== Missing $(KERNEL_SRC)/drivers/devfreq/helio-dvfsrc.h ========)
163 $(info ======== disable MET_VCOREDVFS ========)
164 endif
165else
166 MET_VCOREDVFS := n
167endif
168
169met-$(MET_VCOREDVFS) += $(MET_CORE)/met_vcoredvfs.o
170
171
172################################################################################
173# MET_PTPOD
174################################################################################
175FEATURE_PTPOD := $(if $(FEATURE_PTPOD),$(FEATURE_PTPOD),y)
176$(info FEATURE_PTPOD = $(FEATURE_PTPOD))
177
178ifneq ($(FEATURE_PTPOD), n)
179 MET_PTPOD := y
180
181 # for mtk_gpufreq.h
182 ifneq ("$(wildcard $(KERNEL_SRC)/drivers/misc/mediatek/base/power/$(MTK_PLATFORM)/mtk_gpufreq.h)","")
183 ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/base/power/$(MTK_PLATFORM)/
184 else
185 MET_PTPOD = n
186 $(info ======== Missing $(KERNEL_SRC)/drivers/misc/mediatek/base/power/$(MTK_PLATFORM)/mtk_gpufreq.h ========)
187 $(info ======== disable MET_PTPOD ========)
188 endif
189
190 # for mtk_cpufreq_api.h
191 ifneq ("$(wildcard $(KERNEL_SRC)/drivers/misc/mediatek/include/mt-plat/$(MTK_PLATFORM)/include/mach/mtk_cpufreq_api.h)","")
192 ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/include/mt-plat/$(MTK_PLATFORM)/include/
193 else
194 MET_PTPOD = n
195 $(info ======== Missing $(KERNEL_SRC)/drivers/misc/mediatek/include/mt-plat/$(MTK_PLATFORM)/include/mach/mtk_cpufreq_api.h ========)
196 $(info ======== disable MET_PTPOD ========)
197 endif
198
199 # for mtk_cpufreq_config.h
200 ifneq ("$(wildcard $(MET_PTPOD_INC)/mtk_cpufreq_config.h)","")
201 ccflags-y += -I$(MET_PTPOD_INC)
202 else
203 MET_PTPOD = n
204 $(info ======== Missing $(MET_PTPOD_INC)/mtk_cpufreq_config.h ========)
205 $(info ======== disable MET_PTPOD ========)
206 endif
207else
208 MET_PTPOD := n
209endif
210
211met-$(MET_PTPOD) += $(MET_CORE)/met_ptpod.o
212
213
214################################################################################
215# MET_CPUDSU
216################################################################################
217FEATURE_CPUDSU := $(if $(FEATURE_CPUDSU),$(FEATURE_CPUDSU),y)
218$(info FEATURE_CPUDSU = $(FEATURE_CPUDSU))
219
220MET_CPUDSU := $(if $(filter n,$(FEATURE_CPUDSU)),n,y)
221
222met-$(MET_CPUDSU) += $(MET_CORE)/cpu_dsu.o \
223 $(MET_CORE)/v8_dsu_hw.o
224
225################################################################################
226# MET_WALLTIME
227################################################################################
228FEATURE_WALLTIME := $(if $(FEATURE_WALLTIME),$(FEATURE_WALLTIME),y)
229$(info FEATURE_WALLTIME = $(FEATURE_WALLTIME))
230
231MET_WALLTIME := $(if $(filter n,$(FEATURE_WALLTIME)),n,y)
232
233met-$(MET_WALLTIME) += $(MET_CORE)/met_wall_time.o
234
235################################################################################
236# On-die-met SSPM only module
237################################################################################
238FEATURE_ONDIEMET := $(if $(FEATURE_ONDIEMET),$(FEATURE_ONDIEMET),y)
239ifeq ($(FEATURE_ONDIEMET), y)
240 FEATURE_ONDIEMET_WALLTIME := $(if $(FEATURE_ONDIEMET_WALLTIME),$(FEATURE_ONDIEMET_WALLTIME),y)
241else
242 FEATURE_ONDIEMET_WALLTIME := n
243endif
244
245$(info FEATURE_ONDIEMET = $(FEATURE_ONDIEMET))
246$(info FEATURE_ONDIEMET_WALLTIME = $(FEATURE_ONDIEMET_WALLTIME))
247
248ifneq ($(FEATURE_ONDIEMET), n)
249 subdir-ccflags-y += -DONDIEMET_SUPPORT
250
251 ifeq ($(CONFIG_MTK_TINYSYS_SSPM_SUPPORT),)
252 $(info CONFIG_MTK_TINYSYS_SSPM_SUPPORT = n)
253 else
254 $(info CONFIG_MTK_TINYSYS_SSPM_SUPPORT = $(CONFIG_MTK_TINYSYS_SSPM_SUPPORT))
255 endif
256
257 ifeq ($(CONFIG_MTK_TINYSYS_SSPM_SUPPORT),y)
258 # for sspm_ipi.h
259 subdir-ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/sspm
260 subdir-ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/sspm/$(MTK_PLATFORM)
261 met-y += $(MET_CORE)/sspm/sspm_ipi_handle.o
262 met-y += $(MET_CORE)/sspm/sspm_common.o
263 ccflags-y += -DMTK_TINYSYS_SSPM_SUPPORT
264
265 ifneq ("$(wildcard $(KERNEL_SRC)/drivers/misc/mediatek/sspm/$(MTK_PLATFORM)/sspm_ipi_define.h)","")
266 subdir-ccflags-y += -I$(KERNEL_SRC)/drivers/misc/mediatek/sspm \
267 -I$(KERNEL_SRC)/drivers/misc/mediatek/sspm/$(MTK_PLATFORM)
268
269 SYS_SSPM_READY := y
270 else
271 $(info ======== Missing $(KERNEL_SRC)/drivers/misc/mediatek/sspm/$(MTK_PLATFORM)/sspm_ipi_define.h========)
272 $(info ======== disable ALL ondiemet feature ========)
273
274 SYS_SSPM_READY := n
275 endif
276 else
277 $(info ======== CONFIG_MTK_TINYSYS_SSPM_SUPPORT = n ========)
278 $(info ======== disable ALL ondiemet feature ========)
279
280 SYS_SSPM_READY := n
281 endif
282
283 ifeq ($(SYS_SSPM_READY), y)
284 MET_SSPM_WALLTIME := $(if $(filter n,$(FEATURE_ONDIEMET_WALLTIME)),n,y)
285
286 met-$(MET_SSPM_WALLTIME) += $(MET_CORE)/sspm/sspm_walltime.o
287 endif
288endif
289
290
291#################################################################################
292# add met_device flags
293#################################################################################
294ccflags-y += $(foreach v, $(filter MET_%,$(.VARIABLES)), $(if $(filter $($(v)),y),-D$(v)))