diff options
author | Paul Mackerras <paulus@samba.org> | 2005-10-18 00:19:41 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2005-10-18 00:19:41 -0400 |
commit | 77f543cb467c44960bafa6c91f5af75919d693e4 (patch) | |
tree | eebf9705cb750be7db8ced19d58bd6c4db0e573e /arch/powerpc/kernel | |
parent | 81e7009ea46c951860b8716ee427ff4f54dd26fc (diff) |
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: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel')
-rw-r--r-- | arch/powerpc/kernel/Makefile | 10 | ||||
-rw-r--r-- | arch/powerpc/kernel/head_32.S | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/sys_ppc32.c | 7 | ||||
-rw-r--r-- | arch/powerpc/kernel/syscalls.c | 7 | ||||
-rw-r--r-- | arch/powerpc/kernel/systbl.S | 2 |
5 files changed, 14 insertions, 14 deletions
diff --git a/arch/powerpc/kernel/Makefile b/arch/powerpc/kernel/Makefile index 043ddd09521d..01b6d630edc9 100644 --- a/arch/powerpc/kernel/Makefile +++ b/arch/powerpc/kernel/Makefile | |||
@@ -10,7 +10,8 @@ CFLAGS_prom_init.o += -fPIC | |||
10 | CFLAGS_btext.o += -fPIC | 10 | CFLAGS_btext.o += -fPIC |
11 | endif | 11 | endif |
12 | 12 | ||
13 | obj-y := semaphore.o cputable.o ptrace.o signal_32.o | 13 | obj-y := semaphore.o cputable.o ptrace.o syscalls.o \ |
14 | signal_32.o | ||
14 | obj-$(CONFIG_PPC64) += binfmt_elf32.o sys_ppc32.o | 15 | obj-$(CONFIG_PPC64) += binfmt_elf32.o sys_ppc32.o |
15 | obj-$(CONFIG_ALTIVEC) += vecemu.o vector.o | 16 | obj-$(CONFIG_ALTIVEC) += vecemu.o vector.o |
16 | obj-$(CONFIG_POWER4) += idle_power4.o | 17 | obj-$(CONFIG_POWER4) += idle_power4.o |
@@ -24,14 +25,13 @@ extra-$(CONFIG_40x) := head_4xx.o | |||
24 | extra-$(CONFIG_44x) := head_44x.o | 25 | extra-$(CONFIG_44x) := head_44x.o |
25 | extra-$(CONFIG_FSL_BOOKE) := head_fsl_booke.o | 26 | extra-$(CONFIG_FSL_BOOKE) := head_fsl_booke.o |
26 | extra-$(CONFIG_8xx) := head_8xx.o | 27 | extra-$(CONFIG_8xx) := head_8xx.o |
27 | extra-$(CONFIG_6xx) += idle_6xx.o | ||
28 | extra-$(CONFIG_PPC64) += entry_64.o | 28 | extra-$(CONFIG_PPC64) += entry_64.o |
29 | extra-$(CONFIG_PPC_FPU) += fpu.o | 29 | extra-$(CONFIG_PPC_FPU) += fpu.o |
30 | extra-y += vmlinux.lds | 30 | extra-y += vmlinux.lds |
31 | 31 | ||
32 | obj-y += process.o init_task.o \ | 32 | obj-y += process.o init_task.o \ |
33 | prom.o systbl.o traps.o syscalls.o | 33 | prom.o systbl.o traps.o |
34 | obj-$(CONFIG_PPC32) += entry_32.o setup_32.o misc_32.o | 34 | obj-$(CONFIG_PPC32) += entry_32.o idle_6xx.o setup_32.o misc_32.o |
35 | obj-$(CONFIG_PPC64) += setup_64.o misc_64.o | 35 | obj-$(CONFIG_PPC64) += setup_64.o misc_64.o |
36 | obj-$(CONFIG_PPC_OF) += prom_init.o | 36 | obj-$(CONFIG_PPC_OF) += prom_init.o |
37 | obj-$(CONFIG_MODULES) += ppc_ksyms.o | 37 | obj-$(CONFIG_MODULES) += ppc_ksyms.o |
@@ -44,7 +44,7 @@ endif | |||
44 | 44 | ||
45 | else | 45 | else |
46 | # stuff used from here for ARCH=ppc or ARCH=ppc64 | 46 | # stuff used from here for ARCH=ppc or ARCH=ppc64 |
47 | obj-$(CONFIG_PPC64) += traps.o process.o init_task.o syscalls.o | 47 | obj-$(CONFIG_PPC64) += traps.o process.o init_task.o |
48 | 48 | ||
49 | fpux-$(CONFIG_PPC32) += fpu.o | 49 | fpux-$(CONFIG_PPC32) += fpu.o |
50 | extra-$(CONFIG_PPC_FPU) += $(fpux-y) | 50 | extra-$(CONFIG_PPC_FPU) += $(fpux-y) |
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S index 7ef9a3e3002b..cd51fe585fcd 100644 --- a/arch/powerpc/kernel/head_32.S +++ b/arch/powerpc/kernel/head_32.S | |||
@@ -831,7 +831,7 @@ relocate_kernel: | |||
831 | * r3 = dest addr, r4 = source addr, r5 = copy limit, r6 = start offset | 831 | * r3 = dest addr, r4 = source addr, r5 = copy limit, r6 = start offset |
832 | * on exit, r3, r4, r5 are unchanged, r6 is updated to be >= r5. | 832 | * on exit, r3, r4, r5 are unchanged, r6 is updated to be >= r5. |
833 | */ | 833 | */ |
834 | copy_and_flush: | 834 | _GLOBAL(copy_and_flush) |
835 | addi r5,r5,-4 | 835 | addi r5,r5,-4 |
836 | addi r6,r6,-4 | 836 | addi r6,r6,-4 |
837 | 4: li r0,L1_CACHE_BYTES/4 | 837 | 4: li r0,L1_CACHE_BYTES/4 |
diff --git a/arch/powerpc/kernel/sys_ppc32.c b/arch/powerpc/kernel/sys_ppc32.c index 9babe055356e..2f1e41a82876 100644 --- a/arch/powerpc/kernel/sys_ppc32.c +++ b/arch/powerpc/kernel/sys_ppc32.c | |||
@@ -1069,13 +1069,6 @@ long ppc32_fadvise64(int fd, u32 unused, u32 offset_high, u32 offset_low, | |||
1069 | advice); | 1069 | advice); |
1070 | } | 1070 | } |
1071 | 1071 | ||
1072 | long ppc32_fadvise64_64(int fd, int advice, u32 offset_high, u32 offset_low, | ||
1073 | u32 len_high, u32 len_low) | ||
1074 | { | ||
1075 | return sys_fadvise64(fd, (u64)offset_high << 32 | offset_low, | ||
1076 | (u64)len_high << 32 | len_low, advice); | ||
1077 | } | ||
1078 | |||
1079 | long ppc32_timer_create(clockid_t clock, | 1072 | long ppc32_timer_create(clockid_t clock, |
1080 | struct compat_sigevent __user *ev32, | 1073 | struct compat_sigevent __user *ev32, |
1081 | timer_t __user *timer_id) | 1074 | timer_t __user *timer_id) |
diff --git a/arch/powerpc/kernel/syscalls.c b/arch/powerpc/kernel/syscalls.c index 3e3a4f67de96..7a23721365a6 100644 --- a/arch/powerpc/kernel/syscalls.c +++ b/arch/powerpc/kernel/syscalls.c | |||
@@ -336,6 +336,13 @@ time_t sys64_time(time_t __user * tloc) | |||
336 | } | 336 | } |
337 | #endif | 337 | #endif |
338 | 338 | ||
339 | long ppc_fadvise64_64(int fd, int advice, u32 offset_high, u32 offset_low, | ||
340 | u32 len_high, u32 len_low) | ||
341 | { | ||
342 | return sys_fadvise64(fd, (u64)offset_high << 32 | offset_low, | ||
343 | (u64)len_high << 32 | len_low, advice); | ||
344 | } | ||
345 | |||
339 | void do_show_syscall(unsigned long r3, unsigned long r4, unsigned long r5, | 346 | void do_show_syscall(unsigned long r3, unsigned long r4, unsigned long r5, |
340 | unsigned long r6, unsigned long r7, unsigned long r8, | 347 | unsigned long r6, unsigned long r7, unsigned long r8, |
341 | struct pt_regs *regs) | 348 | struct pt_regs *regs) |
diff --git a/arch/powerpc/kernel/systbl.S b/arch/powerpc/kernel/systbl.S index b364141ec01c..1b807f79d5da 100644 --- a/arch/powerpc/kernel/systbl.S +++ b/arch/powerpc/kernel/systbl.S | |||
@@ -297,7 +297,7 @@ SYSCALL32(tgkill) | |||
297 | SYSCALL32(utimes) | 297 | SYSCALL32(utimes) |
298 | COMPAT_SYS(statfs64) | 298 | COMPAT_SYS(statfs64) |
299 | COMPAT_SYS(fstatfs64) | 299 | COMPAT_SYS(fstatfs64) |
300 | SYSX(sys_ni_syscall, ppc32_fadvise64_64, sys_fadvise64_64) | 300 | SYSX(sys_ni_syscall, ppc_fadvise64_64, ppc_fadvise64_64) |
301 | PPC_SYS(rtas) | 301 | PPC_SYS(rtas) |
302 | OLDSYS(debug_setcontext) | 302 | OLDSYS(debug_setcontext) |
303 | SYSCALL(ni_syscall) | 303 | SYSCALL(ni_syscall) |