diff options
| author | Aleksa Vuckovic <aleksa@vuckovic.cc> | 2023-02-22 18:48:51 +0100 |
|---|---|---|
| committer | Aleksa Vuckovic <aleksa@vuckovic.cc> | 2023-02-22 18:48:51 +0100 |
| commit | caba4178bbfd7b3b1ff2e156e24b08015137d16a (patch) | |
| tree | 46205b3e9d2a881c3c17297068528e7ee858f989 /kernel/src/cpu | |
| parent | 53069ae43ea997d51d2b985a26fffdb86a59b023 (diff) | |
ANSI C: volatile -> __volatile__
Diffstat (limited to 'kernel/src/cpu')
| -rw-r--r-- | kernel/src/cpu/gdt.c | 4 | ||||
| -rw-r--r-- | kernel/src/cpu/idt.c | 12 | ||||
| -rw-r--r-- | kernel/src/cpu/io.c | 4 | ||||
| -rw-r--r-- | kernel/src/cpu/msr.c | 4 | ||||
| -rw-r--r-- | kernel/src/cpu/tss.c | 2 |
5 files changed, 18 insertions, 8 deletions
diff --git a/kernel/src/cpu/gdt.c b/kernel/src/cpu/gdt.c index fe7e080..58db962 100644 --- a/kernel/src/cpu/gdt.c +++ b/kernel/src/cpu/gdt.c @@ -26,7 +26,7 @@ void add_gdt_tss(uint32_t num, uint64_t offset, uint32_t limit, uint8_t access, void reload_gdt() { - __asm__ volatile ( + __asm__ __volatile__ ( // reload segment registers "mov $0x10, %ax;" "mov %ax, %ds;" @@ -39,7 +39,7 @@ void reload_gdt() void load_gdt(gdt_p* pointer) { - __asm__ volatile ("lgdt (%0);" : : "r"(pointer) : ); + __asm__ __volatile__ ("lgdt (%0);" : : "r"(pointer) : ); reload_gdt(); } diff --git a/kernel/src/cpu/idt.c b/kernel/src/cpu/idt.c index 3578f53..1b0fffb 100644 --- a/kernel/src/cpu/idt.c +++ b/kernel/src/cpu/idt.c @@ -6,9 +6,19 @@ __attribute__((aligned(0x10))) static idt_entry idt_table[256]; idtp idt_pointer; +void enable_interrupts(void) +{ + __asm__ __volatile__ ("sti;"); +} + +void disable_interrupts(void) +{ + __asm__ __volatile__ ("cli;"); +} + void load_idt(idtp* pointer) { - __asm__ volatile ("lidt (%0);" : : "r"(pointer) : ); + __asm__ __volatile__ ("lidt (%0);" : : "r"(pointer) : ); } void add_to_idt(uint16_t num, uint64_t offset, uint16_t selector, uint8_t type) diff --git a/kernel/src/cpu/io.c b/kernel/src/cpu/io.c index a5adfd6..4b5e5ac 100644 --- a/kernel/src/cpu/io.c +++ b/kernel/src/cpu/io.c @@ -4,13 +4,13 @@ uint8_t inb(uint32_t port) { uint8_t ret; - __asm__ volatile ("inb %%dx, %%al;" : "=a"(ret) : "d"(port)); + __asm__ __volatile__ ("inb %%dx, %%al;" : "=a"(ret) : "d"(port)); return ret; } void outb(uint32_t port, uint8_t value) { - __asm__ volatile ("outb %%al, %%dx;" : : "d"(port), "a"(value)); + __asm__ __volatile__ ("outb %%al, %%dx;" : : "d"(port), "a"(value)); } void io_wait(void) diff --git a/kernel/src/cpu/msr.c b/kernel/src/cpu/msr.c index 75fc602..e904d5f 100644 --- a/kernel/src/cpu/msr.c +++ b/kernel/src/cpu/msr.c @@ -6,7 +6,7 @@ uint64_t read_msr(uint32_t addr) uint64_t edx; uint64_t ecx = addr; - __asm__ volatile ("rdmsr;" : "=a"(eax), "=d"(edx) : "c"(ecx) :); + __asm__ __volatile__ ("rdmsr;" : "=a"(eax), "=d"(edx) : "c"(ecx) :); return (edx << 32) | eax; } @@ -17,5 +17,5 @@ void write_msr(uint32_t addr, uint64_t value) uint64_t edx = value >> 32; uint64_t ecx = addr; - __asm__ volatile ("wrmsr;" : : "a"(eax), "d"(edx), "c"(ecx) :); + __asm__ __volatile__ ("wrmsr;" : : "a"(eax), "d"(edx), "c"(ecx) :); } diff --git a/kernel/src/cpu/tss.c b/kernel/src/cpu/tss.c index d2c16d3..03b3475 100644 --- a/kernel/src/cpu/tss.c +++ b/kernel/src/cpu/tss.c @@ -7,7 +7,7 @@ tss_type tss; void load_tss() { - __asm__ volatile ("push %rax; mov $0x28, %ax; ltr %ax; pop %rax;"); + __asm__ __volatile__ ("push %rax; mov $0x28, %ax; ltr %ax; pop %rax;"); } void init_tss() |
