1 /* 2 * PROJECT: ReactOS Kernel 3 * LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later) 4 * PURPOSE: Source File for MPS specific functions 5 * COPYRIGHT: Copyright 2021 Justin Miller <justinmiller100@gmail.com> 6 */ 7 8 /* INCLUDES *******************************************************************/ 9 10 #include <hal.h> 11 #include <smp.h> 12 13 #define NDEBUG 14 #include <debug.h> 15 16 /* GLOBALS ********************************************************************/ 17 18 static // TODO: While HalpParseApicTables() is UNIMPLEMENTED. 19 ULONG PhysicalProcessorCount; 20 21 static PROCESSOR_IDENTITY HalpStaticProcessorIdentity[MAXIMUM_PROCESSORS]; 22 const PPROCESSOR_IDENTITY HalpProcessorIdentity = HalpStaticProcessorIdentity; 23 24 /* FUNCTIONS ******************************************************************/ 25 26 VOID 27 HalpParseApicTables( 28 _In_ PLOADER_PARAMETER_BLOCK LoaderBlock) 29 { 30 UNREFERENCED_PARAMETER(LoaderBlock); 31 32 // TODO: Fill HalpStaticProcessorIdentity[]. 33 UNIMPLEMENTED; 34 } 35 36 VOID 37 HalpPrintApicTables(VOID) 38 { 39 #if DBG 40 ULONG i; 41 42 DPRINT1("Physical processor count: %lu\n", PhysicalProcessorCount); 43 for (i = 0; i < PhysicalProcessorCount; i++) 44 { 45 DPRINT1(" Processor %lu: ProcessorId %u, LapicId %u, ProcessorStarted %u, BSPCheck %u, ProcessorPrcb %p\n", 46 i, 47 HalpProcessorIdentity[i].ProcessorId, 48 HalpProcessorIdentity[i].LapicId, 49 HalpProcessorIdentity[i].ProcessorStarted, 50 HalpProcessorIdentity[i].BSPCheck, 51 HalpProcessorIdentity[i].ProcessorPrcb); 52 } 53 #endif 54 } 55