- Timestamp:
- Jul 5, 2017, 11:08:42 AM (7 years ago)
- Location:
- trunk/hal/x86_64/core
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/hal/x86_64/core/hal_apic.h
r138 r146 27 27 void hal_apic_init(); 28 28 #endif 29 30 /*31 *******************************************************************************32 * Fake APIC status, used by XCU (soft)33 *******************************************************************************34 */35 #define APIC_FAKE_STATUS_HWI 0x100036 #define APIC_FAKE_STATUS_WTI 0x200037 #define APIC_FAKE_STATUS_PTI 0x400038 29 39 30 /* -
trunk/hal/x86_64/core/hal_kentry.S
r145 r146 166 166 INTR_SAVE_REGS ; \ 167 167 ; \ 168 movq $(APIC_FAKE_STATUS_WTI|n),CPUVAR(APIC_FAKE_STATUS); \169 168 call hal_do_interrupt; \ 170 169 ; \ … … 179 178 INTR_SAVE_REGS ; \ 180 179 ; \ 181 movq $(APIC_FAKE_STATUS_HWI|n),CPUVAR(APIC_FAKE_STATUS); \182 180 call hal_do_interrupt; \ 183 181 ; \ … … 192 190 INTR_SAVE_REGS ; \ 193 191 ; \ 194 movq $(APIC_FAKE_STATUS_PTI|n),CPUVAR(APIC_FAKE_STATUS); \195 192 call hal_do_interrupt; \ 196 193 ; \ -
trunk/hal/x86_64/core/hal_kentry.h
r145 r146 45 45 #define T_USER 0x100 46 46 47 #define CPU_INFO_APIC_FAKE_STATUS 848 47 #define CPUVAR(off) %gs:CPU_INFO_ ## off 49 48 -
trunk/hal/x86_64/core/hal_special.c
r138 r146 33 33 struct cpu_info { 34 34 void *ci_self; 35 uint64_t apic_fake_status;36 35 uint32_t ci_gid; 37 36 uint32_t ci_lid; … … 108 107 } 109 108 110 uint8_t hal_get_apic_fake_status()111 {112 return curcpu()->apic_fake_status;113 }114 115 109 /* -------------------------------------------------------------------------- */ 116 110
Note: See TracChangeset
for help on using the changeset viewer.