Skip to content

Commit

Permalink
[PATCH] h8300 header update
Browse files Browse the repository at this point in the history
- 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>
  • Loading branch information
Yoshinori Sato authored and Linus Torvalds committed Apr 16, 2005
1 parent d31ddaa commit 74ad74c
Show file tree
Hide file tree
Showing 2 changed files with 139 additions and 147 deletions.
4 changes: 2 additions & 2 deletions include/asm-h8300/page.h
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand All @@ -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))
Expand Down
282 changes: 137 additions & 145 deletions include/asm-h8300/unistd.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit 74ad74c

Please sign in to comment.