+++ /dev/null
-/*++\r
-\r
-Copyright (c) 2006, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
-\r
-Module Name:\r
-\r
- MiscBiosLanguageData.c\r
- \r
-Abstract: \r
-\r
- This driver parses the mMiscSubclassDataTable structure and reports\r
- any generated data to the DataHub.\r
-\r
---*/\r
-\r
-#include "MiscSubclassDriver.h"\r
-\r
-//\r
-// Static (possibly build generated) Bios Vendor data.\r
-//\r
-MISC_SUBCLASS_TABLE_DATA(EFI_MISC_NUMBER_OF_INSTALLABLE_LANGUAGES_DATA, NumberOfInstallableLangauges) = {\r
- 1, // NumberOfInstallableLanguages\r
- { // LanguageFlags\r
- 0, // AbbreviatedLanguageFormat\r
- 0 // Reserved\r
- },\r
- 0 // CurrentLanguageNumber\r
-};\r
-\r
-//\r
-//\r
-//\r
-MISC_SUBCLASS_TABLE_DATA(EFI_MISC_SYSTEM_LANGUAGE_STRING_DATA, SystemLanguageString) = {\r
- 0, // LanguageId\r
- STR_MISC_SYSTEM_LANGUAGE_STRING // SystemLanguageString\r
-};\r
-\r
-/* eof - MiscBiosLanguageData.c */\r
+++ /dev/null
-/*++\r
-\r
-Copyright (c) 2006, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
-\r
-Module Name:\r
-\r
- MiscOnboardDeviceData.c\r
- \r
-Abstract: \r
-\r
- This driver parses the mMiscSubclassDataTable structure and reports\r
- any generated data to the DataHub.\r
-\r
---*/\r
-\r
-#include "MiscSubclassDriver.h"\r
-\r
-//\r
-// Static (possibly build generated) Bios Vendor data.\r
-//\r
-MISC_SUBCLASS_TABLE_DATA(EFI_MISC_ONBOARD_DEVICE_DATA, MiscOnboardDevice) = {\r
- STRING_TOKEN(STR_MISC_ONBOARD_DEVICE_DESCRIPTION), // OnBoardDeviceDescription\r
- { // OnBoardDeviceStatus\r
- EfiOnBoardDeviceTypeOther, // DeviceType\r
- 0, // DeviceEnabled\r
- 0 // Reserved\r
- },\r
- 0 // OnBoardDevicePath\r
-};\r
+++ /dev/null
-/*++\r
-\r
-Copyright (c) 2006, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
-\r
-Module Name:\r
-\r
- MiscOnboardDeviceFunction.c\r
- \r
-Abstract: \r
-\r
- Onboard device information boot time changes.\r
- Misc. subclass type 8.\r
- SMBIOS type 10.\r
-\r
---*/\r
-\r
-#include "MiscSubclassDriver.h"\r
-#include "winntio/winntio.h"\r
-#include "winntthunk/winntthunk.h"\r
-\r
-#pragma pack(1)\r
-\r
-typedef struct _VENDOR_DEVICE {\r
- EFI_DEVICE_PATH_PROTOCOL Platform;\r
- EFI_GUID PlatformGuid;\r
- EFI_DEVICE_PATH_PROTOCOL Device;\r
- EFI_GUID DeviceGuid;\r
- UINT8 DeviceData[4];\r
- EFI_DEVICE_PATH_PROTOCOL End;\r
-\r
-} VENDOR_DEVICE;\r
-#pragma pack()\r
-\r
-MISC_SUBCLASS_TABLE_FUNCTION (\r
- MiscOnboardDeviceVideo\r
- )\r
-/*++\r
-Description:\r
-\r
- This function makes boot time changes to the contents of the\r
- MiscOnboardDevice structure.\r
-\r
-Parameters:\r
-\r
- RecordType\r
- Type of record to be processed from the Data Table.\r
- mMiscSubclassDataTable[].RecordType\r
-\r
- RecordLen\r
- Size of static RecordData from the Data Table.\r
- mMiscSubclassDataTable[].RecordLen\r
-\r
- RecordData\r
- Pointer to copy of RecordData from the Data Table. Changes made\r
- to this copy will be written to the Data Hub but will not alter\r
- the contents of the static Data Table.\r
-\r
- LogRecordData\r
- Set *LogRecordData to TRUE to log RecordData to Data Hub.\r
- Set *LogRecordData to FALSE when there is no more data to log.\r
-\r
-Returns:\r
-\r
- EFI_SUCCESS\r
- All parameters were valid and *RecordData and *LogRecordData have\r
- been set.\r
-\r
- EFI_UNSUPPORTED\r
- Unexpected RecordType value.\r
-\r
- EFI_INVALID_PARAMETER\r
- One of the following parameter conditions was true:\r
- RecordLen was zero.\r
- RecordData was NULL.\r
- LogRecordData was NULL.\r
---*/\r
-{\r
- STATIC VENDOR_DEVICE mVideoDevicePath = {\r
- {\r
- HARDWARE_DEVICE_PATH,\r
- HW_VENDOR_DP,\r
- 0x14\r
- },\r
- EFI_WIN_NT_THUNK_PROTOCOL_GUID,\r
- {\r
- HARDWARE_DEVICE_PATH,\r
- HW_VENDOR_DP,\r
- 0x18\r
- },\r
- EFI_WIN_NT_UGA_GUID,\r
- 0,\r
- 0,\r
- 0,\r
- 0,\r
- END\r
- };\r
-\r
- STATIC BOOLEAN Done = FALSE;\r
-\r
- //\r
- // First check for invalid parameters.\r
- //\r
- if (RecordLen == 0 || RecordData == NULL || LogRecordData == NULL) {\r
- return EFI_INVALID_PARAMETER;\r
- }\r
- //\r
- // Then check for unsupported RecordType.\r
- //\r
- if (RecordType != EFI_MISC_ONBOARD_DEVICE_DATA_RECORD_NUMBER) {\r
- return EFI_UNSUPPORTED;\r
- }\r
- //\r
- // Is this the first time through this function?\r
- //\r
- if (!Done) {\r
- //\r
- // Yes, this is the first time. Inspect/Change the contents of the\r
- // RecordData structure.\r
- //\r
- //\r
- // Any time changes?\r
- //\r
- // %%TBD\r
- //\r
- // Set Done flag to TRUE for next pass through this function.\r
- // Set *LogRecordData to TRUE so data will get logged to Data Hub.\r
- //\r
- switch (((EFI_MISC_ONBOARD_DEVICE_DATA *) RecordData)->OnBoardDeviceDescription) {\r
- case STR_MISC_ONBOARD_DEVICE_VIDEO_DESCRIPTION:\r
- {\r
- CopyMem (\r
- &((EFI_MISC_ONBOARD_DEVICE_DATA *) RecordData)->OnBoardDevicePath,\r
- &mVideoDevicePath,\r
- GetDevicePathSize ((EFI_DEVICE_PATH_PROTOCOL *) &mVideoDevicePath)\r
- );\r
- *RecordLen = *RecordLen - sizeof (EFI_DEVICE_PATH_PROTOCOL) + GetDevicePathSize ((EFI_DEVICE_PATH_PROTOCOL *) &mVideoDevicePath);\r
- }\r
- break;\r
- }\r
-\r
- Done = TRUE;\r
- *LogRecordData = TRUE;\r
- } else {\r
- //\r
- // No, this is the second time. Reset the state of the Done flag\r
- // to FALSE and tell the data logger that there is no more data\r
- // to be logged for this record type. If any memory allocations\r
- // were made by earlier passes, they must be released now.\r
- //\r
- Done = FALSE;\r
- *LogRecordData = FALSE;\r
- }\r
-\r
- return EFI_SUCCESS;\r
-}\r
-\r
-/* eof - MiscOnboardDeviceFunction.c */\r