## @file
#
#  Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
#  This program and the accompanying materials
#  are licensed and made available under the terms and conditions of the BSD License
#  which accompanies this distribution.  The full text of the license may be found at
#  http://opensource.org/licenses/bsd-license.php
#
#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
##

[Head]
NumOfUpdate = 4
NumOfRecovery = 2
Update0 = QuarkFvMain
Update1 = QuarkFvBinary
Update2 = QuarkFvRecovery
Update3 = QuarkFvNvRam
Recovery0 = QuarkFvMain
Recovery1 = QuarkFvPayload

[QuarkFvPayload]
FirmwareType = 0            # SystemFirmware
AddressType = 0             # 0 - relative address, 1 - absolute address.
BaseAddress = 0x00400000    # Base address offset on flash
Length      = 0x00100000    # Length
ImageOffset = 0x00400000    # Image offset of this SystemFirmware image
FileGuid    = 14D83A59-A810-4556-8192-1C0A593C065C  # PcdEdkiiSystemFirmwareFileGuid

[QuarkFvMain]
FirmwareType = 0            # SystemFirmware
AddressType = 0             # 0 - relative address, 1 - absolute address.
BaseAddress = 0x00500000    # Base address offset on flash
Length      = 0x001E0000    # Length
ImageOffset = 0x00500000    # Image offset of this SystemFirmware image
FileGuid    = 14D83A59-A810-4556-8192-1C0A593C065C  # PcdEdkiiSystemFirmwareFileGuid

[QuarkFvNvRam]
FirmwareType = 1            # NvRam
AddressType = 0             # 0 - relative address, 1 - absolute address.
BaseAddress = 0x006E0000    # Base address offset on flash
Length      = 0x00020000    # Length
ImageOffset = 0x006E0000    # Image offset of this SystemFirmware image
FileGuid    = 14D83A59-A810-4556-8192-1C0A593C065C  # PcdEdkiiSystemFirmwareFileGuid

[QuarkFvBinary]
FirmwareType = 0            # SystemFirmware
AddressType = 0             # 0 - relative address, 1 - absolute address.
BaseAddress = 0x00700000    # Base address offset on flash
Length      = 0x00010000    # Length
ImageOffset = 0x00700000    # Image offset of this SystemFirmware image
FileGuid    = 14D83A59-A810-4556-8192-1C0A593C065C  # PcdEdkiiSystemFirmwareFileGuid

[QuarkFvRecovery]
FirmwareType = 0            # SystemFirmware
AddressType = 0             # 0 - relative address, 1 - absolute address.
BaseAddress = 0x00710000    # Base address offset on flash
Length      = 0x000F0000    # Length
ImageOffset = 0x00710000    # Image offset of this SystemFirmware image
FileGuid    = 14D83A59-A810-4556-8192-1C0A593C065C  # PcdEdkiiSystemFirmwareFileGuid

