Changeset 68091bd in mainline
- Timestamp:
- 2006-04-21T12:55:55Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- c7c0b89b
- Parents:
- 17b1b99
- Files:
-
- 2 added
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
Makefile
r17b1b99 r68091bd 78 78 ifeq ($(CONFIG_DEBUG_ALLREGS),y) 79 79 DEFS += -DCONFIG_DEBUG_ALLREGS 80 endif 81 ifeq ($(CONFIG_VHPT),y) 82 DEFS += -DCONFIG_VHPT 80 83 endif 81 84 -
arch/ia64/Makefile.inc
r17b1b99 r68091bd 85 85 arch/$(ARCH)/src/mm/page.c \ 86 86 arch/$(ARCH)/src/mm/tlb.c \ 87 arch/$(ARCH)/src/mm/vhpt.c \ 87 88 arch/$(ARCH)/src/proc/scheduler.c \ 88 89 arch/$(ARCH)/src/ddi/ddi.c \ -
arch/ia64/include/mm/page.h
r17b1b99 r68091bd 61 61 #define VHPT_WIDTH 20 /* 1M */ 62 62 #define VHPT_SIZE (1 << VHPT_WIDTH) 63 #define VHPT_BASE 0 /* Must be aligned to VHPT_SIZE */64 63 65 64 #define PTA_BASE_SHIFT 15 -
arch/ia64/src/mm/page.c
r17b1b99 r68091bd 32 32 #include <mm/asid.h> 33 33 #include <arch/mm/asid.h> 34 #include <arch/mm/vhpt.h> 34 35 #include <arch/types.h> 35 36 #include <typedefs.h> … … 59 60 pta_register pta; 60 61 int i; 62 #ifdef CONFIG_VHPT 63 __address vhpt_base; 64 #endif 61 65 62 66 /* … … 89 93 } 90 94 95 #ifdef CONFIG_VHPT 96 vhpt_base = vhpt_set_up(); 97 #endif 91 98 /* 92 99 * Set up PTA register. 93 100 */ 94 101 pta.word = pta_read(); 102 #ifndef CONFIG_VHPT 95 103 pta.map.ve = 0; /* disable VHPT walker */ 104 pta.map.base = 0 >> PTA_BASE_SHIFT; 105 #else 106 pta.map.ve = 1; /* enable VHPT walker */ 107 pta.map.base = vhpt_base >> PTA_BASE_SHIFT; 108 #endif 96 109 pta.map.vf = 1; /* large entry format */ 97 110 pta.map.size = VHPT_WIDTH; 98 pta.map.base = VHPT_BASE >> PTA_BASE_SHIFT;99 111 pta_write(pta.word); 100 112 srlz_i(); -
arch/ia64/src/mm/tlb.c
r17b1b99 r68091bd 37 37 #include <arch/mm/tlb.h> 38 38 #include <arch/mm/page.h> 39 #include <arch/mm/vhpt.h> 39 40 #include <arch/barrier.h> 40 41 #include <arch/interrupt.h> … … 79 80 srlz_d(); 80 81 srlz_i(); 82 #ifdef CONFIG_VHPT 83 vhpt_invalidate_all(); 84 #endif 81 85 } 82 86 … … 386 390 387 391 dtc_mapping_insert(t->page, t->as->asid, entry); 392 #ifdef CONFIG_VHPT 393 vhpt_mapping_insert(t->page, t->as->asid, entry); 394 #endif 388 395 } 389 396 … … 410 417 411 418 itc_mapping_insert(t->page, t->as->asid, entry); 419 #ifdef CONFIG_VHPT 420 vhpt_mapping_insert(t->page, t->as->asid, entry); 421 #endif 412 422 } 413 423 -
generic/src/proc/thread.c
r17b1b99 r68091bd 454 454 __native sys_thread_create(uspace_arg_t *uspace_uarg, char *uspace_name) 455 455 { 456 457 456 thread_t *t; 457 char namebuf[THREAD_NAME_BUFLEN]; 458 458 uspace_arg_t *kernel_uarg; 459 459 __u32 tid; 460 460 461 461 copy_from_uspace(namebuf, uspace_name, THREAD_NAME_BUFLEN); 462 462 463 463 kernel_uarg = (uspace_arg_t *) malloc(sizeof(uspace_arg_t), 0); 464 464 copy_from_uspace(kernel_uarg, uspace_uarg, sizeof(uspace_arg_t)); 465 465 466 466 if ((t = thread_create(uinit, kernel_uarg, TASK, 0, namebuf))) { 467 467 tid = t->tid; 468 468 thread_ready(t); 469 469 return (__native) tid; 470 470 } else { 471 471 free(kernel_uarg); 472 473 474 472 } 473 474 return (__native) -1; 475 475 } 476 476 … … 480 480 __native sys_thread_exit(int uspace_status) 481 481 { 482 483 484 485 } 482 thread_exit(); 483 /* Unreachable */ 484 return 0; 485 } -
kernel.config
r17b1b99 r68091bd 78 78 ! [CONFIG_DEBUG=y&(ARCH=amd64|ARCH=mips32|ARCH=ia32)] CONFIG_DEBUG_ALLREGS (y/n) 79 79 80 # Use VHPT 81 ! [ARCH=ia64] CONFIG_VHPT (y/n) 82 80 83 ## Run-time configuration directives 81 84
Note:
See TracChangeset
for help on using the changeset viewer.