Subversion Repositories HelenOS-historic

Rev

Rev 257 | Rev 282 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 257 Rev 268
Line 163... Line 163...
163
 * @return Value read.
163
 * @return Value read.
164
 */
164
 */
165
static inline __u64 read_cr3(void) { __u64 v; __asm__ volatile ("movq %%cr3,%0" : "=r" (v)); return v; }
165
static inline __u64 read_cr3(void) { __u64 v; __asm__ volatile ("movq %%cr3,%0" : "=r" (v)); return v; }
166
 
166
 
167
 
167
 
-
 
168
/** Enable local APIC
-
 
169
 *
-
 
170
 * Enable local APIC in MSR.
-
 
171
 */
-
 
172
static inline void enable_l_apic_in_msr()
-
 
173
{
-
 
174
    __asm__ volatile (
-
 
175
        "movl $0x1b, %%ecx;"
-
 
176
        "rdmsr;"
-
 
177
        "orl $(1<<11),%%eax;"
-
 
178
        "orl $(0xfee00000),%%eax;"
-
 
179
        "wrmsr;"
-
 
180
        :
-
 
181
        :
-
 
182
        :"%eax","%ecx","%edx"
-
 
183
        );
-
 
184
}
-
 
185
 
168
extern size_t interrupt_handler_size;
186
extern size_t interrupt_handler_size;
169
extern void interrupt_handlers(void);
187
extern void interrupt_handlers(void);
170
 
188
 
171
#endif
189
#endif