acrn-hypervisor/hypervisor/bsp/include/bsp_extern.h
Minggui Cao c5e072432a HV: modularization to refine boot/bsp related code.
1. add static for local functions and variables.
2. move vm_sw_loader from vcpu to vm
3. refine uefi.c to follow the code rules.
4. separate uefi.c for vm0 boot and bsp two parts. bsp layer just
access native HW related, can't access vm/vcpu, vm0 boot part can
access vm / vcpu data structure.

Tracked-On: #1842
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
2019-01-08 08:46:15 +08:00

52 lines
1.1 KiB
C

/*
* Copyright (C) 2018 Intel Corporation. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/************************************************************************
*
* FILE NAME
*
* bsp_extern.h
*
* DESCRIPTION
*
* This file defines the generic BSP interface
*
************************************************************************/
#ifndef BSP_EXTERN_H
#define BSP_EXTERN_H
#include "default_acpi_info.h"
#include "platform_acpi_info.h"
#define UOS_DEFAULT_START_ADDR (0x100000000UL)
struct acpi_info {
uint8_t x86_family;
uint8_t x86_model;
struct pm_s_state_data pm_s_state;
/* TODO: we can add more acpi info field here if needed. */
};
/**********************************/
/* EXTERNAL VARIABLES */
/**********************************/
/* BSP Interfaces */
void init_bsp(void);
#ifndef CONFIG_CONSTANT_ACPI
void acpi_fixup(void);
#endif
#ifdef CONFIG_EFI_STUB
void *get_rsdp_from_uefi(void);
void *get_ap_trampoline_buf(void);
const struct efi_context *get_efi_ctx(void);
const struct lapic_regs *get_efi_lapic_regs(void);
#endif
#endif /* BSP_EXTERN_H */