Changeset 374 for asp3_tinet_ecnl_arm/trunk/ntshell/src/syscall.c
- Timestamp:
- Apr 5, 2019, 9:26:53 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
asp3_tinet_ecnl_arm/trunk/ntshell/src/syscall.c
r364 r374 48 48 49 49 /* ==== Cleaning and invalidation of the L1 data cache ==== */ 50 __v7_all_cache(2);50 L1C_CleanInvalidateDCacheAll(); 51 51 __DSB(); 52 52 53 53 /* ==== Cleaning and invalidation of the L2 cache ==== */ 54 if ( PL310->AUX_CNT & (1 << 16)) {54 if (L2C_310->AUX_CNT & (1 << 16)) { 55 55 assoc = 16; 56 56 } … … 58 58 assoc = 8; 59 59 } 60 PL310->INV_WAY = (1 << assoc) - 1;61 while ( PL310->INV_WAY & ((1 << assoc) - 1)); // poll invalidate62 PL310->CACHE_SYNC = 0x0;60 L2C_310->INV_WAY = (1 << assoc) - 1; 61 while (L2C_310->INV_WAY & ((1 << assoc) - 1)); // poll invalidate 62 L2C_310->CACHE_SYNC = 0x0; 63 63 64 64 /* ==== Invalidate all TLB entries ==== */ 65 __ca9u_inv_tlb_all();65 MMU_InvalidateTLB(); 66 66 67 67 /* ==== Invalidate the L1 instruction cache ==== */ 68 __v7_inv_icache_all();68 L1C_InvalidateICacheAll(); 69 69 __DSB(); 70 70 __ISB(); … … 184 184 } 185 185 186 long SYS_fdatasync() { 186 long SYS_fdatasync(long a) { 187 //int fdatasync(int fd) 187 188 return no_implement("fdatasync\n"); 188 189 } … … 200 201 } 201 202 202 long SYS_futex( ) {203 int futex(int *uaddr, int op, int val, const struct timespec *timeout, int *uaddr2, int val3);203 long SYS_futex(long a, long b, long c, long d, long e, long f) { 204 //int futex(int *uaddr, int op, int val, const struct timespec *timeout, int *uaddr2, int val3); 204 205 return no_implement("futex\n"); 205 206 } 206 207 207 long SYS_futimesat() { 208 long SYS_futimesat(long a, long b, long c) { 209 //int futimesat(int dirfd, const char *pathname, const struct timeval times[2]) 208 210 return no_implement("futimesat\n"); 209 211 } … … 281 283 } 282 284 283 long SYS_munmap() { 285 long SYS_munmap(long a, long b) { 286 //int munmap(void *start, size_t len) 284 287 return no_implement("munmap\n"); 285 288 } … … 293 296 } 294 297 295 long SYS_pread64() { 298 long SYS_pread64(long a, long b, long c, long d) { 299 //#define pread64 pread 300 //ssize_t pread(int fd, void *buf, size_t size, off_t ofs) 296 301 return no_implement("pread64\n"); 297 302 } 298 303 299 long SYS_pwrite64() { 304 long SYS_pwrite64(long a, long b, long c, long d) { 305 //#define pwrite64 pwrite 306 //ssize_t pwrite(int fd, const void *buf, size_t size, off_t ofs) 300 307 return no_implement("pwrite64\n"); 301 308 } … … 337 344 } 338 345 339 long SYS_rt_sigqueueinfo() { 346 long SYS_rt_sigqueueinfo(long a, long b, long c) { 347 //int rt_sigqueueinfo(pid_t tgid, int sig, siginfo_t *uinfo) 340 348 return no_implement("rt_sigqueueinfo\n"); 341 349 } … … 361 369 } 362 370 363 long SYS_sched_setscheduler() { 371 long SYS_sched_setscheduler(long a, long b, long c) { 372 //int sched_setscheduler(pid_t pid, int sched, const struct sched_param *param) 364 373 return no_implement("sched_setscheduler\n"); 365 374 } 366 375 367 long SYS_set_robust_list() { 376 long SYS_set_robust_list(long a, long b) { 377 //long set_robust_list(struct robust_list_head *head, size_t len) 368 378 return no_implement("set_robust_list\n"); 369 379 } … … 401 411 } 402 412 403 long SYS_utimensat() { 413 long SYS_utimensat(long a, long b, long c, long d) { 414 //int utimensat(int fd, const char *path, const struct timespec times[2], int flags) 404 415 return no_implement("utimensat\n"); 405 416 } 406 417 407 long SYS_utimes() { 418 long SYS_utimes(long a, long b) { 419 //int utimes(const char *path, const struct timeval times[2]) 408 420 return no_implement("utimes\n"); 409 421 } … … 417 429 } 418 430 419 long SYS_dup( )420 { 431 long SYS_dup(long a) { 432 //int dup(int fd) 421 433 return no_implement("dup\n"); 422 434 } 423 435 424 long SYS_dup2( )425 { 436 long SYS_dup2(long a, long b) { 437 //int dup2(int old, int new) 426 438 return no_implement("dup2\n"); 427 439 } 428 440 429 long SYS_pipe( )430 { 441 long SYS_pipe(long a) { 442 //int pipe(int fd[2]) 431 443 return no_implement("pipe\n"); 432 444 } 433 445 434 long SYS_readlink( )435 { 446 long SYS_readlink(long a, long b, long c) { 447 //ssize_t readlink(const char *restrict path, char *restrict buf, size_t bufsize) 436 448 return no_implement("readlink\n"); 437 449 } 438 450 439 long SYS_symlink( )440 { 451 long SYS_symlink(long a, long b) { 452 //int symlink(const char *existing, const char *new) 441 453 return no_implement("symlink\n"); 442 454 } 443 455 444 long SYS_umask( )445 { 456 long SYS_umask(long a) { 457 //mode_t umask(mode_t mode) 446 458 return no_implement("umask\n"); 447 459 } 448 460 449 long SYS_execve( )450 { 461 long SYS_execve(long a, long b, long c) { 462 //int execve(const char *path, char *const argv[], char *const envp[]) 451 463 return no_implement("execve\n"); 452 464 } 453 465 454 long SYS_fork() 455 { 466 long SYS_fork() { 467 //pid_t fork(void) 456 468 return no_implement("fork\n"); 457 469 } 458 470 459 long SYS_wait4( )460 { 471 long SYS_wait4(long a, long b, long c, long d) { 472 //pid_t wait4(pid_t pid, int *status, int options, struct rusage *usage) 461 473 return no_implement("wait4\n"); 462 474 } 463 475 464 long SYS_socketpair( )465 { 476 long SYS_socketpair(long a, long b, long c, long d) { 477 //int socketpair(int domain, int type, int protocol, int fd[2]) 466 478 return no_implement("socketpair\n"); 467 479 } 468 480 469 long SYS_flock( )470 { 481 long SYS_flock(long a, long b) { 482 //int flock(int fd, int op) 471 483 return no_implement("flock\n"); 484 } 485 486 long SYS_fchdir() 487 { 488 return no_implement("fchdir\n"); 489 } 490 491 long SYS_getegid32() 492 { 493 return no_implement("getegid32\n"); 494 } 495 496 long SYS_geteuid32() 497 { 498 return no_implement("geteuid32\n"); 499 } 500 501 long SYS_getgid32() 502 { 503 return no_implement("getgid32\n"); 504 } 505 506 long SYS_pipe2() 507 { 508 return no_implement("pipe2\n"); 509 } 510 511 long SYS_setgid32() 512 { 513 return no_implement("setgid32\n"); 514 } 515 516 long SYS_setpgid() 517 { 518 return no_implement("setpgid\n"); 519 } 520 521 long SYS_setsid() 522 { 523 return no_implement("setsid\n"); 524 } 525 526 long SYS_setuid32() 527 { 528 return no_implement("setuid32\n"); 529 } 530 531 long SYS_tgkill() 532 { 533 return no_implement("tgkill\n"); 534 } 535 536 long SYS_nanosleep(long a, long b) { 537 //int nanosleep(const struct timespec *req, struct timespec *rem) 538 return no_implement("nanosleep\n"); 539 } 540 541 long SYS_prlimit64(long a, long b, long c, long d) { 542 //#define prlimit64 prlimit 543 //int prlimit(pid_t pid, int resource, const struct rlimit *new_limit, struct rlimit *old_limit) 544 return no_implement("prlimit64\n"); 545 } 546 547 long SYS_sched_getaffinity(long a, long b, long c) { 548 //int sched_getaffinity(pid_t tid, size_t size, cpu_set_t *set) 549 return no_implement("sched_getaffinity\n"); 550 } 551 552 long SYS_sysinfo(long a) { 553 //int sysinfo(struct sysinfo *info) 554 return no_implement("sysinfo\n"); 555 } 556 557 long SYS_ugetrlimit(long a, long b) { 558 //#define SYS_getrlimit SYS_ugetrlimit 559 //int getrlimit(int resource, struct rlimit *rlim) 560 return no_implement("ugetrlimit\n"); 472 561 } 473 562
Note:
See TracChangeset
for help on using the changeset viewer.