diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-h8300/page.h | 4 | ||||
| -rw-r--r-- | include/asm-h8300/unistd.h | 282 |
2 files changed, 139 insertions, 147 deletions
diff --git a/include/asm-h8300/page.h b/include/asm-h8300/page.h index 58b053f1ef3b..e3b7960d445b 100644 --- a/include/asm-h8300/page.h +++ b/include/asm-h8300/page.h | |||
| @@ -79,7 +79,7 @@ extern unsigned long memory_end; | |||
| 79 | 79 | ||
| 80 | #ifndef __ASSEMBLY__ | 80 | #ifndef __ASSEMBLY__ |
| 81 | 81 | ||
| 82 | #define __pa(vaddr) virt_to_phys((void *)vaddr) | 82 | #define __pa(vaddr) virt_to_phys(vaddr) |
| 83 | #define __va(paddr) phys_to_virt((unsigned long)paddr) | 83 | #define __va(paddr) phys_to_virt((unsigned long)paddr) |
| 84 | 84 | ||
| 85 | #define virt_to_pfn(kaddr) (__pa(kaddr) >> PAGE_SHIFT) | 85 | #define virt_to_pfn(kaddr) (__pa(kaddr) >> PAGE_SHIFT) |
| @@ -89,7 +89,7 @@ extern unsigned long memory_end; | |||
| 89 | #define virt_to_page(addr) (mem_map + (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT)) | 89 | #define virt_to_page(addr) (mem_map + (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT)) |
| 90 | #define virt_to_page(addr) (mem_map + (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT)) | 90 | #define virt_to_page(addr) (mem_map + (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT)) |
| 91 | #define page_to_virt(page) ((((page) - mem_map) << PAGE_SHIFT) + PAGE_OFFSET) | 91 | #define page_to_virt(page) ((((page) - mem_map) << PAGE_SHIFT) + PAGE_OFFSET) |
| 92 | #define VALID_PAGE(page) ((page - mem_map) < max_mapnr) | 92 | #define pfn_valid(page) (page < max_mapnr) |
| 93 | 93 | ||
| 94 | #define pfn_to_page(pfn) virt_to_page(pfn_to_virt(pfn)) | 94 | #define pfn_to_page(pfn) virt_to_page(pfn_to_virt(pfn)) |
| 95 | #define page_to_pfn(page) virt_to_pfn(page_to_virt(page)) | 95 | #define page_to_pfn(page) virt_to_pfn(page_to_virt(page)) |
diff --git a/include/asm-h8300/unistd.h b/include/asm-h8300/unistd.h index 48b362ff7500..56a6401886fa 100644 --- a/include/asm-h8300/unistd.h +++ b/include/asm-h8300/unistd.h | |||
| @@ -310,163 +310,155 @@ do { \ | |||
| 310 | return (type) (res); \ | 310 | return (type) (res); \ |
| 311 | } while (0) | 311 | } while (0) |
| 312 | 312 | ||
| 313 | #define _syscall0(type, name) \ | 313 | #define _syscall0(type, name) \ |
| 314 | type name(void) \ | 314 | type name(void) \ |
| 315 | { \ | 315 | { \ |
| 316 | register long __res __asm__("er0"); \ | 316 | register long __res __asm__("er0"); \ |
| 317 | __asm__ __volatile__ ("mov.l %1,er0\n\t" \ | 317 | __asm__ __volatile__ ("mov.l %1,er0\n\t" \ |
| 318 | "trapa #0\n\t" \ | 318 | "trapa #0\n\t" \ |
| 319 | : "=r" (__res) \ | 319 | : "=r" (__res) \ |
| 320 | : "ir" (__NR_##name) \ | 320 | : "g" (__NR_##name) \ |
| 321 | : "cc"); \ | 321 | : "cc", "memory"); \ |
| 322 | if ((unsigned long)(__res) >= (unsigned long)(-125)) { \ | 322 | __syscall_return(type, __res); \ |
| 323 | errno = -__res; \ | ||
| 324 | __res = -1; \ | ||
| 325 | } \ | ||
| 326 | return (type)__res; \ | ||
| 327 | } | 323 | } |
| 328 | 324 | ||
| 329 | #define _syscall1(type, name, atype, a) \ | 325 | #define _syscall1(type, name, atype, a) \ |
| 330 | type name(atype a) \ | 326 | type name(atype a) \ |
| 331 | { \ | 327 | { \ |
| 332 | register long __res __asm__("er0"); \ | 328 | register long __res __asm__("er0"); \ |
| 333 | __asm__ __volatile__ ("mov.l %2, er1\n\t" \ | 329 | register long _a __asm__("er1"); \ |
| 334 | "mov.l %1, er0\n\t" \ | 330 | _a = (long)a; \ |
| 335 | "trapa #0\n\t" \ | 331 | __asm__ __volatile__ ("mov.l %1,er0\n\t" \ |
| 336 | : "=r" (__res) \ | 332 | "trapa #0\n\t" \ |
| 337 | : "ir" (__NR_##name), \ | 333 | : "=r" (__res) \ |
| 338 | "g" ((long)a) \ | 334 | : "g" (__NR_##name), \ |
| 339 | : "cc", "er1"); \ | 335 | "g" (_a) \ |
| 340 | if ((unsigned long)(__res) >= (unsigned long)(-125)) { \ | 336 | : "cc", "memory"); \ |
| 341 | errno = -__res; \ | 337 | __syscall_return(type, __res); \ |
| 342 | __res = -1; \ | ||
| 343 | } \ | ||
| 344 | return (type)__res; \ | ||
| 345 | } | 338 | } |
| 346 | 339 | ||
| 347 | #define _syscall2(type, name, atype, a, btype, b) \ | 340 | #define _syscall2(type, name, atype, a, btype, b) \ |
| 348 | type name(atype a, btype b) \ | 341 | type name(atype a, btype b) \ |
| 349 | { \ | 342 | { \ |
| 350 | register long __res __asm__("er0"); \ | 343 | register long __res __asm__("er0"); \ |
| 351 | __asm__ __volatile__ ("mov.l %3, er2\n\t" \ | 344 | register long _a __asm__("er1"); \ |
| 352 | "mov.l %2, er1\n\t" \ | 345 | register long _b __asm__("er2"); \ |
| 353 | "mov.l %1, er0\n\t" \ | 346 | _a = (long)a; \ |
| 354 | "trapa #0\n\t" \ | 347 | _b = (long)b; \ |
| 355 | : "=r" (__res) \ | 348 | __asm__ __volatile__ ("mov.l %1,er0\n\t" \ |
| 356 | : "ir" (__NR_##name), \ | 349 | "trapa #0\n\t" \ |
| 357 | "g" ((long)a), \ | 350 | : "=r" (__res) \ |
| 358 | "g" ((long)b) \ | 351 | : "g" (__NR_##name), \ |
| 359 | : "cc", "er1", "er2"); \ | 352 | "g" (_a), \ |
| 360 | if ((unsigned long)(__res) >= (unsigned long)(-125)) { \ | 353 | "g" (_b) \ |
| 361 | errno = -__res; \ | 354 | : "cc", "memory"); \ |
| 362 | __res = -1; \ | 355 | __syscall_return(type, __res); \ |
| 363 | } \ | ||
| 364 | return (type)__res; \ | ||
| 365 | } | 356 | } |
| 366 | 357 | ||
| 367 | #define _syscall3(type, name, atype, a, btype, b, ctype, c) \ | 358 | #define _syscall3(type, name, atype, a, btype, b, ctype, c) \ |
| 368 | type name(atype a, btype b, ctype c) \ | 359 | type name(atype a, btype b, ctype c) \ |
| 369 | { \ | 360 | { \ |
| 370 | register long __res __asm__("er0"); \ | 361 | register long __res __asm__("er0"); \ |
| 371 | __asm__ __volatile__ ("mov.l %4, er3\n\t" \ | 362 | register long _a __asm__("er1"); \ |
| 372 | "mov.l %3, er2\n\t" \ | 363 | register long _b __asm__("er2"); \ |
| 373 | "mov.l %2, er1\n\t" \ | 364 | register long _c __asm__("er3"); \ |
| 374 | "mov.l %1, er0\n\t" \ | 365 | _a = (long)a; \ |
| 375 | "trapa #0\n\t" \ | 366 | _b = (long)b; \ |
| 376 | : "=r" (__res) \ | 367 | _c = (long)c; \ |
| 377 | : "ir" (__NR_##name), \ | 368 | __asm__ __volatile__ ("mov.l %1,er0\n\t" \ |
| 378 | "g" ((long)a), \ | 369 | "trapa #0\n\t" \ |
| 379 | "g" ((long)b), \ | 370 | : "=r" (__res) \ |
| 380 | "g" ((long)c) \ | 371 | : "g" (__NR_##name), \ |
| 381 | : "cc", "er1", "er2", "er3"); \ | 372 | "g" (_a), \ |
| 382 | if ((unsigned long)(__res) >= (unsigned long)(-125)) { \ | 373 | "g" (_b), \ |
| 383 | errno = -__res; \ | 374 | "g" (_c) \ |
| 384 | __res = -1; \ | 375 | : "cc", "memory"); \ |
| 385 | } \ | 376 | __syscall_return(type, __res); \ |
| 386 | return (type)__res; \ | ||
| 387 | } | 377 | } |
| 388 | 378 | ||
| 389 | #define _syscall4(type, name, atype, a, btype, b, ctype, c, dtype, d) \ | 379 | #define _syscall4(type, name, atype, a, btype, b, \ |
| 390 | type name(atype a, btype b, ctype c, dtype d) \ | 380 | ctype, c, dtype, d) \ |
| 391 | { \ | 381 | type name(atype a, btype b, ctype c, dtype d) \ |
| 392 | register long __res __asm__("er0"); \ | 382 | { \ |
| 393 | __asm__ __volatile__ ("mov.l %5, er4\n\t" \ | 383 | register long __res __asm__("er0"); \ |
| 394 | "mov.l %4, er3\n\t" \ | 384 | register long _a __asm__("er1"); \ |
| 395 | "mov.l %3, er2\n\t" \ | 385 | register long _b __asm__("er2"); \ |
| 396 | "mov.l %2, er1\n\t" \ | 386 | register long _c __asm__("er3"); \ |
| 397 | "mov.l %1, er0\n\t" \ | 387 | register long _d __asm__("er4"); \ |
| 398 | "trapa #0\n\t" \ | 388 | _a = (long)a; \ |
| 399 | : "=r" (__res) \ | 389 | _b = (long)b; \ |
| 400 | : "ir" (__NR_##name), \ | 390 | _c = (long)c; \ |
| 401 | "g" ((long)a), \ | 391 | _d = (long)d; \ |
| 402 | "g" ((long)b), \ | 392 | __asm__ __volatile__ ("mov.l %1,er0\n\t" \ |
| 403 | "g" ((long)c), \ | 393 | "trapa #0\n\t" \ |
| 404 | "g" ((long)d) \ | 394 | : "=r" (__res) \ |
| 405 | : "cc", "er1", "er2", "er3", "er4"); \ | 395 | : "g" (__NR_##name), \ |
| 406 | if ((unsigned long)(__res) >= (unsigned long)(-125)) { \ | 396 | "g" (_a), \ |
| 407 | errno = -__res; \ | 397 | "g" (_b), \ |
| 408 | __res = -1; \ | 398 | "g" (_c), \ |
| 409 | } \ | 399 | "g" (_d) \ |
| 410 | return (type)__res; \ | 400 | : "cc", "memory"); \ |
| 401 | __syscall_return(type, __res); \ | ||
| 411 | } | 402 | } |
| 412 | 403 | ||
| 413 | #define _syscall5(type, name, atype, a, btype, b, ctype, c, dtype, d, etype, e) \ | 404 | #define _syscall5(type, name, atype, a, btype, b, \ |
| 414 | type name(atype a, btype b, ctype c, dtype d, etype e) \ | 405 | ctype, c, dtype, d, etype, e) \ |
| 415 | { \ | 406 | type name(atype a, btype b, ctype c, dtype d, etype e) \ |
| 416 | register long __res __asm__("er0"); \ | 407 | { \ |
| 417 | __asm__ __volatile__ ("mov.l %6, er5\n\t" \ | 408 | register long __res __asm__("er0"); \ |
| 418 | "mov.l %5, er4\n\t" \ | 409 | register long _a __asm__("er1"); \ |
| 419 | "mov.l %4, er3\n\t" \ | 410 | register long _b __asm__("er2"); \ |
| 420 | "mov.l %3, er2\n\t" \ | 411 | register long _c __asm__("er3"); \ |
| 421 | "mov.l %2, er1\n\t" \ | 412 | register long _d __asm__("er4"); \ |
| 422 | "mov.l %1, er0\n\t" \ | 413 | register long _e __asm__("er5"); \ |
| 423 | "trapa #0\n\t" \ | 414 | _a = (long)a; \ |
| 424 | : "=r" (__res) \ | 415 | _b = (long)b; \ |
| 425 | : "ir" (__NR_##name), \ | 416 | _c = (long)c; \ |
| 426 | "g" ((long)a), \ | 417 | _d = (long)d; \ |
| 427 | "g" ((long)b), \ | 418 | _e = (long)e; \ |
| 428 | "g" ((long)c), \ | 419 | __asm__ __volatile__ ("mov.l %1,er0\n\t" \ |
| 429 | "g" ((long)d), \ | 420 | "trapa #0\n\t" \ |
| 430 | "m" ((long)e) \ | 421 | : "=r" (__res) \ |
| 431 | : "cc", "er1", "er2", "er3", "er4", "er5"); \ | 422 | : "g" (__NR_##name), \ |
| 432 | if ((unsigned long)(__res) >= (unsigned long)(-125)) { \ | 423 | "g" (_a), \ |
| 433 | errno = -__res; \ | 424 | "g" (_b), \ |
| 434 | __res = -1; \ | 425 | "g" (_c), \ |
| 435 | } \ | 426 | "g" (_d), \ |
| 436 | return (type)__res; \ | 427 | "g" (_e) \ |
| 428 | : "cc", "memory"); \ | ||
| 429 | __syscall_return(type, __res); \ | ||
| 437 | } | 430 | } |
| 438 | 431 | ||
| 439 | #define _syscall6(type, name, atype, a, btype, b, ctype, c, dtype, d, \ | 432 | #define _syscall6(type, name, atype, a, btype, b, \ |
| 440 | etype, e, ftype, f) \ | 433 | ctype, c, dtype, d, etype, e, ftype, f) \ |
| 441 | type name(atype a, btype b, ctype c, dtype d, etype e, ftype f) \ | 434 | type name(atype a, btype b, ctype c, dtype d, etype e, ftype f) \ |
| 442 | { \ | 435 | { \ |
| 443 | register long __res __asm__("er0"); \ | 436 | register long __res __asm__("er0"); \ |
| 444 | __asm__ __volatile__ ("mov.l er6,@-sp\n\t" \ | 437 | register long _a __asm__("er1"); \ |
| 445 | "mov.l %7, er6\n\t" \ | 438 | register long _b __asm__("er2"); \ |
| 446 | "mov.l %6, er5\n\t" \ | 439 | register long _c __asm__("er3"); \ |
| 447 | "mov.l %5, er4\n\t" \ | 440 | register long _d __asm__("er4"); \ |
| 448 | "mov.l %4, er3\n\t" \ | 441 | register long _e __asm__("er5"); \ |
| 449 | "mov.l %3, er2\n\t" \ | 442 | register long _f __asm__("er6"); \ |
| 450 | "mov.l %2, er1\n\t" \ | 443 | _a = (long)a; \ |
| 451 | "mov.l %1, er0\n\t" \ | 444 | _b = (long)b; \ |
| 452 | "trapa #0\n\t" \ | 445 | _c = (long)c; \ |
| 453 | "mov.l @sp+,er6" \ | 446 | _d = (long)d; \ |
| 454 | : "=r" (__res) \ | 447 | _e = (long)e; \ |
| 455 | : "ir" (__NR_##name), \ | 448 | _f = (long)f; \ |
| 456 | "g" ((long)a), \ | 449 | __asm__ __volatile__ ("mov.l %1,er0\n\t" \ |
| 457 | "g" ((long)b), \ | 450 | "trapa #0\n\t" \ |
| 458 | "g" ((long)c), \ | 451 | : "=r" (__res) \ |
| 459 | "g" ((long)d), \ | 452 | : "g" (__NR_##name), \ |
| 460 | "m" ((long)e), \ | 453 | "g" (_a), \ |
| 461 | "m" ((long)e) \ | 454 | "g" (_b), \ |
| 462 | : "cc", "er1", "er2", "er3", "er4", "er5"); \ | 455 | "g" (_c), \ |
| 463 | if ((unsigned long)(__res) >= (unsigned long)(-125)) { \ | 456 | "g" (_d), \ |
| 464 | errno = -__res; \ | 457 | "g" (_e) \ |
| 465 | __res = -1; \ | 458 | "g" (_f) \ |
| 466 | } \ | 459 | : "cc", "memory"); \ |
| 467 | return (type)__res; \ | 460 | __syscall_return(type, __res); \ |
| 468 | } | 461 | } |
| 469 | |||
| 470 | 462 | ||
| 471 | #ifdef __KERNEL__ | 463 | #ifdef __KERNEL__ |
| 472 | #define __ARCH_WANT_IPC_PARSE_VERSION | 464 | #define __ARCH_WANT_IPC_PARSE_VERSION |
