aboutsummaryrefslogtreecommitdiff
path: root/src/mem
diff options
context:
space:
mode:
authoraqua <aqua@iserlohn-fortress.net>2023-05-24 21:29:00 +0300
committeraqua <aqua@iserlohn-fortress.net>2023-05-24 21:29:29 +0300
commit050aa3ab70dd69d1ca8ffe94fd146039a0885550 (patch)
tree4002a7a0bb86580cc6a2adc2eee45891ee068540 /src/mem
parentPlace compiled objects and dependencies in build/ (diff)
downloadkernel-050aa3ab70dd69d1ca8ffe94fd146039a0885550.tar.xz
Make code ANSI C compatible
Diffstat (limited to 'src/mem')
-rw-r--r--src/mem/vmm.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/mem/vmm.c b/src/mem/vmm.c
index 77b06a8..f62eadf 100644
--- a/src/mem/vmm.c
+++ b/src/mem/vmm.c
@@ -18,8 +18,8 @@ vmm_map(unsigned int paddr, unsigned int vaddr)
{
if (paddr & 0xfff || vaddr & 0xfff) return 0;
- const unsigned table_idx = vaddr >> 22; // high 10 bits
- const unsigned entry_idx = (vaddr >> 12) & 0x3ff; // low 10 bits
+ const unsigned table_idx = vaddr >> 22; /* high 10 bits */
+ const unsigned entry_idx = (vaddr >> 12) & 0x3ff; /* low 10 bits */
if (k_pagedir[table_idx].present == 0) return 0;
struct TableEntry *table = (struct TableEntry *)to_vaddr(k_pagedir[table_idx].address << 12);
@@ -34,12 +34,8 @@ vmm_map(unsigned int paddr, unsigned int vaddr)
void
alloc4M()
{
- // enable pse in cr4
- asm volatile(R"(
- movl %cr4, %eax
- orl $0x10, %eax
- movl %eax, %cr4
-)");
+ /* enable pse in cr4 */
+ __asm__("movl %cr4, %eax; orl $0x10, %eax; movl %eax, %cr4");
struct DirectoryEntry4MB *directory = (struct DirectoryEntry4MB *)&k_pagedir[0x301];
directory->address_low = 0x1;