summaryrefslogtreecommitdiff
path: root/kernel/src/boot
diff options
context:
space:
mode:
authorAleksa Vuckovic <aleksa@vuckovic.cc>2023-02-25 07:26:22 +0100
committerAleksa Vuckovic <aleksa@vuckovic.cc>2023-02-25 08:45:12 +0100
commit5ba212fe7123d454414f64d42ec7ff0822458c13 (patch)
treea82f8057cc57b6efb8ac19f9d01c2cc1aebc29c0 /kernel/src/boot
parent239900af293f192931391dc5579afab39a43e6c6 (diff)
ANSI C: // -> /* */
Diffstat (limited to 'kernel/src/boot')
-rw-r--r--kernel/src/boot/boot.S12
-rw-r--r--kernel/src/boot/header.S12
-rw-r--r--kernel/src/boot/multiboot2.c18
3 files changed, 20 insertions, 22 deletions
diff --git a/kernel/src/boot/boot.S b/kernel/src/boot/boot.S
index f4cb290..1dc2320 100644
--- a/kernel/src/boot/boot.S
+++ b/kernel/src/boot/boot.S
@@ -21,7 +21,7 @@ _start:
ljmp $0x08, $begin_long_mode
setup_page_tables:
-// first 2mb
+/* first 2mb */
mov $pt_lvl3, %eax
or $0x3, %eax
mov %eax, pt_lvl4
@@ -42,7 +42,7 @@ setup_page_tables:
cmp $25, %ecx
jne 1b
-// first 2mb in hh
+/* first 2mb in hh */
mov $pt_lvl3_hh, %eax
or $0x3, %eax
mov %eax, pt_lvl4 + 4096 - 8
@@ -67,22 +67,22 @@ setup_page_tables:
.global enable_paging
enable_paging:
- // enable PAE
+ /* enable PAE */
mov %cr4, %edx
or $1<<5 ,%edx
mov %edx, %cr4
- // set LME (long mode enable)
+ /* set LME (long mode enable) */
mov $0xC0000080, %ecx
rdmsr
or $1<<8, %eax
wrmsr
- // pt_lvl4
+ /* pt_lvl4 */
mov $pt_lvl4, %eax
mov %eax, %cr3
- // enable paging (+ protected mode if not already enabled)
+ /* enable paging (+ protected mode if not already enabled) */
mov %cr0, %eax
or $1<<31 + 1<<0, %eax
mov %eax, %cr0
diff --git a/kernel/src/boot/header.S b/kernel/src/boot/header.S
index bbcb9be..a608dcc 100644
--- a/kernel/src/boot/header.S
+++ b/kernel/src/boot/header.S
@@ -1,12 +1,12 @@
-// multiboot tags
+/* multiboot tags */
.set TAG_END, 0
.set TAG_FRAMEBUFFER, 5
-// multiboot flags
+/* multiboot flags */
.set TAG_REQUIRED, 0
.set TAG_OPTIONAL, 1
-# multiboot2 header constants
+/* multiboot2 header constants */
.set MAGIC, 0xe85250d6
.set ARCH, 0
.set HEADER_LENGTH, (header_end - header_start)
@@ -15,14 +15,14 @@
.section .multiboot_header, "a"
.align 4
header_start:
- # magic
+ /* magic */
.align 8
.long MAGIC
.long ARCH
.long HEADER_LENGTH
.long CHECKSUM
- # framebuffer
+ /* framebuffer */
.align 8
.word TAG_FRAMEBUFFER
.word TAG_REQUIRED
@@ -31,7 +31,7 @@ header_start:
.long 768
.long 32
- # end tag
+ /* end tag */
.align 8
.word TAG_END
.word TAG_REQUIRED
diff --git a/kernel/src/boot/multiboot2.c b/kernel/src/boot/multiboot2.c
index 8a7d0d6..1958ac1 100644
--- a/kernel/src/boot/multiboot2.c
+++ b/kernel/src/boot/multiboot2.c
@@ -8,8 +8,6 @@
#include <heap.h>
#include <kernel_vma.h>
-/* https://www.gnu.org/software/grub/manual/multiboot2/html_node/Boot-information-format.html */
-
mb2_tag_module *ext2_module;
mmap_t mmap;
@@ -24,7 +22,7 @@ void init_fb(mb2_tag_fb *tag_fb)
main_fb.char_col = WHITE;
main_fb.bg_col = BLACK;
- // identity map framebuffer address
+ /* identity map framebuffer address */
map_addr(main_fb.addr, main_fb.addr, FLAG_PRESENT | FLAG_WRITABLE);
map_addr(main_fb.addr + PAGE_SIZE, main_fb.addr + PAGE_SIZE,
FLAG_PRESENT | FLAG_WRITABLE);
@@ -34,7 +32,7 @@ void init_mmap(mb2_tag_mmap *tag_mmap)
{
INIT_LIST(mmap.list)
- // get data and store it into list
+ /* get data and store it into list */
for (size_t i = sizeof(mb2_tag_mmap); i < tag_mmap->size;
i += sizeof(mb2_tag_mmap_entry)) {
mmap_t *curr_mmap_entry = (mmap_t *)kalloc(sizeof(mmap_t));
@@ -46,7 +44,7 @@ void init_mmap(mb2_tag_mmap *tag_mmap)
void init_module(mb2_tag_module *tag_module)
{
- // name is utf-8 encoded string!
+ /* name is utf-8 encoded string! */
uint32_t name_size =
tag_module->size - sizeof(tag_module) + sizeof(char *);
tag_module->name = (char *)kalloc(name_size);
@@ -58,21 +56,21 @@ void init_module(mb2_tag_module *tag_module)
void read_mb2(mb2_tag_header *multiboot_bootinfo, uint32_t multiboot_magic)
{
if (multiboot_magic != MB2_MAGIC) {
- // not loaded by multiboot2 bootloader
+ /* not loaded by multiboot2 bootloader */
__asm__ __volatile__("hlt;");
}
- // we will store framebuffer information here
+ /* we will store framebuffer information here */
static mb2_tag_fb *tag_fb;
static mb2_tag_mmap *tag_mmap;
- // skip first 8 bytes (total_size + reserved)
+ /* skip first 8 bytes (total_size + reserved) */
mb2_tag_header *tag_header =
(mb2_tag_header *)((uint64_t)multiboot_bootinfo + 8 +
KERNEL_VMA);
while (tag_header->type != MB2_TAG_END) {
- // process tag_type
+ /* process tag_type */
switch (tag_header->type) {
case MB2_TAG_FB:
tag_fb = (mb2_tag_fb *)tag_header;
@@ -87,7 +85,7 @@ void read_mb2(mb2_tag_header *multiboot_bootinfo, uint32_t multiboot_magic)
break;
}
- // next mb2_tag
+ /* next mb2_tag */
tag_header +=
tag_header->size / 8 + ((tag_header->size % 8) > 0);
}