xref: /reactos/hal/halx86/generic/sysinfo.c (revision c2c66aff)
1 /*
2  * PROJECT:         ReactOS HAL
3  * LICENSE:         GPL - See COPYING in the top level directory
4  * FILE:            hal/halx86/generic/sysinfo.c
5  * PURPOSE:         HAL Information Routines
6  * PROGRAMMERS:     Alex Ionescu (alex.ionescu@reactos.org)
7  */
8 
9 /* INCLUDES *******************************************************************/
10 
11 #include <hal.h>
12 #define NDEBUG
13 #include <debug.h>
14 
15 /* FUNCTIONS ******************************************************************/
16 
17 NTSTATUS
18 NTAPI
19 HaliQuerySystemInformation(IN HAL_QUERY_INFORMATION_CLASS InformationClass,
20                            IN ULONG BufferSize,
21                            IN OUT PVOID Buffer,
22                            OUT PULONG ReturnedLength)
23 {
24 #define REPORT_THIS_CASE(X) case X: DPRINT1("Unhandled case: %s\n", #X); break
25 	switch (InformationClass)
26 	{
27 		REPORT_THIS_CASE(HalInstalledBusInformation);
28 		REPORT_THIS_CASE(HalProfileSourceInformation);
29 		REPORT_THIS_CASE(HalInformationClassUnused1);
30 		REPORT_THIS_CASE(HalPowerInformation);
31 		REPORT_THIS_CASE(HalProcessorSpeedInformation);
32 		REPORT_THIS_CASE(HalCallbackInformation);
33 		REPORT_THIS_CASE(HalMapRegisterInformation);
34 		REPORT_THIS_CASE(HalMcaLogInformation);
35 		case HalFrameBufferCachingInformation:
36 		{
37             /* FIXME: TODO */
38             return STATUS_NOT_IMPLEMENTED;
39 		}
40 		REPORT_THIS_CASE(HalDisplayBiosInformation);
41 		REPORT_THIS_CASE(HalProcessorFeatureInformation);
42 		REPORT_THIS_CASE(HalNumaTopologyInterface);
43 		REPORT_THIS_CASE(HalErrorInformation);
44 		REPORT_THIS_CASE(HalCmcLogInformation);
45 		REPORT_THIS_CASE(HalCpeLogInformation);
46 		REPORT_THIS_CASE(HalQueryMcaInterface);
47 		REPORT_THIS_CASE(HalQueryAMLIIllegalIOPortAddresses);
48 		REPORT_THIS_CASE(HalQueryMaxHotPlugMemoryAddress);
49 		REPORT_THIS_CASE(HalPartitionIpiInterface);
50 		REPORT_THIS_CASE(HalPlatformInformation);
51 		REPORT_THIS_CASE(HalQueryProfileSourceList);
52 		REPORT_THIS_CASE(HalInitLogInformation);
53 		REPORT_THIS_CASE(HalFrequencyInformation);
54 		REPORT_THIS_CASE(HalProcessorBrandString);
55 		REPORT_THIS_CASE(HalHypervisorInformation);
56 		REPORT_THIS_CASE(HalPlatformTimerInformation);
57 		REPORT_THIS_CASE(HalAcpiAuditInformation);
58 	}
59 #undef REPORT_THIS_CASE
60 
61 	UNIMPLEMENTED;
62 	return STATUS_NOT_IMPLEMENTED;
63 }
64 
65 NTSTATUS
66 NTAPI
67 HaliSetSystemInformation(IN HAL_SET_INFORMATION_CLASS InformationClass,
68                          IN ULONG BufferSize,
69                          IN OUT PVOID Buffer)
70 {
71     UNIMPLEMENTED;
72     return STATUS_NOT_IMPLEMENTED;
73 }
74