memtest86plus/system/vmem.h
Martin Whitaker 5211b67e6c Add option to map_region to indicate we only use the region during startup.
This will avoid unnecessary remapping of the ACPI tables if they are
located in the third GB of memory.
2022-02-28 22:05:21 +00:00

33 lines
622 B
C

// SPDX-License-Identifier: GPL-2.0
#ifndef VMEM_H
#define VMEM_H
/**
* \file
*
* Provides functions to handle physical memory page mapping into virtual
* memory.
*
*//*
* Copyright (C) 2020-2022 Martin Whitaker.
*/
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include "memsize.h"
#define VM_WINDOW_SIZE PAGE_C(1,GB)
uintptr_t map_region(uintptr_t base_addr, size_t size, bool only_for_startup);
bool map_window(uintptr_t start_page);
void *first_word_mapping(uintptr_t page);
void *last_word_mapping(uintptr_t page, size_t word_size);
uintptr_t page_of(void *addr);
#endif // VMEM_H