^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) # Makefile for the linux kernel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) asflags-y := -ansi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) ccflags-y := -Werror
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) extra-y := head_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) # Undefine sparc when processing vmlinux.lds - it is used
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) # And teach CPP we are doing $(BITS) builds (for this case)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) CPPFLAGS_vmlinux.lds := -Usparc -m$(BITS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) extra-y += vmlinux.lds
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) ifdef CONFIG_FUNCTION_TRACER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) # Do not profile debug and lowlevel utilities
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) CFLAGS_REMOVE_ftrace.o := -pg
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) CFLAGS_REMOVE_time_$(BITS).o := -pg
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) CFLAGS_REMOVE_perf_event.o := -pg
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) CFLAGS_REMOVE_pcr.o := -pg
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) obj-$(CONFIG_SPARC64) += urtt_fill.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) obj-$(CONFIG_SPARC32) += entry.o wof.o wuf.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) obj-$(CONFIG_SPARC32) += etrap_32.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) obj-$(CONFIG_SPARC32) += rtrap_32.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) obj-y += traps_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) # IRQ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) obj-y += irq_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) obj-$(CONFIG_SPARC32) += sun4m_irq.o sun4d_irq.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) obj-y += process_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) obj-y += process.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) obj-y += signal_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) obj-y += sigutil_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) obj-$(CONFIG_SPARC32) += ioport.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) obj-y += setup_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) obj-y += idprom.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) obj-y += sys_sparc_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) obj-$(CONFIG_SPARC32) += systbls_32.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) obj-y += time_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) obj-$(CONFIG_SPARC32) += windows.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) obj-y += cpu.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) obj-$(CONFIG_SPARC64) += vdso.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) obj-$(CONFIG_SPARC32) += devices.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) obj-y += ptrace_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) obj-y += unaligned_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) obj-y += una_asm_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) obj-y += prom_common.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) obj-y += prom_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) obj-y += of_device_common.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) obj-y += of_device_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) obj-$(CONFIG_SPARC64) += prom_irqtrans.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) obj-$(CONFIG_SPARC32) += leon_kernel.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) obj-$(CONFIG_SPARC32) += leon_pmc.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) obj-$(CONFIG_SPARC64) += reboot.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) obj-$(CONFIG_SPARC64) += sysfs.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) obj-$(CONFIG_SPARC64) += iommu.o iommu-common.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) obj-$(CONFIG_SPARC64) += central.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) obj-$(CONFIG_SPARC64) += starfire.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) obj-$(CONFIG_SPARC64) += power.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) obj-$(CONFIG_SPARC64) += sbus.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) obj-$(CONFIG_SPARC64) += ebus.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) obj-$(CONFIG_SPARC64) += visemul.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) obj-$(CONFIG_SPARC64) += hvapi.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) obj-$(CONFIG_SPARC64) += sstate.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) obj-$(CONFIG_SPARC64) += mdesc.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) obj-$(CONFIG_SPARC64) += adi_64.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) obj-$(CONFIG_SPARC64) += pcr.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) obj-$(CONFIG_SPARC64) += nmi.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) obj-$(CONFIG_SPARC64_SMP) += cpumap.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) obj-$(CONFIG_PCIC_PCI) += pcic.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) obj-$(CONFIG_LEON_PCI) += leon_pci.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) obj-$(CONFIG_SPARC_GRPCI2)+= leon_pci_grpci2.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) obj-$(CONFIG_SPARC_GRPCI1)+= leon_pci_grpci1.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) obj-$(CONFIG_SMP) += trampoline_$(BITS).o smp_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) obj-$(CONFIG_SPARC32_SMP) += sun4m_smp.o sun4d_smp.o leon_smp.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) obj-$(CONFIG_SPARC64_SMP) += hvtramp.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) obj-y += auxio_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) obj-$(CONFIG_SUN_PM) += apc.o pmc.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) obj-$(CONFIG_MODULES) += module.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) obj-$(CONFIG_MODULES) += sparc_ksyms.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) obj-$(CONFIG_SPARC_LED) += led.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) obj-$(CONFIG_KGDB) += kgdb_$(BITS).o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) obj-$(CONFIG_FUNCTION_GRAPH_TRACER) += ftrace.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) obj-$(CONFIG_EARLYFB) += btext.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) obj-$(CONFIG_STACKTRACE) += stacktrace.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) # sparc64 PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) obj-$(CONFIG_SPARC64_PCI) += pci.o pci_common.o psycho_common.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) obj-$(CONFIG_SPARC64_PCI) += pci_psycho.o pci_sabre.o pci_schizo.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) obj-$(CONFIG_SPARC64_PCI) += pci_sun4v.o pci_sun4v_asm.o pci_fire.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) obj-$(CONFIG_SPARC64_PCI_MSI) += pci_msi.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) obj-$(CONFIG_COMPAT) += sys32.o sys_sparc32.o signal32.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) obj-$(CONFIG_US3_MC) += chmc.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) obj-$(CONFIG_KPROBES) += kprobes.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) obj-$(CONFIG_SUN_LDOMS) += ldc.o vio.o viohs.o ds.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) obj-$(CONFIG_AUDIT) += audit.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) audit--$(CONFIG_AUDIT) := compat_audit.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) obj-$(CONFIG_COMPAT) += $(audit--y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) pc--$(CONFIG_PERF_EVENTS) := perf_event.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) obj-$(CONFIG_SPARC64) += $(pc--y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) obj-$(CONFIG_UPROBES) += uprobes.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) obj-$(CONFIG_JUMP_LABEL) += jump_label.o