2 # Makefile for the linux ppc64 kernel.
5 EXTRA_CFLAGS += -mno-minimal-toc
6 extra-y := head.o vmlinux.lds
8 obj-y := setup.o entry.o traps.o irq.o idle.o dma.o \
9 time.o process.o signal.o syscalls.o misc.o ptrace.o \
10 align.o semaphore.o bitops.o pacaData.o \
11 udbg.o binfmt_elf32.o sys_ppc32.o ioctl32.o \
12 ptrace32.o signal32.o rtc.o init_task.o \
13 lmb.o cputable.o cpu_setup_power4.o idle_power4.o \
14 iommu.o sysfs.o vdso.o pmc.o firmware.o
15 obj-y += vdso32/ vdso64/
17 obj-$(CONFIG_PPC_OF) += of_device.o
19 pci-obj-$(CONFIG_PPC_ISERIES) += iSeries_pci.o iSeries_irq.o \
21 pci-obj-$(CONFIG_PPC_MULTIPLATFORM) += pci_dn.o pci_direct_iommu.o
23 obj-$(CONFIG_PCI) += pci.o pci_iommu.o iomap.o $(pci-obj-y)
25 obj-$(CONFIG_PPC_ISERIES) += HvCall.o HvLpConfig.o LparData.o \
26 iSeries_setup.o ItLpQueue.o hvCall.o \
27 mf.o HvLpEvent.o iSeries_proc.o iSeries_htab.o \
30 obj-$(CONFIG_PPC_MULTIPLATFORM) += nvram.o i8259.o prom_init.o prom.o
32 obj-$(CONFIG_PPC_PSERIES) += pSeries_pci.o pSeries_lpar.o pSeries_hvCall.o \
33 pSeries_nvram.o rtasd.o ras.o pSeries_reconfig.o \
34 pSeries_setup.o pSeries_iommu.o
36 obj-$(CONFIG_PPC_BPA) += bpa_setup.o bpa_iommu.o bpa_nvram.o \
37 bpa_iic.o spider-pic.o
39 obj-$(CONFIG_KEXEC) += machine_kexec.o
40 obj-$(CONFIG_EEH) += eeh.o
41 obj-$(CONFIG_PROC_FS) += proc_ppc64.o
42 obj-$(CONFIG_RTAS_FLASH) += rtas_flash.o
43 obj-$(CONFIG_SMP) += smp.o
44 obj-$(CONFIG_MODULES) += module.o ppc_ksyms.o
45 obj-$(CONFIG_PPC_RTAS) += rtas.o rtas_pci.o
46 obj-$(CONFIG_RTAS_PROC) += rtas-proc.o
47 obj-$(CONFIG_SCANLOG) += scanlog.o
48 obj-$(CONFIG_VIOPATH) += viopath.o
49 obj-$(CONFIG_LPARCFG) += lparcfg.o
50 obj-$(CONFIG_HVC_CONSOLE) += hvconsole.o
51 obj-$(CONFIG_BOOTX_TEXT) += btext.o
52 obj-$(CONFIG_HVCS) += hvcserver.o
54 vio-obj-$(CONFIG_PPC_PSERIES) += pSeries_vio.o
55 vio-obj-$(CONFIG_PPC_ISERIES) += iSeries_vio.o
56 obj-$(CONFIG_IBMVIO) += vio.o $(vio-obj-y)
57 obj-$(CONFIG_XICS) += xics.o
58 obj-$(CONFIG_MPIC) += mpic.o
60 obj-$(CONFIG_PPC_PMAC) += pmac_setup.o pmac_feature.o pmac_pci.o \
61 pmac_time.o pmac_nvram.o pmac_low_i2c.o
63 obj-$(CONFIG_PPC_MAPLE) += maple_setup.o maple_pci.o maple_time.o
65 obj-$(CONFIG_U3_DART) += u3_iommu.o
68 obj-$(CONFIG_PPC_PMAC) += pmac_smp.o smp-tbsync.o
69 obj-$(CONFIG_PPC_ISERIES) += iSeries_smp.o
70 obj-$(CONFIG_PPC_PSERIES) += pSeries_smp.o
71 obj-$(CONFIG_PPC_BPA) += pSeries_smp.o
72 obj-$(CONFIG_PPC_MAPLE) += smp-tbsync.o
75 obj-$(CONFIG_ALTIVEC) += vecemu.o vector.o
76 obj-$(CONFIG_KPROBES) += kprobes.o
78 CFLAGS_ioctl32.o += -Ifs/
80 ifeq ($(CONFIG_PPC_ISERIES),y)
81 arch/ppc64/kernel/head.o: arch/ppc64/kernel/lparmap.s
82 AFLAGS_head.o += -Iarch/ppc64/kernel