aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ppc64
diff options
context:
space:
mode:
Diffstat (limited to 'arch/ppc64')
-rw-r--r--arch/ppc64/Kconfig3
-rw-r--r--arch/ppc64/kernel/Makefile64
-rw-r--r--arch/ppc64/kernel/asm-offsets.c1
-rw-r--r--arch/ppc64/kernel/bpa_iommu.c2
-rw-r--r--arch/ppc64/kernel/bpa_setup.c1
-rw-r--r--arch/ppc64/kernel/maple_setup.c1
-rw-r--r--arch/ppc64/kernel/pmac_setup.c1
7 files changed, 65 insertions, 8 deletions
diff --git a/arch/ppc64/Kconfig b/arch/ppc64/Kconfig
index 246212115a48..e656e02d9dd1 100644
--- a/arch/ppc64/Kconfig
+++ b/arch/ppc64/Kconfig
@@ -186,6 +186,9 @@ config BOOTX_TEXT
186 Say Y here to see progress messages from the boot firmware in text 186 Say Y here to see progress messages from the boot firmware in text
187 mode. Requires an Open Firmware compatible video card. 187 mode. Requires an Open Firmware compatible video card.
188 188
189config POWER4
190 def_bool y
191
189config POWER4_ONLY 192config POWER4_ONLY
190 bool "Optimize for POWER4" 193 bool "Optimize for POWER4"
191 default n 194 default n
diff --git a/arch/ppc64/kernel/Makefile b/arch/ppc64/kernel/Makefile
index 79366e4a9e5c..5c598892f891 100644
--- a/arch/ppc64/kernel/Makefile
+++ b/arch/ppc64/kernel/Makefile
@@ -2,14 +2,14 @@
2# Makefile for the linux ppc64 kernel. 2# Makefile for the linux ppc64 kernel.
3# 3#
4 4
5EXTRA_CFLAGS += -mno-minimal-toc
6ifneq ($(CONFIG_PPC_MERGE),y) 5ifneq ($(CONFIG_PPC_MERGE),y)
6
7EXTRA_CFLAGS += -mno-minimal-toc
7extra-y := head.o vmlinux.lds 8extra-y := head.o vmlinux.lds
8endif
9 9
10obj-y := setup.o entry.o irq.o idle.o dma.o \ 10obj-y := setup.o entry.o irq.o idle.o dma.o \
11 time.o process.o signal.o syscalls.o misc.o ptrace.o \ 11 time.o process.o signal.o syscalls.o misc.o ptrace.o \
12 align.o semaphore.o bitops.o pacaData.o \ 12 align.o bitops.o pacaData.o \
13 udbg.o binfmt_elf32.o sys_ppc32.o ioctl32.o \ 13 udbg.o binfmt_elf32.o sys_ppc32.o ioctl32.o \
14 ptrace32.o signal32.o rtc.o init_task.o \ 14 ptrace32.o signal32.o rtc.o init_task.o \
15 cputable.o cpu_setup_power4.o \ 15 cputable.o cpu_setup_power4.o \
@@ -43,7 +43,6 @@ obj-$(CONFIG_HVC_CONSOLE) += hvconsole.o
43obj-$(CONFIG_BOOTX_TEXT) += btext.o 43obj-$(CONFIG_BOOTX_TEXT) += btext.o
44obj-$(CONFIG_HVCS) += hvcserver.o 44obj-$(CONFIG_HVCS) += hvcserver.o
45 45
46vio-obj-$(CONFIG_PPC_PSERIES) += pSeries_vio.o
47obj-$(CONFIG_IBMVIO) += vio.o $(vio-obj-y) 46obj-$(CONFIG_IBMVIO) += vio.o $(vio-obj-y)
48obj-$(CONFIG_XICS) += xics.o 47obj-$(CONFIG_XICS) += xics.o
49obj-$(CONFIG_MPIC) += mpic.o 48obj-$(CONFIG_MPIC) += mpic.o
@@ -59,8 +58,6 @@ obj-$(CONFIG_U3_DART) += u3_iommu.o
59 58
60ifdef CONFIG_SMP 59ifdef CONFIG_SMP
61obj-$(CONFIG_PPC_PMAC) += pmac_smp.o smp-tbsync.o 60obj-$(CONFIG_PPC_PMAC) += pmac_smp.o smp-tbsync.o
62obj-$(CONFIG_PPC_PSERIES) += pSeries_smp.o
63obj-$(CONFIG_PPC_BPA) += pSeries_smp.o
64obj-$(CONFIG_PPC_MAPLE) += smp-tbsync.o 61obj-$(CONFIG_PPC_MAPLE) += smp-tbsync.o
65endif 62endif
66 63
@@ -68,9 +65,62 @@ obj-$(CONFIG_KPROBES) += kprobes.o
68 65
69CFLAGS_ioctl32.o += -Ifs/ 66CFLAGS_ioctl32.o += -Ifs/
70 67
71ifneq ($(CONFIG_PPC_MERGE),y)
72ifeq ($(CONFIG_PPC_ISERIES),y) 68ifeq ($(CONFIG_PPC_ISERIES),y)
73arch/ppc64/kernel/head.o: arch/powerpc/kernel/lparmap.s 69arch/ppc64/kernel/head.o: arch/powerpc/kernel/lparmap.s
74AFLAGS_head.o += -Iarch/powerpc/kernel 70AFLAGS_head.o += -Iarch/powerpc/kernel
75endif 71endif
72
73else
74
75# Things still needed from here by the merged ppc code
76
77obj-y := irq.o idle.o dma.o \
78 time.o signal.o syscalls.o ptrace.o \
79 align.o bitops.o pacaData.o \
80 udbg.o binfmt_elf32.o sys_ppc32.o ioctl32.o \
81 ptrace32.o signal32.o rtc.o \
82 cputable.o cpu_setup_power4.o \
83 iommu.o sysfs.o vdso.o pmc.o firmware.o
84obj-y += vdso32/ vdso64/
85
86pci-obj-$(CONFIG_PPC_MULTIPLATFORM) += pci_dn.o pci_direct_iommu.o
87
88obj-$(CONFIG_PCI) += pci.o pci_iommu.o iomap.o $(pci-obj-y)
89
90obj-$(CONFIG_PPC_MULTIPLATFORM) += nvram.o i8259.o
91
92obj-$(CONFIG_PPC_PSERIES) += rtasd.o ras.o udbg_16550.o
93
94obj-$(CONFIG_PPC_BPA) += bpa_setup.o bpa_iommu.o bpa_nvram.o \
95 bpa_iic.o spider-pic.o
96
97obj-$(CONFIG_KEXEC) += machine_kexec.o
98obj-$(CONFIG_EEH) += eeh.o
99obj-$(CONFIG_PROC_FS) += proc_ppc64.o
100obj-$(CONFIG_RTAS_FLASH) += rtas_flash.o
101obj-$(CONFIG_SMP) += smp.o
102obj-$(CONFIG_MODULES) += module.o
103obj-$(CONFIG_PPC_RTAS) += rtas.o rtas_pci.o
104obj-$(CONFIG_RTAS_PROC) += rtas-proc.o
105obj-$(CONFIG_SCANLOG) += scanlog.o
106obj-$(CONFIG_LPARCFG) += lparcfg.o
107obj-$(CONFIG_HVC_CONSOLE) += hvconsole.o
108obj-$(CONFIG_HVCS) += hvcserver.o
109
110obj-$(CONFIG_IBMVIO) += vio.o
111obj-$(CONFIG_XICS) += xics.o
112
113obj-$(CONFIG_PPC_MAPLE) += maple_setup.o maple_pci.o maple_time.o \
114 udbg_16550.o
115
116obj-$(CONFIG_U3_DART) += u3_iommu.o
117
118ifdef CONFIG_SMP
119obj-$(CONFIG_PPC_MAPLE) += smp-tbsync.o
120endif
121
122obj-$(CONFIG_KPROBES) += kprobes.o
123
124CFLAGS_ioctl32.o += -Ifs/
125
76endif 126endif
diff --git a/arch/ppc64/kernel/asm-offsets.c b/arch/ppc64/kernel/asm-offsets.c
index 1ff4fa05a973..1378fbbe1e57 100644
--- a/arch/ppc64/kernel/asm-offsets.c
+++ b/arch/ppc64/kernel/asm-offsets.c
@@ -77,6 +77,7 @@ int main(void)
77 DEFINE(ICACHEL1LOGLINESIZE, offsetof(struct ppc64_caches, log_iline_size)); 77 DEFINE(ICACHEL1LOGLINESIZE, offsetof(struct ppc64_caches, log_iline_size));
78 DEFINE(ICACHEL1LINESPERPAGE, offsetof(struct ppc64_caches, ilines_per_page)); 78 DEFINE(ICACHEL1LINESPERPAGE, offsetof(struct ppc64_caches, ilines_per_page));
79 DEFINE(PLATFORM, offsetof(struct systemcfg, platform)); 79 DEFINE(PLATFORM, offsetof(struct systemcfg, platform));
80 DEFINE(PLATFORM_LPAR, PLATFORM_LPAR);
80 81
81 /* paca */ 82 /* paca */
82 DEFINE(PACA_SIZE, sizeof(struct paca_struct)); 83 DEFINE(PACA_SIZE, sizeof(struct paca_struct));
diff --git a/arch/ppc64/kernel/bpa_iommu.c b/arch/ppc64/kernel/bpa_iommu.c
index 0cc463f24539..45ebe5486c40 100644
--- a/arch/ppc64/kernel/bpa_iommu.c
+++ b/arch/ppc64/kernel/bpa_iommu.c
@@ -99,7 +99,7 @@ get_iost_entry(unsigned long iopt_base, unsigned long io_address, unsigned page_
99 break; 99 break;
100 100
101 default: /* not a known compile time constant */ 101 default: /* not a known compile time constant */
102 BUILD_BUG_ON(1); 102 BUG_ON(1);
103 break; 103 break;
104 } 104 }
105 105
diff --git a/arch/ppc64/kernel/bpa_setup.c b/arch/ppc64/kernel/bpa_setup.c
index 9f915f4222b1..017cf23e91fa 100644
--- a/arch/ppc64/kernel/bpa_setup.c
+++ b/arch/ppc64/kernel/bpa_setup.c
@@ -44,6 +44,7 @@
44#include <asm/nvram.h> 44#include <asm/nvram.h>
45#include <asm/cputable.h> 45#include <asm/cputable.h>
46#include <asm/ppc-pci.h> 46#include <asm/ppc-pci.h>
47#include <asm/irq.h>
47 48
48#include "bpa_iic.h" 49#include "bpa_iic.h"
49#include "bpa_iommu.h" 50#include "bpa_iommu.h"
diff --git a/arch/ppc64/kernel/maple_setup.c b/arch/ppc64/kernel/maple_setup.c
index 2a7fae01eee1..22987675f544 100644
--- a/arch/ppc64/kernel/maple_setup.c
+++ b/arch/ppc64/kernel/maple_setup.c
@@ -60,6 +60,7 @@
60#include <asm/of_device.h> 60#include <asm/of_device.h>
61#include <asm/lmb.h> 61#include <asm/lmb.h>
62#include <asm/mpic.h> 62#include <asm/mpic.h>
63#include <asm/udbg.h>
63 64
64#ifdef DEBUG 65#ifdef DEBUG
65#define DBG(fmt...) udbg_printf(fmt) 66#define DBG(fmt...) udbg_printf(fmt)
diff --git a/arch/ppc64/kernel/pmac_setup.c b/arch/ppc64/kernel/pmac_setup.c
index 497c3cd95bc3..be4c1693d149 100644
--- a/arch/ppc64/kernel/pmac_setup.c
+++ b/arch/ppc64/kernel/pmac_setup.c
@@ -73,6 +73,7 @@
73#include <asm/smu.h> 73#include <asm/smu.h>
74#include <asm/pmc.h> 74#include <asm/pmc.h>
75#include <asm/mpic.h> 75#include <asm/mpic.h>
76#include <asm/udbg.h>
76 77
77#include "pmac.h" 78#include "pmac.h"
78 79