# SPDX-License-Identifier: (GPL-2.0+ OR MIT)

MODULE_NAME = amlogic-debug

PR_FMT = $(subst amlogic-,,$(MODULE_NAME))
PR_FMT_DEFINE="-Dpr_fmt(fmt)= \"[$(PR_FMT)]: \" fmt"
ccflags-y += $(PR_FMT_DEFINE)

KBUILD_CFLAGS += -D__DISABLE_TRACE_MMIO__
ccflags-y += -I$(srctree)/fs/pstore/
ccflags-y += -I$(srctree)/kernel/sched/
ccflags-y += -I$(srctree)/mm/
ccflags-y += "-DGKI_CONFIG=\"$(objtree)/$(KCONFIG_CONFIG)\""

obj-$(CONFIG_AMLOGIC_DEBUG) = $(MODULE_NAME).o
$(MODULE_NAME)-y = main.o lockup.o sched.o

ifeq ($(CONFIG_THUMB2_KERNEL)$(CONFIG_KASAN),yy)
CFLAGS_lockup.o += -fno-reorder-functions
endif

$(MODULE_NAME)-$(CONFIG_AMLOGIC_DEBUG_ISOLCPUS) += isolcpus.o
$(MODULE_NAME)-$(CONFIG_AMLOGIC_DEBUG_MHZ) += cpu_mhz.o
$(MODULE_NAME)-$(CONFIG_AMLOGIC_DEBUG_ATRACE) += atrace.o atrace_mem.o
$(MODULE_NAME)-$(CONFIG_AMLOGIC_DEBUG_FILE) += debug_file.o
$(MODULE_NAME)-$(CONFIG_AMLOGIC_GKI_CONFIG) += gki_config.o
$(MODULE_NAME)-$(CONFIG_AMLOGIC_DEBUG_HLD) += watchdog_hld.o
$(MODULE_NAME)-$(CONFIG_ARM64_MTE) += debug_mte.o
ifeq ($(CONFIG_AMLOGIC_DEBUG_PRINTK),m)
	$(MODULE_NAME)-$(CONFIG_AMLOGIC_DEBUG_PRINTK) += printk.o
else
	obj-$(CONFIG_AMLOGIC_DEBUG_PRINTK) += printk.o
endif
$(MODULE_NAME)-$(CONFIG_AMLOGIC_UBOOT_LOG) += uboot_log.o ring_buffer.o

MODULE_NAME_IOTRACE = amlogic-debug-iotrace
obj-$(CONFIG_AMLOGIC_DEBUG_IOTRACE) += $(MODULE_NAME_IOTRACE).o
$(MODULE_NAME_IOTRACE)-y = aml_iotrace.o ftrace_ramoops.o
$(MODULE_NAME_IOTRACE)-$(CONFIG_AMLOGIC_DEBUG_IOTM) += aml_iotm.o iotm_v1.o iotm_v2.o
$(MODULE_NAME_IOTRACE)-$(CONFIG_AMLOGIC_DEBUG_AOCPU_MONITOR) += aml_aocpu_monitor.o

# builtin
obj-$(CONFIG_AMLOGIC_BGKI_DEBUG_MISC) += debug_misc.o

# debug test ko
obj-$(CONFIG_AMLOGIC_DEBUG_TEST) += debug_test.o
AUDIO_UTILS_MODULE_NAME = amlogic-audio-utils

AUDIO_UTILS_PR_FMT = $(subst amlogic-,,$(AUDIO_UTILS_MODULE_NAME))
AUDIO_UTILS_PR_FMT_DEFINE="-Dpr_fmt(fmt)= \"[$(AUDIO_UTILS_PR_FMT)]: \" fmt"
ccflags_audio_utils.o += $(AUDIO_UTILS_PR_FMT_DEFINE)

obj-$(CONFIG_AMLOGIC_AUDIO_UTILS) += $(AUDIO_UTILS_MODULE_NAME).o
$(AUDIO_UTILS_MODULE_NAME)-y = audio_utils.o
