Rev 702 | Rev 799 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 702 | Rev 717 | ||
|---|---|---|---|
| Line 51... | Line 51... | ||
| 51 | .global has_cpuid |
51 | .global has_cpuid |
| 52 | .global rdtsc |
52 | .global rdtsc |
| 53 | .global read_efer_flag |
53 | .global read_efer_flag |
| 54 | .global set_efer_flag |
54 | .global set_efer_flag |
| 55 | 55 | ||
| 56 | - | ||
| 57 | # THIS IS USERSPACE CODE |
- | |
| 58 | .global utext |
- | |
| 59 | utext: |
- | |
| 60 | 0: |
- | |
| 61 | int $48 |
- | |
| 62 | jmp 0b |
- | |
| 63 | # not reached |
- | |
| 64 | utext_end: |
- | |
| 65 | - | ||
| 66 | .data |
- | |
| 67 | .global utext_size |
- | |
| 68 | utext_size: |
- | |
| 69 | .long utext_end - utext |
- | |
| 70 | - | ||
| 71 | - | ||
| 72 | ## Determine CPUID support |
56 | ## Determine CPUID support |
| 73 | # |
57 | # |
| 74 | # Return 0 in EAX if CPUID is not support, 1 if supported. |
58 | # Return 0 in EAX if CPUID is not support, 1 if supported. |
| 75 | # |
59 | # |
| 76 | has_cpuid: |
60 | has_cpuid: |
| Line 205... | Line 189... | ||
| 205 | interrupt_handlers: |
189 | interrupt_handlers: |
| 206 | h_start: |
190 | h_start: |
| 207 | handler 0 IDT_ITEMS |
191 | handler 0 IDT_ITEMS |
| 208 | h_end: |
192 | h_end: |
| 209 | 193 | ||
| 210 | - | ||
| 211 | .data |
194 | .data |
| 212 | .global interrupt_handler_size |
195 | .global interrupt_handler_size |
| 213 | 196 | ||
| 214 | interrupt_handler_size: .long (h_end-h_start)/IDT_ITEMS |
197 | interrupt_handler_size: .long (h_end-h_start)/IDT_ITEMS |