Remove micro definition for smbios version, instead we use a PCD value to let user customize smbios version better.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9893 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
li-elvin 2010-02-01 02:54:22 +00:00
parent 3507ab19e4
commit 9f7d5b46aa
4 changed files with 18 additions and 13 deletions

View File

@ -342,6 +342,9 @@
# BIT0 set indicates 4KB alignment # BIT0 set indicates 4KB alignment
# BIT1 set indicates 8KB alignment # BIT1 set indicates 8KB alignment
gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSystemPageSize|0x1|UINT32|0x10000047 gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSystemPageSize|0x1|UINT32|0x10000047
## Smbios version
gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0206|UINT16|0x00010055
[PcdsFixedAtBuild,PcdsPatchableInModule] [PcdsFixedAtBuild,PcdsPatchableInModule]
## Maximun number of performance log entries during PEI phase. ## Maximun number of performance log entries during PEI phase.

View File

@ -2,7 +2,7 @@
This code produces the Smbios protocol. It also responsible for constructing This code produces the Smbios protocol. It also responsible for constructing
SMBIOS table into system table. SMBIOS table into system table.
Copyright (c) 2009, Intel Corporation Copyright (c) 2009 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License 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 which accompanies this distribution. The full text of the license may be found at
@ -45,13 +45,13 @@ SMBIOS_TABLE_ENTRY_POINT EntryPointStructureData = {
// //
0x1f, 0x1f,
// //
// MajorVersion: 2 (Version 2.4) // MajorVersion
// //
0x02, (UINT8) (FixedPcdGet16 (PcdSmbiosVersion) >> 8),
// //
// MinorVersion: 4 (Version 2.4) // MinorVersion
// //
0x04, (UINT8) (FixedPcdGet16 (PcdSmbiosVersion) & 0x00ff),
// //
// MaxStructureSize, TO BE FILLED // MaxStructureSize, TO BE FILLED
// //
@ -997,8 +997,8 @@ SmbiosDriverEntryPoint (
mPrivateData.Smbios.UpdateString = SmbiosUpdateString; mPrivateData.Smbios.UpdateString = SmbiosUpdateString;
mPrivateData.Smbios.Remove = SmbiosRemove; mPrivateData.Smbios.Remove = SmbiosRemove;
mPrivateData.Smbios.GetNext = SmbiosGetNext; mPrivateData.Smbios.GetNext = SmbiosGetNext;
mPrivateData.Smbios.MajorVersion = SMBIOS_MAJOR_VERSION; mPrivateData.Smbios.MajorVersion = (UINT8) (FixedPcdGet16 (PcdSmbiosVersion) >> 8);
mPrivateData.Smbios.MinorVersion = SMBIOS_MINOR_VERSION; mPrivateData.Smbios.MinorVersion = (UINT8) (FixedPcdGet16 (PcdSmbiosVersion) & 0x00ff);
InitializeListHead (&mPrivateData.DataListHead); InitializeListHead (&mPrivateData.DataListHead);
InitializeListHead (&mPrivateData.AllocatedHandleListHead); InitializeListHead (&mPrivateData.AllocatedHandleListHead);

View File

@ -1,7 +1,7 @@
/** @file /** @file
This code supports the implementation of the Smbios protocol This code supports the implementation of the Smbios protocol
Copyright (c) 2009, Intel Corporation Copyright (c) 2009 - 2010, Intel Corporation
All rights reserved. This program and the accompanying materials All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License 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 which accompanies this distribution. The full text of the license may be found at
@ -29,10 +29,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include <Library/BaseMemoryLib.h> #include <Library/BaseMemoryLib.h>
#include <Library/MemoryAllocationLib.h> #include <Library/MemoryAllocationLib.h>
#include <Library/UefiBootServicesTableLib.h> #include <Library/UefiBootServicesTableLib.h>
#include <Library/PcdLib.h>
#define SMBIOS_MAJOR_VERSION 2
#define SMBIOS_MINOR_VERSION 4
#define SMBIOS_INSTANCE_SIGNATURE SIGNATURE_32 ('S', 'B', 'i', 's') #define SMBIOS_INSTANCE_SIGNATURE SIGNATURE_32 ('S', 'B', 'i', 's')
typedef struct { typedef struct {

View File

@ -2,7 +2,7 @@
# Component description file for Smbios module. # Component description file for Smbios module.
# #
# This driver initializes and installs the SMBIOS protocol. # This driver initializes and installs the SMBIOS protocol.
# Copyright (c) 2009, Intel Corporation # Copyright (c) 2009 - 2010, Intel Corporation
# #
# All rights reserved. This program and the accompanying materials # All rights reserved. This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License # are licensed and made available under the terms and conditions of the BSD License
@ -37,6 +37,7 @@
[Packages] [Packages]
MdePkg/MdePkg.dec MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
[LibraryClasses] [LibraryClasses]
UefiBootServicesTableLib UefiBootServicesTableLib
@ -46,6 +47,7 @@
UefiLib UefiLib
UefiDriverEntryPoint UefiDriverEntryPoint
DebugLib DebugLib
PcdLib
[Protocols] [Protocols]
gEfiSmbiosProtocolGuid # PROTOCOL ALWAYS_PRODUCED gEfiSmbiosProtocolGuid # PROTOCOL ALWAYS_PRODUCED
@ -54,5 +56,8 @@
gEfiEventReadyToBootGuid # PROTOCOL ALWAYS_CONSUMED gEfiEventReadyToBootGuid # PROTOCOL ALWAYS_CONSUMED
gEfiSmbiosTableGuid # PROTOCOL ALWAYS_CONSUMED gEfiSmbiosTableGuid # PROTOCOL ALWAYS_CONSUMED
[FixedPcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion
[Depex] [Depex]
TRUE TRUE