1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # Makefile for the Linux/SuperH kernel.
4 #
5 
6 extra-y	:= vmlinux.lds
7 
8 ifdef CONFIG_FUNCTION_TRACER
9 # Do not profile debug and lowlevel utilities
10 CFLAGS_REMOVE_ftrace.o = -pg
11 endif
12 
13 CFLAGS_REMOVE_return_address.o = -pg
14 
15 obj-y	:= head_32.o debugtraps.o dumpstack.o				\
16 	   idle.o io.o irq.o irq_32.o kdebugfs.o			\
17 	   machvec.o nmi_debug.o process.o				\
18 	   process_32.o ptrace.o ptrace_32.o				\
19 	   reboot.o return_address.o					\
20 	   setup.o signal_32.o sys_sh.o 				\
21 	   syscalls_32.o time.o topology.o traps.o			\
22 	   traps_32.o unwinder.o
23 
24 ifndef CONFIG_GENERIC_IOMAP
25 obj-y				+= iomap.o
26 obj-$(CONFIG_HAS_IOPORT_MAP)	+= ioport.o
27 endif
28 
29 obj-y				+= sys_sh32.o
30 obj-y				+= cpu/
31 obj-$(CONFIG_VSYSCALL)		+= vsyscall/
32 obj-$(CONFIG_SMP)		+= smp.o
33 obj-$(CONFIG_SH_STANDARD_BIOS)	+= sh_bios.o
34 obj-$(CONFIG_KGDB)		+= kgdb.o
35 obj-$(CONFIG_MODULES)		+= sh_ksyms_32.o module.o
36 obj-$(CONFIG_KEXEC_CORE)	+= machine_kexec.o relocate_kernel.o
37 obj-$(CONFIG_VMCORE_INFO)	+= vmcore_info.o
38 obj-$(CONFIG_CRASH_DUMP)	+= crash_dump.o
39 obj-$(CONFIG_STACKTRACE)	+= stacktrace.o
40 obj-$(CONFIG_IO_TRAPPED)	+= io_trapped.o
41 obj-$(CONFIG_KPROBES)		+= kprobes.o
42 obj-$(CONFIG_DYNAMIC_FTRACE)	+= ftrace.o
43 obj-$(CONFIG_FTRACE_SYSCALLS)	+= ftrace.o
44 obj-$(CONFIG_FUNCTION_GRAPH_TRACER) += ftrace.o
45 obj-$(CONFIG_DUMP_CODE)		+= disassemble.o
46 obj-$(CONFIG_HIBERNATION)	+= swsusp.o
47 obj-$(CONFIG_DWARF_UNWINDER)	+= dwarf.o
48 obj-$(CONFIG_PERF_EVENTS)	+= perf_event.o perf_callchain.o
49 obj-$(CONFIG_DMA_NONCOHERENT)	+= dma-coherent.o
50 obj-$(CONFIG_HAVE_HW_BREAKPOINT)		+= hw_breakpoint.o
51