Commit 77f543cb authored by Paul Mackerras's avatar Paul Mackerras

powerpc: Fix various compile errors with ARCH=ppc, ppc64 and powerpc

This makes ppc use the syscalls.c from arch/powerpc/kernel, exports
copy_and_flush from head_32.S for use by prom_init.c (ARCH=powerpc),
and consolidates the sys_fadvise64_64 implementations for 32-bit.
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 81e7009e
...@@ -121,7 +121,6 @@ head-$(CONFIG_4xx) := arch/powerpc/kernel/head_4xx.o ...@@ -121,7 +121,6 @@ head-$(CONFIG_4xx) := arch/powerpc/kernel/head_4xx.o
head-$(CONFIG_44x) := arch/powerpc/kernel/head_44x.o head-$(CONFIG_44x) := arch/powerpc/kernel/head_44x.o
head-$(CONFIG_FSL_BOOKE) := arch/powerpc/kernel/head_fsl_booke.o head-$(CONFIG_FSL_BOOKE) := arch/powerpc/kernel/head_fsl_booke.o
head-$(CONFIG_6xx) += arch/powerpc/kernel/idle_6xx.o
head-$(CONFIG_PPC64) += arch/powerpc/kernel/entry_64.o head-$(CONFIG_PPC64) += arch/powerpc/kernel/entry_64.o
head-$(CONFIG_PPC_FPU) += arch/powerpc/kernel/fpu.o head-$(CONFIG_PPC_FPU) += arch/powerpc/kernel/fpu.o
......
...@@ -10,7 +10,8 @@ CFLAGS_prom_init.o += -fPIC ...@@ -10,7 +10,8 @@ CFLAGS_prom_init.o += -fPIC
CFLAGS_btext.o += -fPIC CFLAGS_btext.o += -fPIC
endif endif
obj-y := semaphore.o cputable.o ptrace.o signal_32.o obj-y := semaphore.o cputable.o ptrace.o syscalls.o \
signal_32.o
obj-$(CONFIG_PPC64) += binfmt_elf32.o sys_ppc32.o obj-$(CONFIG_PPC64) += binfmt_elf32.o sys_ppc32.o
obj-$(CONFIG_ALTIVEC) += vecemu.o vector.o obj-$(CONFIG_ALTIVEC) += vecemu.o vector.o
obj-$(CONFIG_POWER4) += idle_power4.o obj-$(CONFIG_POWER4) += idle_power4.o
...@@ -24,14 +25,13 @@ extra-$(CONFIG_40x) := head_4xx.o ...@@ -24,14 +25,13 @@ extra-$(CONFIG_40x) := head_4xx.o
extra-$(CONFIG_44x) := head_44x.o extra-$(CONFIG_44x) := head_44x.o
extra-$(CONFIG_FSL_BOOKE) := head_fsl_booke.o extra-$(CONFIG_FSL_BOOKE) := head_fsl_booke.o
extra-$(CONFIG_8xx) := head_8xx.o extra-$(CONFIG_8xx) := head_8xx.o
extra-$(CONFIG_6xx) += idle_6xx.o
extra-$(CONFIG_PPC64) += entry_64.o extra-$(CONFIG_PPC64) += entry_64.o
extra-$(CONFIG_PPC_FPU) += fpu.o extra-$(CONFIG_PPC_FPU) += fpu.o
extra-y += vmlinux.lds extra-y += vmlinux.lds
obj-y += process.o init_task.o \ obj-y += process.o init_task.o \
prom.o systbl.o traps.o syscalls.o prom.o systbl.o traps.o
obj-$(CONFIG_PPC32) += entry_32.o setup_32.o misc_32.o obj-$(CONFIG_PPC32) += entry_32.o idle_6xx.o setup_32.o misc_32.o
obj-$(CONFIG_PPC64) += setup_64.o misc_64.o obj-$(CONFIG_PPC64) += setup_64.o misc_64.o
obj-$(CONFIG_PPC_OF) += prom_init.o obj-$(CONFIG_PPC_OF) += prom_init.o
obj-$(CONFIG_MODULES) += ppc_ksyms.o obj-$(CONFIG_MODULES) += ppc_ksyms.o
...@@ -44,7 +44,7 @@ endif ...@@ -44,7 +44,7 @@ endif
else else
# stuff used from here for ARCH=ppc or ARCH=ppc64 # stuff used from here for ARCH=ppc or ARCH=ppc64
obj-$(CONFIG_PPC64) += traps.o process.o init_task.o syscalls.o obj-$(CONFIG_PPC64) += traps.o process.o init_task.o
fpux-$(CONFIG_PPC32) += fpu.o fpux-$(CONFIG_PPC32) += fpu.o
extra-$(CONFIG_PPC_FPU) += $(fpux-y) extra-$(CONFIG_PPC_FPU) += $(fpux-y)
......
...@@ -831,7 +831,7 @@ relocate_kernel: ...@@ -831,7 +831,7 @@ relocate_kernel:
* r3 = dest addr, r4 = source addr, r5 = copy limit, r6 = start offset * r3 = dest addr, r4 = source addr, r5 = copy limit, r6 = start offset
* on exit, r3, r4, r5 are unchanged, r6 is updated to be >= r5. * on exit, r3, r4, r5 are unchanged, r6 is updated to be >= r5.
*/ */
copy_and_flush: _GLOBAL(copy_and_flush)
addi r5,r5,-4 addi r5,r5,-4
addi r6,r6,-4 addi r6,r6,-4
4: li r0,L1_CACHE_BYTES/4 4: li r0,L1_CACHE_BYTES/4
......
...@@ -1069,13 +1069,6 @@ long ppc32_fadvise64(int fd, u32 unused, u32 offset_high, u32 offset_low, ...@@ -1069,13 +1069,6 @@ long ppc32_fadvise64(int fd, u32 unused, u32 offset_high, u32 offset_low,
advice); advice);
} }
long ppc32_fadvise64_64(int fd, int advice, u32 offset_high, u32 offset_low,
u32 len_high, u32 len_low)
{
return sys_fadvise64(fd, (u64)offset_high << 32 | offset_low,
(u64)len_high << 32 | len_low, advice);
}
long ppc32_timer_create(clockid_t clock, long ppc32_timer_create(clockid_t clock,
struct compat_sigevent __user *ev32, struct compat_sigevent __user *ev32,
timer_t __user *timer_id) timer_t __user *timer_id)
......
...@@ -336,6 +336,13 @@ time_t sys64_time(time_t __user * tloc) ...@@ -336,6 +336,13 @@ time_t sys64_time(time_t __user * tloc)
} }
#endif #endif
long ppc_fadvise64_64(int fd, int advice, u32 offset_high, u32 offset_low,
u32 len_high, u32 len_low)
{
return sys_fadvise64(fd, (u64)offset_high << 32 | offset_low,
(u64)len_high << 32 | len_low, advice);
}
void do_show_syscall(unsigned long r3, unsigned long r4, unsigned long r5, void do_show_syscall(unsigned long r3, unsigned long r4, unsigned long r5,
unsigned long r6, unsigned long r7, unsigned long r8, unsigned long r6, unsigned long r7, unsigned long r8,
struct pt_regs *regs) struct pt_regs *regs)
......
...@@ -297,7 +297,7 @@ SYSCALL32(tgkill) ...@@ -297,7 +297,7 @@ SYSCALL32(tgkill)
SYSCALL32(utimes) SYSCALL32(utimes)
COMPAT_SYS(statfs64) COMPAT_SYS(statfs64)
COMPAT_SYS(fstatfs64) COMPAT_SYS(fstatfs64)
SYSX(sys_ni_syscall, ppc32_fadvise64_64, sys_fadvise64_64) SYSX(sys_ni_syscall, ppc_fadvise64_64, ppc_fadvise64_64)
PPC_SYS(rtas) PPC_SYS(rtas)
OLDSYS(debug_setcontext) OLDSYS(debug_setcontext)
SYSCALL(ni_syscall) SYSCALL(ni_syscall)
......
...@@ -14,7 +14,7 @@ extra-y += vmlinux.lds ...@@ -14,7 +14,7 @@ extra-y += vmlinux.lds
obj-y := entry.o traps.o irq.o idle.o time.o misc.o \ obj-y := entry.o traps.o irq.o idle.o time.o misc.o \
process.o align.o \ process.o align.o \
syscalls.o setup.o \ setup.o \
ppc_htab.o perfmon.o ppc_htab.o perfmon.o
obj-$(CONFIG_6xx) += l2cr.o cpu_setup_6xx.o obj-$(CONFIG_6xx) += l2cr.o cpu_setup_6xx.o
obj-$(CONFIG_SOFTWARE_SUSPEND) += swsusp.o obj-$(CONFIG_SOFTWARE_SUSPEND) += swsusp.o
......
...@@ -1175,7 +1175,7 @@ _GLOBAL(sys_call_table32) ...@@ -1175,7 +1175,7 @@ _GLOBAL(sys_call_table32)
.llong .sys32_utimes .llong .sys32_utimes
.llong .compat_sys_statfs64 .llong .compat_sys_statfs64
.llong .compat_sys_fstatfs64 .llong .compat_sys_fstatfs64
.llong .ppc32_fadvise64_64 /* 32bit only fadvise64_64 */ .llong .ppc_fadvise64_64 /* 32bit only fadvise64_64 */
.llong .ppc_rtas /* 255 */ .llong .ppc_rtas /* 255 */
.llong .sys_ni_syscall /* 256 reserved for sys_debug_setcontext */ .llong .sys_ni_syscall /* 256 reserved for sys_debug_setcontext */
.llong .sys_ni_syscall /* 257 reserved for vserver */ .llong .sys_ni_syscall /* 257 reserved for vserver */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment