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