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