mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-03 17:40:04 +00:00
![Christophe Leroy](/assets/img/avatar_default.png)
We originally added asm-prototypes.h in commit42f5b4cacd
("powerpc: Introduce asm-prototypes.h"). It's purpose was for prototypes of C functions that are only called from asm, in order to fix sparse warnings about missing prototypes. A few months later Nick added a different use case in commit4efca4ed05
("kbuild: modversions for EXPORT_SYMBOL() for asm") for C prototypes for exported asm functions. This is basically the inverse of our original usage. Since then we've added various prototypes to asm-prototypes.h for both reasons, meaning we now need to unstitch it all. Dispatch prototypes of C functions into relevant headers and keep only the prototypes for functions defined in assembly. For the time being, leave prom_init() there because moving it into asm/prom.h or asm/setup.h conflicts with drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowrom.o This will be fixed later by untaggling asm/pci.h and asm/prom.h or by renaming the function in shadowrom.c Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/62d46904eca74042097acf4cb12c175e3067f3d1.1646413435.git.christophe.leroy@csgroup.eu
56 lines
2 KiB
C
56 lines
2 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef __ASM_POWERPC_SYSCALLS_H
|
|
#define __ASM_POWERPC_SYSCALLS_H
|
|
#ifdef __KERNEL__
|
|
|
|
#include <linux/compiler.h>
|
|
#include <linux/linkage.h>
|
|
#include <linux/types.h>
|
|
#include <linux/compat.h>
|
|
|
|
struct rtas_args;
|
|
|
|
asmlinkage long sys_mmap(unsigned long addr, size_t len,
|
|
unsigned long prot, unsigned long flags,
|
|
unsigned long fd, off_t offset);
|
|
asmlinkage long sys_mmap2(unsigned long addr, size_t len,
|
|
unsigned long prot, unsigned long flags,
|
|
unsigned long fd, unsigned long pgoff);
|
|
asmlinkage long ppc64_personality(unsigned long personality);
|
|
asmlinkage long sys_rtas(struct rtas_args __user *uargs);
|
|
int ppc_select(int n, fd_set __user *inp, fd_set __user *outp,
|
|
fd_set __user *exp, struct __kernel_old_timeval __user *tvp);
|
|
long ppc_fadvise64_64(int fd, int advice, u32 offset_high, u32 offset_low,
|
|
u32 len_high, u32 len_low);
|
|
|
|
#ifdef CONFIG_COMPAT
|
|
unsigned long compat_sys_mmap2(unsigned long addr, size_t len,
|
|
unsigned long prot, unsigned long flags,
|
|
unsigned long fd, unsigned long pgoff);
|
|
|
|
compat_ssize_t compat_sys_pread64(unsigned int fd, char __user *ubuf, compat_size_t count,
|
|
u32 reg6, u32 pos1, u32 pos2);
|
|
|
|
compat_ssize_t compat_sys_pwrite64(unsigned int fd, const char __user *ubuf, compat_size_t count,
|
|
u32 reg6, u32 pos1, u32 pos2);
|
|
|
|
compat_ssize_t compat_sys_readahead(int fd, u32 r4, u32 offset1, u32 offset2, u32 count);
|
|
|
|
int compat_sys_truncate64(const char __user *path, u32 reg4,
|
|
unsigned long len1, unsigned long len2);
|
|
|
|
long compat_sys_fallocate(int fd, int mode, u32 offset1, u32 offset2, u32 len1, u32 len2);
|
|
|
|
int compat_sys_ftruncate64(unsigned int fd, u32 reg4, unsigned long len1,
|
|
unsigned long len2);
|
|
|
|
long ppc32_fadvise64(int fd, u32 unused, u32 offset1, u32 offset2,
|
|
size_t len, int advice);
|
|
|
|
long compat_sys_sync_file_range2(int fd, unsigned int flags,
|
|
unsigned int offset1, unsigned int offset2,
|
|
unsigned int nbytes1, unsigned int nbytes2);
|
|
#endif
|
|
|
|
#endif /* __KERNEL__ */
|
|
#endif /* __ASM_POWERPC_SYSCALLS_H */
|