blob: 606397599ccf47001b4aedcebacfa63114ad5d29 [file] [log] [blame]
/*
* Copyright 2019 The Hafnium Authors.
*
* Use of this source code is governed by a BSD-style
* license that can be found in the LICENSE file or at
* https://opensource.org/licenses/BSD-3-Clause.
*/
#pragma once
#include "hf/mm.h"
#include "hf/mpool.h"
/**
* Performs arch specific boot time initialization.
*
* It must only be called once, on first boot and must be called as early as
* possible.
*/
void arch_one_time_init(void);
/**
* Updates the hypervisor page table such that the stack address range
* is mapped into the address space at the corresponding address range in the
* architecture-specific mode.
*/
bool arch_stack_mm_init(struct mm_stage1_locked stage1_locked,
struct mpool *ppool);