blob: 8402f4173b1764719fc3222328e877767a6c76e4 [file] [log] [blame]
;-----------------------------------------------------------------------------
; @file
; OVMF metadata for IGVM parameters
;
; Copyright (c) 2021 - 2024, AMD Inc. All rights reserved.<BR>
;
; SPDX-License-Identifier: BSD-2-Clause-Patent
;-----------------------------------------------------------------------------
BITS 64
ALIGN 16
%define IGVM_ID_PARAM_AREA 0x100
%define IGVM_ID_PARAM_MEMORY_MAP 0x101
%define IGVM_ID_PARAM_VP_COUNT 0x102
%define IGVM_ID_HOB_AREA 0x200
; keep in sync with OvmfPkg/Library/PlatformInitLib/Igvm.c
%define MEMORY_MAP_OFFSET 0
%define MEMORY_MAP_ENTRIES 8
%define MEMORY_MAP_SIZE (MEMORY_MAP_ENTRIES * 24)
%define VP_COUNT_OFFSET (MEMORY_MAP_OFFSET + MEMORY_MAP_SIZE)
%define VP_COUNT_SIZE 16
IgvmParamStart:
_IgvmDescriptor:
DB 'I','G','V','M' ; Signature
DD IgvmParamEnd - IgvmParamStart ; Length
DD 1 ; Version
DD (IgvmParamEnd - IgvmParamStart - 16) / 12 ; Number of sections
%if (IGVM_PARAM_SIZE > 0)
_IgvmParamArea:
DD IGVM_PARAM_START
DD IGVM_PARAM_SIZE
DD IGVM_ID_PARAM_AREA
_IgvmMemoryMap:
DD MEMORY_MAP_OFFSET
DD MEMORY_MAP_SIZE
DD IGVM_ID_PARAM_MEMORY_MAP
_IgvmVpCount:
DD VP_COUNT_OFFSET
DD VP_COUNT_SIZE
DD IGVM_ID_PARAM_VP_COUNT
%endif
%if (IGVM_HOB_SIZE > 0)
_IgvmHobArea:
DD IGVM_HOB_START
DD IGVM_HOB_SIZE
DD IGVM_ID_HOB_AREA
%endif
IgvmParamEnd: