102 lines
5.5 KiB
Plaintext
102 lines
5.5 KiB
Plaintext
## @file
|
|
# FDF file of Platform.
|
|
# Flashmap FDF for Extended BIOS Region support
|
|
#
|
|
# @copyright
|
|
# INTEL CONFIDENTIAL
|
|
# Copyright 2020 - 2021 Intel Corporation.
|
|
#
|
|
# The source code contained or described herein and all documents related to the
|
|
# source code ("Material") are owned by Intel Corporation or its suppliers or
|
|
# licensors. Title to the Material remains with Intel Corporation or its suppliers
|
|
# and licensors. The Material may contain trade secrets and proprietary and
|
|
# confidential information of Intel Corporation and its suppliers and licensors,
|
|
# and is protected by worldwide copyright and trade secret laws and treaty
|
|
# provisions. No part of the Material may be used, copied, reproduced, modified,
|
|
# published, uploaded, posted, transmitted, distributed, or disclosed in any way
|
|
# without Intel's prior express written permission.
|
|
#
|
|
# No license under any patent, copyright, trade secret or other intellectual
|
|
# property right is granted to or conferred upon you by disclosure or delivery
|
|
# of the Materials, either expressly, by implication, inducement, estoppel or
|
|
# otherwise. Any license under such intellectual property rights must be
|
|
# express and approved by Intel in writing.
|
|
#
|
|
# Unless otherwise agreed by Intel in writing, you may not remove or alter
|
|
# this notice or any other notice embedded in Materials by Intel or
|
|
# Intel's suppliers or licensors in any way.
|
|
#
|
|
# This file contains a 'Sample Driver' and is licensed as such under the terms
|
|
# of your license agreement with Intel or your vendor. This file may be modified
|
|
# by the user, subject to the additional terms of the license agreement.
|
|
#
|
|
# @par Specification
|
|
##
|
|
|
|
#=================================================================================#
|
|
# 16MB BIOS + Extended BIOS region #
|
|
#=================================================================================#
|
|
DEFINE FLASH_BASE = 0xFD000000 #
|
|
DEFINE FLASH_SIZE = 0x03000000 #
|
|
DEFINE FLASH_BLOCK_SIZE = 0x00010000 #
|
|
DEFINE FLASH_NUM_BLOCKS = 0x00000300 #
|
|
DEFINE EXTENDED_REGION_MEMMAP_ADDRESS = 0xF8000000 #
|
|
DEFINE EXTENDED_REGION_SIZE = 0x02000000 #
|
|
DEFINE EXTENDED_REGION_IN_USE = 0x00100000 #
|
|
DEFINE ACM_ALIGNMENT_ON_FV_BASE = 256K #
|
|
#=================================================================================#
|
|
|
|
####
|
|
# Flashmap supporting Extended BIOS Region
|
|
#
|
|
# - Flash address: As Extended BIOS Region initialization code supported by
|
|
# Intel silicon code initializes EXT_BIOS_LIMIT_OFFSET for 16MB offset,
|
|
# starting from the 16MB offset of the flash BIOS region gets mapped to memory.
|
|
# - Memory address: 32MB from SPI BAR1 BASE is the memory address range for
|
|
# Extended BIOS Region of the flash to be mapped. BAR1 BASE addresses
|
|
# should be configured through policy.
|
|
#
|
|
# Example configuration
|
|
# - Intel Silicon code has a policy to set SPI BAR1 BASE.
|
|
# Default address is the recommended base address according to the current memory usage.
|
|
# SpiConfig->ExtendedBiosDecodeRangeBase = 0xF8000000
|
|
# Set the same address to EXTENDED_REGION_MEMMAP_ADDRESS macro.
|
|
# EXTENDED_REGION_MEMMAP_ADDRESS = 0xF8000000
|
|
# - Define EXTENDED_REGION_IN_USE to 1MB, or the size the project needs.
|
|
# EXTENDED_REGION_IN_USE = 0x00100000
|
|
# - Configure macro FLASH_BASE and EXTENDED_REGION_SIZE
|
|
# -- EXTENDED_REGION_SIZE always 32MB in max. This is defined by Silicon.
|
|
# EXTENDED_REGION_SIZE = 0x02000000
|
|
# -- Total map-able size in max : 16MB(main) + 32MB(extended)
|
|
# -- FLASH_BASE : 4GB - (16MB + 32MB)
|
|
# -- Redundant region size : EXTENDED_REGION_SIZE - EXTENDED_REGION_IN_USE
|
|
# In BoardPkg FDF, place the extended code region next to the 16MB BIOS region so
|
|
# postbuild script cuts off the redundant space and one single final image is made.
|
|
# - Keep NvStorage firmware volume inside of the main 16MB region as the region is
|
|
# expected to be accessible in early phase.
|
|
|
|
####
|
|
# Flashmap for Extended BIOS Region (start from FLASH_BASE, Offset start from 0x0)
|
|
#
|
|
# ================================================================================= #
|
|
# postbuild script cuts off the unused region 0x00000000 #
|
|
# 0x01F00000 #
|
|
# ================================================================================= #
|
|
SET gBoardModuleTokenSpaceGuid.PcdFlashExtendRegionOffset = 0x01F00000 # equal to flash base + flash size - 16MB - extended BIOS region in use
|
|
SET gBoardModuleTokenSpaceGuid.PcdFlashExtendRegionSizeInUse = 0x00100000 # equal to the macro setting for extneded BIOS region in use
|
|
|
|
SET gBoardModuleTokenSpaceGuid.PcdFlashFvExtendedAdvancedOffset = 0x01F00000 # Flash addr (0xF8000000)
|
|
SET gBoardModuleTokenSpaceGuid.PcdFlashFvExtendedAdvancedSize = 0x00080000 #
|
|
SET gBoardModuleTokenSpaceGuid.PcdFlashFvExtendedPostMemoryOffset = 0x01F80000 # Flash addr (0xF8800000)
|
|
SET gBoardModuleTokenSpaceGuid.PcdFlashFvExtendedPostMemorySize = 0x00080000 #
|
|
|
|
####
|
|
# Flashmap for 16MB BIOS Region (start from FLASH_BASE + EXTENDED_REGION_SIZE)
|
|
#
|
|
|
|
|
|
|
|
#----------- Flash map is auto generated ---------#
|
|
|
|
|