[PATCH] h8300 header update
- page.h: fix build error - unistd.h: _syscall macro cleanup. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Родитель
d31ddaa172
Коммит
74ad74c158
|
@ -79,7 +79,7 @@ extern unsigned long memory_end;
|
|||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#define __pa(vaddr) virt_to_phys((void *)vaddr)
|
||||
#define __pa(vaddr) virt_to_phys(vaddr)
|
||||
#define __va(paddr) phys_to_virt((unsigned long)paddr)
|
||||
|
||||
#define virt_to_pfn(kaddr) (__pa(kaddr) >> PAGE_SHIFT)
|
||||
|
@ -89,7 +89,7 @@ extern unsigned long memory_end;
|
|||
#define virt_to_page(addr) (mem_map + (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT))
|
||||
#define virt_to_page(addr) (mem_map + (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT))
|
||||
#define page_to_virt(page) ((((page) - mem_map) << PAGE_SHIFT) + PAGE_OFFSET)
|
||||
#define VALID_PAGE(page) ((page - mem_map) < max_mapnr)
|
||||
#define pfn_valid(page) (page < max_mapnr)
|
||||
|
||||
#define pfn_to_page(pfn) virt_to_page(pfn_to_virt(pfn))
|
||||
#define page_to_pfn(page) virt_to_pfn(page_to_virt(page))
|
||||
|
|
|
@ -310,163 +310,155 @@ do { \
|
|||
return (type) (res); \
|
||||
} while (0)
|
||||
|
||||
#define _syscall0(type, name) \
|
||||
type name(void) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
__asm__ __volatile__ ("mov.l %1,er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "ir" (__NR_##name) \
|
||||
: "cc"); \
|
||||
if ((unsigned long)(__res) >= (unsigned long)(-125)) { \
|
||||
errno = -__res; \
|
||||
__res = -1; \
|
||||
} \
|
||||
return (type)__res; \
|
||||
#define _syscall0(type, name) \
|
||||
type name(void) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
__asm__ __volatile__ ("mov.l %1,er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "g" (__NR_##name) \
|
||||
: "cc", "memory"); \
|
||||
__syscall_return(type, __res); \
|
||||
}
|
||||
|
||||
#define _syscall1(type, name, atype, a) \
|
||||
type name(atype a) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
__asm__ __volatile__ ("mov.l %2, er1\n\t" \
|
||||
"mov.l %1, er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "ir" (__NR_##name), \
|
||||
"g" ((long)a) \
|
||||
: "cc", "er1"); \
|
||||
if ((unsigned long)(__res) >= (unsigned long)(-125)) { \
|
||||
errno = -__res; \
|
||||
__res = -1; \
|
||||
} \
|
||||
return (type)__res; \
|
||||
#define _syscall1(type, name, atype, a) \
|
||||
type name(atype a) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
register long _a __asm__("er1"); \
|
||||
_a = (long)a; \
|
||||
__asm__ __volatile__ ("mov.l %1,er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "g" (__NR_##name), \
|
||||
"g" (_a) \
|
||||
: "cc", "memory"); \
|
||||
__syscall_return(type, __res); \
|
||||
}
|
||||
|
||||
#define _syscall2(type, name, atype, a, btype, b) \
|
||||
type name(atype a, btype b) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
__asm__ __volatile__ ("mov.l %3, er2\n\t" \
|
||||
"mov.l %2, er1\n\t" \
|
||||
"mov.l %1, er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "ir" (__NR_##name), \
|
||||
"g" ((long)a), \
|
||||
"g" ((long)b) \
|
||||
: "cc", "er1", "er2"); \
|
||||
if ((unsigned long)(__res) >= (unsigned long)(-125)) { \
|
||||
errno = -__res; \
|
||||
__res = -1; \
|
||||
} \
|
||||
return (type)__res; \
|
||||
#define _syscall2(type, name, atype, a, btype, b) \
|
||||
type name(atype a, btype b) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
register long _a __asm__("er1"); \
|
||||
register long _b __asm__("er2"); \
|
||||
_a = (long)a; \
|
||||
_b = (long)b; \
|
||||
__asm__ __volatile__ ("mov.l %1,er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "g" (__NR_##name), \
|
||||
"g" (_a), \
|
||||
"g" (_b) \
|
||||
: "cc", "memory"); \
|
||||
__syscall_return(type, __res); \
|
||||
}
|
||||
|
||||
#define _syscall3(type, name, atype, a, btype, b, ctype, c) \
|
||||
type name(atype a, btype b, ctype c) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
__asm__ __volatile__ ("mov.l %4, er3\n\t" \
|
||||
"mov.l %3, er2\n\t" \
|
||||
"mov.l %2, er1\n\t" \
|
||||
"mov.l %1, er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "ir" (__NR_##name), \
|
||||
"g" ((long)a), \
|
||||
"g" ((long)b), \
|
||||
"g" ((long)c) \
|
||||
: "cc", "er1", "er2", "er3"); \
|
||||
if ((unsigned long)(__res) >= (unsigned long)(-125)) { \
|
||||
errno = -__res; \
|
||||
__res = -1; \
|
||||
} \
|
||||
return (type)__res; \
|
||||
#define _syscall3(type, name, atype, a, btype, b, ctype, c) \
|
||||
type name(atype a, btype b, ctype c) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
register long _a __asm__("er1"); \
|
||||
register long _b __asm__("er2"); \
|
||||
register long _c __asm__("er3"); \
|
||||
_a = (long)a; \
|
||||
_b = (long)b; \
|
||||
_c = (long)c; \
|
||||
__asm__ __volatile__ ("mov.l %1,er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "g" (__NR_##name), \
|
||||
"g" (_a), \
|
||||
"g" (_b), \
|
||||
"g" (_c) \
|
||||
: "cc", "memory"); \
|
||||
__syscall_return(type, __res); \
|
||||
}
|
||||
|
||||
#define _syscall4(type, name, atype, a, btype, b, ctype, c, dtype, d) \
|
||||
type name(atype a, btype b, ctype c, dtype d) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
__asm__ __volatile__ ("mov.l %5, er4\n\t" \
|
||||
"mov.l %4, er3\n\t" \
|
||||
"mov.l %3, er2\n\t" \
|
||||
"mov.l %2, er1\n\t" \
|
||||
"mov.l %1, er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "ir" (__NR_##name), \
|
||||
"g" ((long)a), \
|
||||
"g" ((long)b), \
|
||||
"g" ((long)c), \
|
||||
"g" ((long)d) \
|
||||
: "cc", "er1", "er2", "er3", "er4"); \
|
||||
if ((unsigned long)(__res) >= (unsigned long)(-125)) { \
|
||||
errno = -__res; \
|
||||
__res = -1; \
|
||||
} \
|
||||
return (type)__res; \
|
||||
#define _syscall4(type, name, atype, a, btype, b, \
|
||||
ctype, c, dtype, d) \
|
||||
type name(atype a, btype b, ctype c, dtype d) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
register long _a __asm__("er1"); \
|
||||
register long _b __asm__("er2"); \
|
||||
register long _c __asm__("er3"); \
|
||||
register long _d __asm__("er4"); \
|
||||
_a = (long)a; \
|
||||
_b = (long)b; \
|
||||
_c = (long)c; \
|
||||
_d = (long)d; \
|
||||
__asm__ __volatile__ ("mov.l %1,er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "g" (__NR_##name), \
|
||||
"g" (_a), \
|
||||
"g" (_b), \
|
||||
"g" (_c), \
|
||||
"g" (_d) \
|
||||
: "cc", "memory"); \
|
||||
__syscall_return(type, __res); \
|
||||
}
|
||||
|
||||
#define _syscall5(type, name, atype, a, btype, b, ctype, c, dtype, d, etype, e) \
|
||||
type name(atype a, btype b, ctype c, dtype d, etype e) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
__asm__ __volatile__ ("mov.l %6, er5\n\t" \
|
||||
"mov.l %5, er4\n\t" \
|
||||
"mov.l %4, er3\n\t" \
|
||||
"mov.l %3, er2\n\t" \
|
||||
"mov.l %2, er1\n\t" \
|
||||
"mov.l %1, er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "ir" (__NR_##name), \
|
||||
"g" ((long)a), \
|
||||
"g" ((long)b), \
|
||||
"g" ((long)c), \
|
||||
"g" ((long)d), \
|
||||
"m" ((long)e) \
|
||||
: "cc", "er1", "er2", "er3", "er4", "er5"); \
|
||||
if ((unsigned long)(__res) >= (unsigned long)(-125)) { \
|
||||
errno = -__res; \
|
||||
__res = -1; \
|
||||
} \
|
||||
return (type)__res; \
|
||||
#define _syscall5(type, name, atype, a, btype, b, \
|
||||
ctype, c, dtype, d, etype, e) \
|
||||
type name(atype a, btype b, ctype c, dtype d, etype e) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
register long _a __asm__("er1"); \
|
||||
register long _b __asm__("er2"); \
|
||||
register long _c __asm__("er3"); \
|
||||
register long _d __asm__("er4"); \
|
||||
register long _e __asm__("er5"); \
|
||||
_a = (long)a; \
|
||||
_b = (long)b; \
|
||||
_c = (long)c; \
|
||||
_d = (long)d; \
|
||||
_e = (long)e; \
|
||||
__asm__ __volatile__ ("mov.l %1,er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "g" (__NR_##name), \
|
||||
"g" (_a), \
|
||||
"g" (_b), \
|
||||
"g" (_c), \
|
||||
"g" (_d), \
|
||||
"g" (_e) \
|
||||
: "cc", "memory"); \
|
||||
__syscall_return(type, __res); \
|
||||
}
|
||||
|
||||
#define _syscall6(type, name, atype, a, btype, b, ctype, c, dtype, d, \
|
||||
etype, e, ftype, f) \
|
||||
type name(atype a, btype b, ctype c, dtype d, etype e, ftype f) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
__asm__ __volatile__ ("mov.l er6,@-sp\n\t" \
|
||||
"mov.l %7, er6\n\t" \
|
||||
"mov.l %6, er5\n\t" \
|
||||
"mov.l %5, er4\n\t" \
|
||||
"mov.l %4, er3\n\t" \
|
||||
"mov.l %3, er2\n\t" \
|
||||
"mov.l %2, er1\n\t" \
|
||||
"mov.l %1, er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
"mov.l @sp+,er6" \
|
||||
: "=r" (__res) \
|
||||
: "ir" (__NR_##name), \
|
||||
"g" ((long)a), \
|
||||
"g" ((long)b), \
|
||||
"g" ((long)c), \
|
||||
"g" ((long)d), \
|
||||
"m" ((long)e), \
|
||||
"m" ((long)e) \
|
||||
: "cc", "er1", "er2", "er3", "er4", "er5"); \
|
||||
if ((unsigned long)(__res) >= (unsigned long)(-125)) { \
|
||||
errno = -__res; \
|
||||
__res = -1; \
|
||||
} \
|
||||
return (type)__res; \
|
||||
|
||||
#define _syscall6(type, name, atype, a, btype, b, \
|
||||
ctype, c, dtype, d, etype, e, ftype, f) \
|
||||
type name(atype a, btype b, ctype c, dtype d, etype e, ftype f) \
|
||||
{ \
|
||||
register long __res __asm__("er0"); \
|
||||
register long _a __asm__("er1"); \
|
||||
register long _b __asm__("er2"); \
|
||||
register long _c __asm__("er3"); \
|
||||
register long _d __asm__("er4"); \
|
||||
register long _e __asm__("er5"); \
|
||||
register long _f __asm__("er6"); \
|
||||
_a = (long)a; \
|
||||
_b = (long)b; \
|
||||
_c = (long)c; \
|
||||
_d = (long)d; \
|
||||
_e = (long)e; \
|
||||
_f = (long)f; \
|
||||
__asm__ __volatile__ ("mov.l %1,er0\n\t" \
|
||||
"trapa #0\n\t" \
|
||||
: "=r" (__res) \
|
||||
: "g" (__NR_##name), \
|
||||
"g" (_a), \
|
||||
"g" (_b), \
|
||||
"g" (_c), \
|
||||
"g" (_d), \
|
||||
"g" (_e) \
|
||||
"g" (_f) \
|
||||
: "cc", "memory"); \
|
||||
__syscall_return(type, __res); \
|
||||
}
|
||||
|
||||
|
||||
#ifdef __KERNEL__
|
||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||
|
|
Загрузка…
Ссылка в новой задаче