/* Write value to PCI Address 'offset' */
int    writel(UINT32 value, UINT32 offset)
{
    PCI_WRITE(offset,0x0, value);
    return 0;
}
Esempio n. 2
0
--*/

#include <Library/EfiRegTableLib.h>
#include "PlatformDxe.h"
extern EFI_PLATFORM_INFO_HOB      mPlatformInfo;

#define R_EFI_PCI_SVID 0x2C

EFI_REG_TABLE mSubsystemIdRegs [] = {

  //
  // Program SVID and SID for PCI devices.
  // Combine two 16 bit PCI_WRITE into one 32 bit PCI_WRITE in order to boost performance
  //
  PCI_WRITE (
      MC_BUS, MC_DEV, MC_FUN, R_EFI_PCI_SVID, EfiPciWidthUint32,
      V_PCH_DEFAULT_SVID_SID, OPCODE_FLAG_S3SAVE
    ),

  PCI_WRITE (
      IGD_BUS, IGD_DEV, IGD_FUN_0, R_EFI_PCI_SVID, EfiPciWidthUint32,
      V_PCH_DEFAULT_SVID_SID, OPCODE_FLAG_S3SAVE
    ),

  PCI_WRITE(
      DEFAULT_PCI_BUS_NUMBER_PCH, 0, 0, R_EFI_PCI_SVID, EfiPciWidthUint32,
      V_PCH_DEFAULT_SVID_SID, OPCODE_FLAG_S3SAVE
    ),
  PCI_WRITE (
      DEFAULT_PCI_BUS_NUMBER_PCH, PCI_DEVICE_NUMBER_PCH_LPC, PCI_FUNCTION_NUMBER_PCH_LPC, R_PCH_LPC_SS, EfiPciWidthUint32,
      V_PCH_DEFAULT_SVID_SID, OPCODE_FLAG_S3SAVE
    ),