summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Nt32Pkg/PlatformBdsDxe/BdsPlatform.h18
-rw-r--r--Nt32Pkg/PlatformBdsDxe/PlatformData.c69
2 files changed, 87 insertions, 0 deletions
diff --git a/Nt32Pkg/PlatformBdsDxe/BdsPlatform.h b/Nt32Pkg/PlatformBdsDxe/BdsPlatform.h
index d045cfc..b5ab541 100644
--- a/Nt32Pkg/PlatformBdsDxe/BdsPlatform.h
+++ b/Nt32Pkg/PlatformBdsDxe/BdsPlatform.h
@@ -69,6 +69,24 @@ typedef struct {
EFI_DEVICE_PATH_PROTOCOL End;
} NT_PLATFORM_GOP_DEVICE_PATH;
+typedef struct {
+ VENDOR_DEVICE_PATH NtBus;
+ WIN_NT_VENDOR_DEVICE_PATH_NODE NtCpuModelDevice;
+ EFI_DEVICE_PATH_PROTOCOL End;
+} NT_PLATFORM_CPU_MODEL_VIRTUAL_DEVICE_PATH;
+
+typedef struct {
+ VENDOR_DEVICE_PATH NtBus;
+ WIN_NT_VENDOR_DEVICE_PATH_NODE NtCpuSpeedDevice;
+ EFI_DEVICE_PATH_PROTOCOL End;
+} NT_PLATFORM_CPU_SPEED_VIRTUAL_DEVICE_PATH;
+
+typedef struct {
+ VENDOR_DEVICE_PATH NtBus;
+ WIN_NT_VENDOR_DEVICE_PATH_NODE NtMemoryDeivce;
+ EFI_DEVICE_PATH_PROTOCOL End;
+} NT_PLATFORM_MEMORY_VIRTUAL_DEVICE_PATH;
+
//
// Platform BDS Functions
//
diff --git a/Nt32Pkg/PlatformBdsDxe/PlatformData.c b/Nt32Pkg/PlatformBdsDxe/PlatformData.c
index 5b1d7c5..c2beec9 100644
--- a/Nt32Pkg/PlatformBdsDxe/PlatformData.c
+++ b/Nt32Pkg/PlatformBdsDxe/PlatformData.c
@@ -186,6 +186,63 @@ NT_ISA_SERIAL_DEVICE_PATH gNtSerialDevicePath1 = {
gEndEntire
};
+NT_PLATFORM_CPU_MODEL_VIRTUAL_DEVICE_PATH gCpuModelDevicePath = {
+ {
+ HARDWARE_DEVICE_PATH,
+ HW_VENDOR_DP,
+ (UINT8) (sizeof (VENDOR_DEVICE_PATH)),
+ (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8),
+ EFI_WIN_NT_THUNK_PROTOCOL_GUID
+ },
+ {
+ HARDWARE_DEVICE_PATH,
+ HW_VENDOR_DP,
+ (UINT8) (sizeof (WIN_NT_VENDOR_DEVICE_PATH_NODE)),
+ (UINT8) ((sizeof (WIN_NT_VENDOR_DEVICE_PATH_NODE)) >> 8),
+ EFI_WIN_NT_CPU_MODEL_GUID,
+ 0
+ },
+ gEndEntire
+};
+
+NT_PLATFORM_CPU_SPEED_VIRTUAL_DEVICE_PATH gCpuSpeedDevicePath = {
+ {
+ HARDWARE_DEVICE_PATH,
+ HW_VENDOR_DP,
+ (UINT8) (sizeof (VENDOR_DEVICE_PATH)),
+ (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8),
+ EFI_WIN_NT_THUNK_PROTOCOL_GUID
+ },
+ {
+ HARDWARE_DEVICE_PATH,
+ HW_VENDOR_DP,
+ (UINT8) (sizeof (WIN_NT_VENDOR_DEVICE_PATH_NODE)),
+ (UINT8) ((sizeof (WIN_NT_VENDOR_DEVICE_PATH_NODE)) >> 8),
+ EFI_WIN_NT_CPU_SPEED_GUID,
+ 0
+ },
+ gEndEntire
+};
+
+NT_PLATFORM_MEMORY_VIRTUAL_DEVICE_PATH gMemoryDevicePath = {
+ {
+ HARDWARE_DEVICE_PATH,
+ HW_VENDOR_DP,
+ (UINT8) (sizeof (VENDOR_DEVICE_PATH)),
+ (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8),
+ EFI_WIN_NT_THUNK_PROTOCOL_GUID
+ },
+ {
+ HARDWARE_DEVICE_PATH,
+ HW_VENDOR_DP,
+ (UINT8) (sizeof (WIN_NT_VENDOR_DEVICE_PATH_NODE)),
+ (UINT8) ((sizeof (WIN_NT_VENDOR_DEVICE_PATH_NODE)) >> 8),
+ EFI_WIN_NT_MEMORY_GUID,
+ 0
+ },
+ gEndEntire
+};
+
//
// Predefined platform default console device path
//
@@ -215,6 +272,18 @@ BDS_CONSOLE_CONNECT_ENTRY gPlatformConsole[] = {
(CONSOLE_OUT | CONSOLE_IN)
},
{
+ (EFI_DEVICE_PATH_PROTOCOL *) &gCpuModelDevicePath,
+ (CONSOLE_OUT | CONSOLE_IN)
+ },
+ {
+ (EFI_DEVICE_PATH_PROTOCOL *) &gCpuSpeedDevicePath,
+ (CONSOLE_OUT | CONSOLE_IN)
+ },
+ {
+ (EFI_DEVICE_PATH_PROTOCOL *) &gMemoryDevicePath,
+ (CONSOLE_OUT | CONSOLE_IN)
+ },
+ {
NULL,
0
}