forked from Minki/linux
96a8fae0fe
Convert ARM to use a similar mechanism to x86 to generate the unistd.h system call numbers and the various kernel system call tables. This means that rather than having to edit three places (asm/unistd.h for the total number of system calls, uapi/asm/unistd.h for the system call numbers, and arch/arm/kernel/calls.S for the call table) we have only one place to edit, making the process much more simple. The scripts have knowledge of the table padding requirements, so there's no need to worry about __NR_syscalls not fitting within the immediate constant field of ALU instructions anymore. Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
40 lines
1.1 KiB
C
40 lines
1.1 KiB
C
/*
|
|
* arch/arm/include/asm/unistd.h
|
|
*
|
|
* Copyright (C) 2001-2005 Russell King
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*
|
|
* Please forward _all_ changes to this file to rmk@arm.linux.org.uk,
|
|
* no matter what the change is. Thanks!
|
|
*/
|
|
#ifndef _UAPI__ASM_ARM_UNISTD_H
|
|
#define _UAPI__ASM_ARM_UNISTD_H
|
|
|
|
#define __NR_OABI_SYSCALL_BASE 0x900000
|
|
|
|
#if defined(__thumb__) || defined(__ARM_EABI__)
|
|
#define __NR_SYSCALL_BASE 0
|
|
#include <asm/unistd-eabi.h>
|
|
#else
|
|
#define __NR_SYSCALL_BASE __NR_OABI_SYSCALL_BASE
|
|
#include <asm/unistd-oabi.h>
|
|
#endif
|
|
|
|
#include <asm/unistd-common.h>
|
|
#define __NR_sync_file_range2 __NR_arm_sync_file_range
|
|
|
|
/*
|
|
* The following SWIs are ARM private.
|
|
*/
|
|
#define __ARM_NR_BASE (__NR_SYSCALL_BASE+0x0f0000)
|
|
#define __ARM_NR_breakpoint (__ARM_NR_BASE+1)
|
|
#define __ARM_NR_cacheflush (__ARM_NR_BASE+2)
|
|
#define __ARM_NR_usr26 (__ARM_NR_BASE+3)
|
|
#define __ARM_NR_usr32 (__ARM_NR_BASE+4)
|
|
#define __ARM_NR_set_tls (__ARM_NR_BASE+5)
|
|
|
|
#endif /* _UAPI__ASM_ARM_UNISTD_H */
|