xref: /linux/arch/sparc/kernel/Makefile (revision 59abbd1e7cfd6018fb8e58a96aa562aaff8711e7)
1#
2# Makefile for the linux kernel.
3#
4
5asflags-y := -ansi
6ccflags-y := -Werror
7
8extra-y     := head_$(BITS).o
9extra-y     += init_task.o
10extra-y     += vmlinux.lds
11
12obj-$(CONFIG_SPARC32)   += entry.o wof.o wuf.o
13obj-$(CONFIG_SPARC32)   += etrap_32.o
14obj-$(CONFIG_SPARC32)   += rtrap_32.o
15obj-y                   += traps_$(BITS).o
16
17# IRQ
18obj-y                   += irq_$(BITS).o
19obj-$(CONFIG_SPARC32)   += sun4m_irq.o sun4c_irq.o sun4d_irq.o
20
21obj-y                   += process_$(BITS).o
22obj-y                   += signal_$(BITS).o
23obj-$(CONFIG_SPARC32)   += ioport.o
24obj-y                   += setup_$(BITS).o
25obj-y                   += idprom.o
26obj-y                   += sys_sparc_$(BITS).o
27obj-$(CONFIG_SPARC32)   += systbls_32.o
28obj-y                   += time_$(BITS).o
29obj-$(CONFIG_SPARC32)   += windows.o
30obj-y                   += cpu.o
31obj-$(CONFIG_SPARC32)   += devices.o
32obj-$(CONFIG_SPARC32)   += tadpole.o
33obj-$(CONFIG_SPARC32)   += tick14.o
34obj-y                   += ptrace_$(BITS).o
35obj-y                   += unaligned_$(BITS).o
36obj-y                   += una_asm_$(BITS).o
37obj-$(CONFIG_SPARC32)   += muldiv.o
38obj-y                   += prom_common.o
39obj-y                   += prom_$(BITS).o
40obj-y                   += of_device_common.o
41obj-y                   += of_device_$(BITS).o
42obj-$(CONFIG_SPARC64)   += prom_irqtrans.o
43
44obj-$(CONFIG_SPARC_LEON)+= leon_kernel.o
45
46obj-$(CONFIG_SPARC64)   += reboot.o
47obj-$(CONFIG_SPARC64)   += sysfs.o
48obj-$(CONFIG_SPARC64)   += iommu.o
49obj-$(CONFIG_SPARC64)   += central.o
50obj-$(CONFIG_SPARC64)   += starfire.o
51obj-$(CONFIG_SPARC64)   += power.o
52obj-$(CONFIG_SPARC64)   += sbus.o
53obj-$(CONFIG_SPARC64)   += ebus.o
54obj-$(CONFIG_SPARC64)   += visemul.o
55obj-$(CONFIG_SPARC64)   += hvapi.o
56obj-$(CONFIG_SPARC64)   += sstate.o
57obj-$(CONFIG_SPARC64)   += mdesc.o
58obj-$(CONFIG_SPARC64)	+= pcr.o
59obj-$(CONFIG_SPARC64)	+= nmi.o
60obj-$(CONFIG_SPARC64_SMP) += cpumap.o
61
62# sparc32 do not use GENERIC_HARDIRQS but uses the generic devres implementation
63obj-$(CONFIG_SPARC32)     += devres.o
64devres-y                  := ../../../kernel/irq/devres.o
65
66obj-$(CONFIG_SPARC32)     += dma.o
67
68obj-$(CONFIG_SPARC32_PCI) += pcic.o
69
70obj-$(CONFIG_SMP)         += trampoline_$(BITS).o smp_$(BITS).o
71obj-$(CONFIG_SPARC32_SMP) += sun4m_smp.o sun4d_smp.o
72obj-$(CONFIG_SPARC64_SMP) += hvtramp.o
73
74obj-y                     += auxio_$(BITS).o
75obj-$(CONFIG_SUN_PM)      += apc.o pmc.o
76
77obj-$(CONFIG_MODULES)     += module.o
78obj-$(CONFIG_MODULES)     += sparc_ksyms_$(BITS).o
79obj-$(CONFIG_SPARC_LED)   += led.o
80obj-$(CONFIG_KGDB)        += kgdb_$(BITS).o
81
82
83obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o
84CFLAGS_REMOVE_ftrace.o := -pg
85
86obj-$(CONFIG_STACKTRACE)     += stacktrace.o
87# sparc64 PCI
88obj-$(CONFIG_SPARC64_PCI)    += pci.o pci_common.o psycho_common.o
89obj-$(CONFIG_SPARC64_PCI)    += pci_psycho.o pci_sabre.o pci_schizo.o
90obj-$(CONFIG_SPARC64_PCI)    += pci_sun4v.o pci_sun4v_asm.o pci_fire.o
91obj-$(CONFIG_PCI_MSI)        += pci_msi.o
92
93obj-$(CONFIG_COMPAT)         += sys32.o sys_sparc32.o signal32.o
94
95# sparc64 cpufreq
96obj-$(CONFIG_US3_FREQ)  += us3_cpufreq.o
97obj-$(CONFIG_US2E_FREQ) += us2e_cpufreq.o
98obj-$(CONFIG_US3_MC)    += chmc.o
99
100obj-$(CONFIG_KPROBES)   += kprobes.o
101obj-$(CONFIG_SUN_LDOMS) += ldc.o vio.o viohs.o ds.o
102
103obj-$(CONFIG_AUDIT)     += audit.o
104audit--$(CONFIG_AUDIT)  := compat_audit.o
105obj-$(CONFIG_COMPAT)    += $(audit--y)
106
107pc--$(CONFIG_PERF_COUNTERS) := perf_counter.o
108obj-$(CONFIG_SPARC64)	+= $(pc--y)
109