2 # Makefile for the linux kernel.
8 extra-y := head_$(BITS).o
11 # Undefine sparc when processing vmlinux.lds - it is used
12 # And teach CPP we are doing $(BITS) builds (for this case)
13 CPPFLAGS_vmlinux.lds := -Usparc -m$(BITS)
14 extra-y += vmlinux.lds
16 ifdef CONFIG_FUNCTION_TRACER
17 # Do not profile debug and lowlevel utilities
18 CFLAGS_REMOVE_ftrace.o := -pg
19 CFLAGS_REMOVE_time_$(BITS).o := -pg
20 CFLAGS_REMOVE_perf_event.o := -pg
21 CFLAGS_REMOVE_pcr.o := -pg
24 obj-$(CONFIG_SPARC32) += entry.o wof.o wuf.o
25 obj-$(CONFIG_SPARC32) += etrap_32.o
26 obj-$(CONFIG_SPARC32) += rtrap_32.o
27 obj-y += traps_$(BITS).o
30 obj-y += irq_$(BITS).o
31 obj-$(CONFIG_SPARC32) += sun4m_irq.o sun4c_irq.o sun4d_irq.o
33 obj-y += process_$(BITS).o
34 obj-y += signal_$(BITS).o
35 obj-$(CONFIG_SPARC32) += ioport.o
36 obj-y += setup_$(BITS).o
38 obj-y += sys_sparc_$(BITS).o
39 obj-$(CONFIG_SPARC32) += systbls_32.o
40 obj-y += time_$(BITS).o
41 obj-$(CONFIG_SPARC32) += windows.o
43 obj-$(CONFIG_SPARC32) += devices.o
44 obj-$(CONFIG_SPARC32) += tadpole.o
45 obj-y += ptrace_$(BITS).o
46 obj-y += unaligned_$(BITS).o
47 obj-y += una_asm_$(BITS).o
48 obj-$(CONFIG_SPARC32) += muldiv.o
49 obj-y += prom_common.o
50 obj-y += prom_$(BITS).o
51 obj-y += of_device_common.o
52 obj-y += of_device_$(BITS).o
53 obj-$(CONFIG_SPARC64) += prom_irqtrans.o
55 obj-$(CONFIG_SPARC_LEON)+= leon_kernel.o
56 obj-$(CONFIG_SPARC_LEON)+= leon_pmc.o
58 obj-$(CONFIG_SPARC64) += reboot.o
59 obj-$(CONFIG_SPARC64) += sysfs.o
60 obj-$(CONFIG_SPARC64) += iommu.o
61 obj-$(CONFIG_SPARC64) += central.o
62 obj-$(CONFIG_SPARC64) += starfire.o
63 obj-$(CONFIG_SPARC64) += power.o
64 obj-$(CONFIG_SPARC64) += sbus.o
65 obj-$(CONFIG_SPARC64) += ebus.o
66 obj-$(CONFIG_SPARC64) += visemul.o
67 obj-$(CONFIG_SPARC64) += hvapi.o
68 obj-$(CONFIG_SPARC64) += sstate.o
69 obj-$(CONFIG_SPARC64) += mdesc.o
70 obj-$(CONFIG_SPARC64) += pcr.o
71 obj-$(CONFIG_SPARC64) += nmi.o
72 obj-$(CONFIG_SPARC64_SMP) += cpumap.o
74 # sparc32 do not use GENERIC_HARDIRQS but uses the generic devres implementation
75 obj-$(CONFIG_SPARC32) += devres.o
76 devres-y := ../../../kernel/irq/devres.o
80 obj-$(CONFIG_SPARC32_PCI) += pcic.o
82 obj-$(CONFIG_SMP) += trampoline_$(BITS).o smp_$(BITS).o
83 obj-$(CONFIG_SPARC32_SMP) += sun4m_smp.o sun4d_smp.o leon_smp.o
84 obj-$(CONFIG_SPARC64_SMP) += hvtramp.o
86 obj-y += auxio_$(BITS).o
87 obj-$(CONFIG_SUN_PM) += apc.o pmc.o
89 obj-$(CONFIG_MODULES) += module.o
90 obj-$(CONFIG_MODULES) += sparc_ksyms_$(BITS).o
91 obj-$(CONFIG_SPARC_LED) += led.o
92 obj-$(CONFIG_KGDB) += kgdb_$(BITS).o
95 obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o
96 obj-$(CONFIG_FUNCTION_GRAPH_TRACER) += ftrace.o
98 obj-$(CONFIG_EARLYFB) += btext.o
99 obj-$(CONFIG_STACKTRACE) += stacktrace.o
101 obj-$(CONFIG_SPARC64_PCI) += pci.o pci_common.o psycho_common.o
102 obj-$(CONFIG_SPARC64_PCI) += pci_psycho.o pci_sabre.o pci_schizo.o
103 obj-$(CONFIG_SPARC64_PCI) += pci_sun4v.o pci_sun4v_asm.o pci_fire.o
104 obj-$(CONFIG_PCI_MSI) += pci_msi.o
106 obj-$(CONFIG_COMPAT) += sys32.o sys_sparc32.o signal32.o
109 obj-$(CONFIG_US3_FREQ) += us3_cpufreq.o
110 obj-$(CONFIG_US2E_FREQ) += us2e_cpufreq.o
111 obj-$(CONFIG_US3_MC) += chmc.o
113 obj-$(CONFIG_KPROBES) += kprobes.o
114 obj-$(CONFIG_SUN_LDOMS) += ldc.o vio.o viohs.o ds.o
116 obj-$(CONFIG_AUDIT) += audit.o
117 audit--$(CONFIG_AUDIT) := compat_audit.o
118 obj-$(CONFIG_COMPAT) += $(audit--y)
120 pc--$(CONFIG_PERF_EVENTS) := perf_event.o
121 obj-$(CONFIG_SPARC64) += $(pc--y)
123 obj-$(CONFIG_SPARC64) += jump_label.o