aboutsummaryrefslogtreecommitdiff
path: root/mirai/boot/gdt/types/gdtr.zig
blob: ab23a755dd64b0eb3b034539795d3b7e5686405c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//! GDT Register Type

const asm_gdt = @import("../../../asm/gdt/gdt.zig");

pub const Gdtr = asm_gdt.Gdtr;

pub fn create(base_address: u64, num_entries: u16) Gdtr {
    return Gdtr{
        .limit = (num_entries * 8) - 1,
        .base = base_address,
    };
}

pub fn get_entry_count(gdtr: Gdtr) u16 {
    return (gdtr.limit + 1) / 8;
}