riscv: kernel: Add support for hibernate/suspend to disk
[platform/kernel/linux-starfive.git] / arch / riscv / kernel / Makefile
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Makefile for the RISC-V Linux kernel
4 #
5
6 ifdef CONFIG_FTRACE
7 CFLAGS_REMOVE_ftrace.o  = $(CC_FLAGS_FTRACE)
8 CFLAGS_REMOVE_patch.o   = $(CC_FLAGS_FTRACE)
9 CFLAGS_REMOVE_sbi.o     = $(CC_FLAGS_FTRACE)
10 endif
11 CFLAGS_syscall_table.o  += $(call cc-option,-Wno-override-init,)
12
13 ifdef CONFIG_KEXEC
14 AFLAGS_kexec_relocate.o := -mcmodel=medany $(call cc-option,-mno-relax)
15 endif
16
17 extra-y += head.o
18 extra-y += vmlinux.lds
19
20 obj-y   += soc.o
21 obj-y   += cpu.o
22 obj-y   += cpufeature.o
23 obj-y   += entry.o
24 obj-y   += irq.o
25 obj-y   += process.o
26 obj-y   += ptrace.o
27 obj-y   += reset.o
28 obj-y   += setup.o
29 obj-y   += signal.o
30 obj-y   += syscall_table.o
31 obj-y   += sys_riscv.o
32 obj-y   += time.o
33 obj-y   += traps.o
34 obj-y   += riscv_ksyms.o
35 obj-y   += stacktrace.o
36 obj-y   += cacheinfo.o
37 obj-y   += patch.o
38 obj-y   += probes/
39 obj-$(CONFIG_MMU) += vdso.o vdso/
40
41 obj-$(CONFIG_RISCV_M_MODE)      += traps_misaligned.o
42 obj-$(CONFIG_FPU)               += fpu.o
43 obj-$(CONFIG_SMP)               += smpboot.o
44 obj-$(CONFIG_SMP)               += smp.o
45 obj-$(CONFIG_SMP)               += cpu_ops.o
46 obj-$(CONFIG_SMP)               += cpu_ops_spinwait.o
47 obj-$(CONFIG_MODULES)           += module.o
48 obj-$(CONFIG_MODULE_SECTIONS)   += module-sections.o
49
50 obj-$(CONFIG_CPU_PM)            += suspend_entry.o suspend.o
51 obj-$(CONFIG_HIBERNATION)       += hibernate.o
52 obj-$(CONFIG_FUNCTION_TRACER)   += mcount.o ftrace.o
53 obj-$(CONFIG_DYNAMIC_FTRACE)    += mcount-dyn.o
54
55 obj-$(CONFIG_RISCV_BASE_PMU)    += perf_event.o
56 obj-$(CONFIG_PERF_EVENTS)       += perf_callchain.o
57 obj-$(CONFIG_HAVE_PERF_REGS)    += perf_regs.o
58 obj-$(CONFIG_RISCV_SBI)         += sbi.o
59 ifeq ($(CONFIG_RISCV_SBI), y)
60 obj-$(CONFIG_SMP) += cpu_ops_sbi.o
61 endif
62 obj-$(CONFIG_HOTPLUG_CPU)       += cpu-hotplug.o
63 obj-$(CONFIG_KGDB)              += kgdb.o
64 obj-$(CONFIG_KEXEC)             += kexec_relocate.o crash_save_regs.o machine_kexec.o
65 obj-$(CONFIG_CRASH_DUMP)        += crash_dump.o
66
67 obj-$(CONFIG_JUMP_LABEL)        += jump_label.o
68
69 obj-$(CONFIG_EFI)               += efi.o