Changeset d9f81af3 in mainline
- Timestamp:
- 2005-09-01T01:08:51Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 75d5721
- Parents:
- 470c468
- Files:
-
- 6 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
arch/amd64/Makefile.inc
r470c468 rd9f81af3 28 28 arch/amd64.c \ 29 29 arch/bios/bios.c \ 30 arch/interrupt.c 30 arch/interrupt.c \ 31 arch/mm/frame.c \ 32 arch/mm/page.c \ 33 arch/mm/tlb.c -
arch/amd64/include/asm.h
r470c468 rd9f81af3 140 140 static inline __u32 read_cr2(void) { __u64 v; __asm__ volatile ("movq %%cr2,%0" : "=r" (v)); return v; } 141 141 142 /** Write CR3 143 * 144 * Write value to CR3. 145 * 146 * @param v Value to be written. 147 */ 148 static inline void write_cr3(__u64 v) { __asm__ volatile ("movq %0,%%cr3\n" : : "r" (v)); } 149 150 /** Read CR3 151 * 152 * Return value in CR3 153 * 154 * @return Value read. 155 */ 156 static inline __u32 read_cr3(void) { __u64 v; __asm__ volatile ("movq %%cr3,%0" : "=r" (v)); return v; } 157 158 /** Set priority level low 159 * 160 * Enable interrupts and return previous 161 * value of EFLAGS. 162 */ 163 164 142 165 143 166 extern size_t interrupt_handler_size; -
arch/amd64/src/boot/memmap.S
r470c468 rd9f81af3 120 120 121 121 e820counter: 122 .byte 0x ff122 .byte 0x0 123 123 124 124 e820table: 125 .space (32*E820_RECORD_SIZE),0x ff# space for 32 records, each E820_RECORD_SIZE bytes long125 .space (32*E820_RECORD_SIZE),0x0 # space for 32 records, each E820_RECORD_SIZE bytes long -
arch/amd64/src/dummy.s
r470c468 rd9f81af3 36 36 .global cpu_sleep 37 37 .global cpu_print_report 38 .global get_memory_size39 38 .global arch_late_init 40 39 .global calibrate_delay_loop 41 40 .global cpu_halt 42 .global page_arch_init43 .global frame_arch_init44 41 .global dummy 45 42 .global rdtsc … … 49 46 .global interrupt_handler_size 50 47 .global interrupt_handlers 48 .global memory_print_map 49 .global get_memory_size 50 51 get_memory_size: 52 movq $4*1024*1024, %rax 53 ret 51 54 52 55 interrupt_handler_size: … … 61 64 cpu_sleep: 62 65 cpu_print_report: 63 get_memory_size:64 66 arch_late_init: 65 67 calibrate_delay_loop: 66 68 cpu_halt: 67 page_arch_init:68 frame_arch_init:69 69 reset_TS_flag: 70 fpu_init: 70 fpu_init: 71 memory_print_map: 71 72 72 73 dummy: -
arch/amd64/src/mm/page.c
r470c468 rd9f81af3 1 1 /* 2 * Copyright (C) 200 5 Martin Decky2 * Copyright (C) 2001-2004 Jakub Jermar 3 3 * All rights reserved. 4 4 * … … 27 27 */ 28 28 29 #i fndef __amd64_MEMORY_INIT_H__30 # define __amd64_MEMORY_INIT_H__29 #include <mm/page.h> 30 #include <arch/mm/page.h> 31 31 32 #include <config.h> 33 34 size_t get_memory_size(void); 35 36 #endif 32 void page_arch_init(void) 33 { 34 } -
src/build.amd64
r470c468 rd9f81af3 6 6 # Create links to ia32 architecture 7 7 for a in drivers bios interrupt.c; do 8 ln -sf ../../../arch/ia32/src/$a ../arch/amd64/src/ 8 ln -sf ../../ia32/src/$a ../arch/amd64/src/ 9 done 10 for a in frame.c tlb.c; do 11 ln -sf ../../../ia32/src/mm/$a ../arch/amd64/src/mm 9 12 done 10 13 11 14 for a in ega.h i8042.h i8259.h i8254.h cpuid.h interrupt.h bios; do 12 ln -sf ../../ ../arch/ia32/include/$a ../arch/amd64/include/15 ln -sf ../../ia32/include/$a ../arch/amd64/include/ 13 16 done 17 ln -sf ../../../ia32/include/mm/memory_init.h ../arch/amd64/include/mm/ 14 18 15 19 make dist-clean ARCH=ia32 -
src/mm/frame.c
r470c468 rd9f81af3 192 192 void frame_region_not_free(__address start, __address stop) 193 193 { 194 __ u32 i;194 __address a; 195 195 196 196 start /= FRAME_SIZE; 197 197 stop /= FRAME_SIZE; 198 for ( i = start; i <= stop; i++)199 frame_not_free( i* FRAME_SIZE);200 } 198 for (a = start; a <= stop; a++) 199 frame_not_free(a * FRAME_SIZE); 200 }
Note:
See TracChangeset
for help on using the changeset viewer.