stos/amd64: lapic: Add helper to obtain Local APIC ID
Signed-off-by: Chloe M. <chloe@mensia.org>
This commit is contained in:
@@ -236,6 +236,23 @@ MdLapicSendIpi(UCHAR Vector, UCHAR DestId, BOOLEAN LogicalDest,
|
||||
LapicRegWrite(Mcb, LAPIC_ICRLO, ((UQUAD)DestId << 32) | IcrLow);
|
||||
}
|
||||
|
||||
ULONG
|
||||
MdLapicId(VOID)
|
||||
{
|
||||
KPCR *ThisCore;
|
||||
MCB *Mcb;
|
||||
|
||||
ThisCore = HalKpcrCurrent();
|
||||
Mcb = &ThisCore->Mcb;
|
||||
|
||||
/* 32-bit when in x2APIC mode */
|
||||
if (Mcb->HasX2Apic) {
|
||||
return LapicRegRead(Mcb, LAPIC_ID) & 0xFFFFFFFF;
|
||||
}
|
||||
|
||||
return (LapicRegRead(Mcb, LAPIC_ID) >> 24) & 0xF;
|
||||
}
|
||||
|
||||
VOID
|
||||
MdLapicInit(KPCR *Kpcr)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user