Пример #1
0
VOID
AcpiPmControl (
  UINTN SuspendType
  )
{
  ASSERT (SuspendType < 6);

  IoAndThenOr16 (0x404, (UINT16) ~0x3c00, (UINT16) (SuspendType << 10));
  IoOr16 (0x404, BIT13);
  CpuDeadLoop ();
}
Пример #2
0
VOID
AcpiPmControl (
  UINTN SuspendType
  )
{
	EFI_HOB_GUID_TYPE  *GuidHob;
	ACPI_BOARD_INFO    *pAcpiBoardInfo;	
	UINTN PmCtrlReg = 0;
	
  ASSERT (SuspendType <= 7);  
  //
	// Find the acpi board information guid hob
	//
	GuidHob = GetFirstGuidHob (&gUefiAcpiBoardInfoGuid);
	ASSERT (GuidHob != NULL);
  pAcpiBoardInfo = (ACPI_BOARD_INFO *)GET_GUID_HOB_DATA (GuidHob); 
  
  PmCtrlReg = (UINTN)pAcpiBoardInfo->PmCtrlRegBase; 
  IoAndThenOr16 (PmCtrlReg, (UINT16) ~0x3c00, (UINT16) (SuspendType << 10));
  IoOr16 (PmCtrlReg, BIT13);
  CpuDeadLoop ();
}