HalpAcpiInitializePmRegisters

NTSTATUS __stdcall HalpAcpiInitializePmRegisters(_FADT *Fadt){
  if( Fadt->Header.Revision >= 5u && (Fadt->flags & 0x100000) != 0 )
    return -1073741637;
  if( HalpAcpiSetupPmRegisterLegacy(
         (__int64)Fadt,
         Fadt->pm1a_evt_blk_io_port,
         (__int64)&Fadt->x_pm1a_evt_blk,
         Fadt->pm1_evt_len,
         2u,
         (__int64)&CmpDummyThreadEvent + 4992) < 0 )
    KeBugCheckEx(0x5Cu, (PVOID)0x8200, 0i64, "minkernel\\hals\\lib\\acpi\\pmregs.c", (PVOID)0xC2);
  if( HalpAcpiSetupPmRegisterLegacy(
         (__int64)Fadt,
         Fadt->pm1a_ctrl_blk_io_port,
         (__int64)&Fadt->x_pm1a_ctrl_blk,
         Fadt->pm1_ctrl_len,
         2u,
         (__int64)&CmpDummyThreadEvent + 5040) < 0 )
    KeBugCheckEx(0x5Cu, (PVOID)0x8200, (PVOID)1, "minkernel\\hals\\lib\\acpi\\pmregs.c", (PVOID)0xD1);
  HalpAcpiSetupPmRegisterLegacy(
    (__int64)Fadt,
    Fadt->pm_tmr_blk_io_port,
    (__int64)&Fadt->x_pm_tmr_blk,
    Fadt->pm_tmr_len,
    4u,
    (__int64)&CmpDummyThreadEvent + 5088);
  HalpAcpiSetupPmRegisterLegacy(
    (__int64)Fadt,
    Fadt->pm1b_evt_blk_io_port,
    (__int64)&Fadt->x_pm1b_evt_blk,
    Fadt->pm1_evt_len,
    2u,
    (__int64)&CmpDummyThreadEvent + 5136);
  HalpAcpiSetupPmRegisterLegacy(
    (__int64)Fadt,
    Fadt->pm1b_ctrl_blk_io_port,
    (__int64)&Fadt->x_pm1b_ctrl_blk,
    Fadt->pm1_ctrl_len,
    2u,
    (__int64)&CmpDummyThreadEvent + 5184);
  HalpAcpiSetupPmRegisterLegacy(
    (__int64)Fadt,
    Fadt->pm2_ctrl_blk_io_port,
    (__int64)&Fadt->x_pm2_ctrl_blk,
    Fadt->pm2_ctrl_len,
    1u,
    (__int64)&CmpDummyThreadEvent + 5232);
  if( Fadt->Header.Revision > 1u && (Fadt->flags & 0x400) != 0 )
    HalpAcpiSetupPmRegister(1ui64, 1ui64, (INT64)&Fadt->reset_reg, (INT64)&CmpDummyThreadEvent + 5376);
  HalpAcpiSetupPmRegisterLegacy(
    (__int64)Fadt,
    Fadt->gp0_blk_io_port,
    (__int64)&Fadt->x_gp0_blk,
    Fadt->gp0_blk_len,
    1u,
    (__int64)&CmpDummyThreadEvent + 5280);
  return HalpAcpiSetupPmRegisterLegacy(
           (__int64)Fadt,
           Fadt->gp1_blk_io_port,
           (__int64)&Fadt->x_gp1_blk,
           Fadt->gp1_blk_len,
           1u,
           (__int64)&CmpDummyThreadEvent + 5328);
}

Referenced by:

HalpSetupAcpiPhase0