## @file
# Misc Sub class driver
#
# Parses the MiscSubclassDataTable and reports any generated data to the DataHub.
#  All .uni file who tagged with "ToolCode="DUMMY"" in following file list is included by
#  MiscSubclassDriver.uni file, the StrGather tool will expand MiscSubclassDriver.uni file 
#  and parse all .uni file.
# Copyright (c) 2006 - 2010, Intel Corporation
#
#  All rights reserved. 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.
#
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = MiscSubclass
  FILE_GUID                      = f2fbd108-8985-11db-b06a-0040d02b1835
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = MiscSubclassDriverEntryPoint

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
#

[Sources]
  MiscBaseBoardManufacturer.uni
  MiscBaseBoardManufacturerData.c
  MiscBaseBoardManufacturerFunction.c
  MiscBiosVendor.uni
  MiscBiosVendorData.c
  MiscBiosVendorFunction.c
  MiscBootInformationData.c  
  MiscBootInformationFunction.c
  MiscChassisManufacturer.uni
  MiscChassisManufacturerData.c
  MiscChassisManufacturerFunction.c
  MiscNumberOfInstallableLanguagesData.c
  MiscNumberOfInstallableLanguagesFunction.c
  MiscOemString.uni  
  MiscOemStringData.c  
  MiscOemStringFunction.c  
  MiscPortInternalConnectorDesignator.uni
  MiscPortInternalConnectorDesignatorData.c  
  MiscPortInternalConnectorDesignatorFunction.c
  MiscResetCapabilitiesData.c
  MiscResetCapabilitiesFunction.c
  MiscSystemLanguageString.uni
  MiscSystemLanguageStringData.c
  MiscSystemLanguageStringFunction.c
  MiscSystemManufacturer.uni
  MiscSystemManufacturerData.c
  MiscSystemManufacturerFunction.c
  MiscSystemOptionString.uni
  MiscSystemOptionStringData.c
  MiscSystemOptionStringFunction.c
  MiscSystemSlotDesignation.uni
  MiscSystemSlotDesignationData.c
  MiscSystemSlotDesignationFunction.c
  MiscDevicePath.h
  MiscSubClassDriver.h
  MiscSubClassDriver.uni
  MiscSubclassDriverDataTable.c
  MiscSubclassDriverEntryPoint.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  IntelFrameworkPkg/IntelFrameworkPkg.dec
  UnixPkg/UnixPkg.dec

[LibraryClasses]
  DevicePathLib
  UefiBootServicesTableLib
  MemoryAllocationLib
  BaseMemoryLib
  UefiDriverEntryPoint
  UefiLib
  HiiLib
  DebugLib
  BaseLib
  PcdLib

[Protocols]
  gEfiUnixIoProtocolGuid                        # PROTOCOL_NOTIFY SOMETIMES_CONSUMED
  gEfiSmbiosProtocolGuid                        # PROTOCOL ALWAYS_CONSUMED

[Pcd]
  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareReleaseDateString
  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString
  gEfiUnixPkgTokenSpaceGuid.PcdUnixMemorySize
  gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang

[Depex]
  gEfiSmbiosProtocolGuid
