// SPDX-License-Identifier: GPL-2.0+ /* * This file's test data is derived from UEFI SCT. * The original copyright is attached below. */ /* * Copyright 2006 - 2016 Unified EFI, Inc.
* Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.
* * This program and the accompanying materials * are licensed and made available under the terms and conditions of the BSD * License which accompanies this distribution. The full text of the license * may be found at * http://opensource.org/licenses/bsd-license.php * * THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, * WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. */ #include #ifdef NOT_USED /* * TODO: These macro's are not used as they appear only in * "#ifdef NOT_USED" clauses. In the future, define them elsewhere. */ /* HII form */ #define EFI_IFR_AND_OP 0x15 #define EFI_IFR_END_OP 0x29 #define EFI_IFR_BITWISE_AND_OP 0x35 /* HII image */ #define EFI_HII_IIBT_END 0x00 #define EFI_HII_IIBT_IMAGE_1BIT 0x10 #endif /* HII keyboard layout */ #define EFI_NULL_MODIFIER 0x0000 u8 packagelist1[] = { // EFI_HII_PACKAGE_LIST_HEADER, length = 20 // SimpleFont, Font, GUID, Form, String, Image, DevicePath, // (74) (110) 20 (8) 78 (67) (8) // KeyboardLayout, End // 192 4 0x89, 0xcd, 0xab, 0x03, 0xf4, 0x03, 0x44, 0x70, 0x81, 0xde, 0x99, 0xb1, 0x81, 0x20, 0xf7, 0x68, //16: guid 0x3a, 0x01, 0x00, 0x00, // 4: total 314(0x13a) #ifdef NOT_USED /* TODO: simple font package not implemented yet */ // // Simple Font Package 1, length = 74 // 0x4A, 0x00, 0x00, EFI_HII_PACKAGE_SIMPLE_FONTS, 1, 0, 1, 0, 0x55, 0x0, 0x1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 0x77, 0x0, 0x2, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, 0, 0, // // Font Package 1, length = 110 // 0x6e, 0x00, 0x00, // 3 EFI_HII_PACKAGE_FONTS, // 1 0x5c, 0x00, 0x00, 0x00, // 4: size of header 0x5c, 0x00, 0x00, 0x00, // 4: offset 0xf1, 0x00, 0xf2, 0x00, 0xf3, 0x00, 0xf4, 0x00, 0xf5, 0x00, 0xec, 0xec, //10+2(pads) 0xff, 0x33, 0xff, 0x44, // 4: font style 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, //64 // // Glyph block 1, length = 18 // EFI_HII_GIBT_GLYPH_DEFAULT, // 1 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x99, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, //16: BitMapData EFI_HII_GIBT_END, // 1 #endif // // Guid Package 1, length = 20 // 0x14, 0x00, 0x00, // 3 EFI_HII_PACKAGE_TYPE_GUID, // 1 0x5a, 0xc9, 0x87, 0x03, 0x3, 0xd7, 0x46, 0x23, 0xb2, 0xab, 0xd0, 0xc7, 0xdd, 0x90, 0x44, 0xf8, //16: guid #ifdef NOT_USED /* TODO: form package not implemented yet */ // // EFI_HII_PACKAGE_FORMS, length = 8 // 0x08, 0x00, 0x00, // 3 EFI_HII_PACKAGE_FORMS, // 1 // // Opcode 1, length = 4 // EFI_IFR_AND_OP, 0x82, EFI_IFR_END_OP, 0x02, // #endif // EFI_HII_PACKAGE_STRINGS, length = 78 // 0x4e, 0x00, 0x00, // 3: length(header) EFI_HII_PACKAGE_STRINGS, // 1: type(header) 0x3c, 0x00, 0x00, 0x00, // 4: header_size 0x3c, 0x00, 0x00, 0x00, // 4: string_offset 0x00, 0x00, 0x11, 0x22, 0x44, 0x55, 0x77, 0x89, //32: language_window 0x11, 0x00, 0x11, 0x22, 0x44, 0x55, 0x87, 0x89, 0x22, 0x00, 0x11, 0x22, 0x44, 0x55, 0x77, 0x89, 0x33, 0x00, 0x11, 0x22, 0x44, 0x55, 0x77, 0x89, 0x01, 0x00, // 2: language name 0x65, 0x6e, 0x2d, 0x55, 0x53, 0x3b, 0x7a, 0x68, //14: language 0x2d, 0x48, 0x61, 0x6e, 0x74, 0x00, // "en-US;zh-Hant" EFI_HII_SIBT_STRING_UCS2, // 1 0x45, 0x00, 0x6E, 0x00, 0x67, 0x00, 0x6C, 0x00, 0x69, 0x00, 0x73, 0x00, 0x68, 0x00, 0x00, 0x00, //16: "English" EFI_HII_SIBT_END, // 1 #ifdef NOT_USED /* TODO: image package not implemented yet */ // // EFI_HII_PACKAGE_IMAGES, length = 67 // 0x43, 0x00, 0x00, // 3 EFI_HII_PACKAGE_IMAGES, // 1 0x0c, 0x00, 0x00, 0x00, // 4: image info offset 0x39, 0x00, 0x00, 0x00, // 4: palette info offset EFI_HII_IIBT_IMAGE_1BIT, // 1 0x01, 0x0b, 0x00, 0x13, 0x00, 0x80, 0x00, 0xc0, 0x00, 0xe0, 0x00, 0xf0, 0x00, 0xf8, 0x00, 0xfc, 0x00, 0xfe, 0x00, 0xff, 0x00, 0xff, 0x80, 0xff, 0xc0, 0xff, 0xe0, 0xfe, 0x00, 0xef, 0x00, 0xcf, 0x00, 0x87, 0x80, 0x07, 0x80, 0x03, 0xc0, 0x03, 0xc0, 0x01, 0x80, //43 EFI_HII_IIBT_END, // 1 0x01, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, //10 // // EFI_HII_PACKAGE_DEVICE_PATH, length = 8 // 0x08, 0x00, 0x00, // 3 EFI_HII_PACKAGE_DEVICE_PATH, // 1 0x01, 0x23, 0x45, 0x66, // 4: dummy device path protocol // instance address #endif // // Keyboard layout package 1, length = 192 0xc0, 0x00, 0x00, // 3: length(header) EFI_HII_PACKAGE_KEYBOARD_LAYOUT, // 1: type(header) 0x02, 0x00, // 2: LayoutCount // // Layout 1, length = 93 // 0x5d, 0x00, // 2: layout_length 0x95, 0xe4, 0x40, 0x8d, 0xaa, 0xe2, 0x6f, 0x4c, 0x89, 0x70, 0x68, 0x85, 0x09, 0xee, 0xc7, 0xd2, //16: guid 0x37, 0x00, 0x00, 0x00, // 4: layout_descriptor_ // string_offset 0x02, // 1: descriptor_count // // Descriptor 1, length = 16 // 49, 0x00, 0x00, 0x00, // 4: key (EfiKeyD1) 'q', 0x00, // 2: unicode 'Q', 0x00, // 2: shifted_unicode 0x00, 0x00, // 2: alt_gr_unicode 0x00, 0x00, // 2: shifted_alt_gr_unicode EFI_NULL_MODIFIER, 0x00, // 2: modifier 0x03, 0x00, // 2: affected_attribute // // Descriptor 2, length = 16 // 50, 0x00, 0x00, 0x00, // 4: key (EfiKeyD2) 'w', 0x00, // 2: unicode 'W', 0x00, // 2: shifted_unicode 0x00, 0x00, // 2: alt_gr_unicode 0x00, 0x00, // 2: shifted_alt_gr_unicode EFI_NULL_MODIFIER, 0x00, // 2: modifier 0x3, 0x0, // 2: affected_attribute // // EFI_DESCRIPTOR_STRING_BUNDLE, length = 38 // 0x01, 0x00, // 2: DescriptionCount 'e', 0x0, 'n', 0x0, '-', 0x0, 'U', 0x0, 'S', 0x0, //10: RFC3066 language code ' ', 0x0, // 2: Space 'S', 0x0, 'i', 0x0, 'm', 0x0, 'p', 0x0, 'l', 0x0, 'e', 0x0, '1', 0x0, 'o', 0x0, 'n', 0x0, 'l', 0x0, 'y', 0x0, '\0', 0x0, //24: DescriptionString // // Layout 2, length = 93 // 0x5d, 0x00, // 2: layout_length 0x3e, 0x0b, 0xe6, 0x2a, 0xd6, 0xb9, 0xd8, 0x49, 0x9a, 0x16, 0xc2, 0x48, 0xf1, 0xeb, 0xa8, 0xdb, //16: guid 0x37, 0x00, 0x00, 0x00, // 4: layout_descriptor_ // string_offset 0x02, // 1 Descriptor count // // Descriptor 1, length = 16 // 51, 0x0, 0x0, 0x0, // 4: key (EfiKeyD3) 'e', 0x00, // 2: unicode 'E', 0x00, // 2: shifted_unicode 0x00, 0x00, // 2: alt_gr_unicode 0x00, 0x00, // 2: shifted_alt_gr_unicode EFI_NULL_MODIFIER, 0x0, // 2: modifier 0x3, 0x0, // 2: affected_attribute // // Descriptor 2, length = 16 // 52, 0x0, 0x0, 0x0, // 4: key (EfiKeyD4) 'r', 0x00, // 2: unicode 'R', 0x00, // 2: shifted_unicode 0x00, 0x00, // 2: alt_gr_unicode 0x00, 0x00, // 2: shifted_alt_gr_unicode EFI_NULL_MODIFIER, 0x0, // 2: modifier 0x3, 0x0, // 2: affected_attribute // // EFI_DESCRIPTOR_STRING_BUNDLE, length = 38 // 0x01, 0x00, // 2: DescriptionCount 'e', 0x0, 'n', 0x0, '-', 0x0, 'U', 0x0, 'S', 0x0, //10: RFC3066 language code ' ', 0x0, // 2: Space 'S', 0x0, 'i', 0x0, 'm', 0x0, 'p', 0x0, 'l', 0x0, 'e', 0x0, '2', 0x0, 'o', 0x0, 'n', 0x0, 'l', 0x0, 'y', 0x0, '\0', 0x0, //24: DescriptionString // // End of package list, length = 4 // 0x4, 0x00, 0x00, EFI_HII_PACKAGE_END }; u8 packagelist2[] = { // EFI_HII_PACKAGE_LIST_HEADER, length = 20 // SimpleFont, Font, GUID, KeyboardLayout, Form, End // (74) (122) 20 192 (8) 4 0xd3, 0xde, 0x85, 0x86, 0xce, 0x1b, 0xf3, 0x43, 0xa2, 0x0c, 0xa3, 0x06, 0xec, 0x69, 0x72, 0xdd, //16 0xec, 0x00, 0x00, 0x00, // 4: total 236(0xec) #ifdef NOT_USED /* TODO: simple font package not implemented yet */ // // Simple Font Package 2, length = 74 // 0x4A, 0x00, 0x00, // 3 EFI_HII_PACKAGE_SIMPLE_FONTS, // 1 1, 0, // 2 1, 0, // 2 0x33, 0x0, 0, 1, 2, 3, 4, 5, 0, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, //22 0x44, 0x0, 0x2, 2, 3, 4, 5, 6, 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, //22 3, 4, 5, 6, 7, 8, 9, 10, 11, 9, 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, 0, 0, //22 // // Font Package 2, length = 122 // 0x7A, 0x00, 0x00, // 3 EFI_HII_PACKAGE_FONTS, // 1 0x5C, 0x00, 0x00, 0x00, // 4: size of header 0x5C, 0x00, 0x00, 0x00, // 4: dummy offset 0xf1, 0x00, 0xf2, 0x00, 0xf3, 0x00, 0xf4, 0x00, 0xf5, 0x00, 0xec, 0xec, //10+2(pads) 0xff, 0x11, 0xff, 0x22, // 4: font style 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, //64 // // Glyph block 1, length = 30 // EFI_HII_GIBT_GLYPH, // 1 0xf1, 0x00, 0xf2, 0x00, 0xf3, 0x00, 0xf4, 0x00, 0xf5, 0x00, //10 0xff, 0x01, // 2 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, //16: BitMapData EFI_HII_GIBT_END, // 1 #endif // // Guid Package 1, length = 20 // 0x14, 0x00, 0x00, // 3 EFI_HII_PACKAGE_TYPE_GUID, // 1 0x5a, 0xc9, 0x87, 0x03, 0x3, 0xd7, 0x46, 0x23, 0xb2, 0xab, 0xd0, 0xc7, 0xdd, 0x90, 0x44, 0xf8, //16: guid // // Keyboard layout package 2, length = 192 0xc0, 0x00, 0x00, // 3 EFI_HII_PACKAGE_KEYBOARD_LAYOUT, // 1 0x02, 0x00, //0xec, 0xec, // 2: LayoutCount // // Layout 1, length = 93 // 0x5d, 0x00, // 2: layout_length 0x1f, 0x6a, 0xf5, 0xe0, 0x6b, 0xdf, 0x7e, 0x4a, 0xa3, 0x9a, 0xe7, 0xa5, 0x19, 0x15, 0x45, 0xd6,//16: guid 0x37, 0x00, 0x00, 0x00, // 4: layout_descriptor // string offset 0x02, // 1: descriptor_count // // Descriptor 1, length = 16 // 32, 0x00, 0x00, 0x00, // 4: key (EfiKeyC1) 'a', 0x00, // 2: unicode 'A', 0x00, // 2: shifted_unicode 0x00, 0x00, // 2: alt_gr_unicode 0x00, 0x00, // 2: shifted_alt_gr_unic EFI_NULL_MODIFIER, 0x00, // 2: modifier 0x03, 0x00, // 2: affected_attribute // // Descriptor 2, length = 16 // 33 /*EfiKeyC2*/, 0x00, 0x00, 0x00, 's', 0x00, 'S', 0x00, 0x00, 0x00, 0x00, 0x00, EFI_NULL_MODIFIER, 0x00, 0x3, 0x0, // // EFI_DESCRIPTOR_STRING_BUNDLE, length = 38 // 0x01, 0x00, // 2: DescriptionCount 'e', 0x0, 'n', 0x0, '-', 0x0, 'U', 0x0, 'S', 0x0, //10: RFC3066 language code ' ', 0x0, // 2: Space 'S', 0x0, 'i', 0x0, 'm', 0x0, 'p', 0x0, 'l', 0x0, 'e', 0x0, '3', 0x0, 'o', 0x0, 'n', 0x0, 'l', 0x0, 'y', 0x0, '\0', 0x0, //24: DescriptionString // // Layout 2, length = 93 // 0x5d, 0x00, // 2: layout_length 0xc9, 0x6a, 0xbe, 0x47, 0xcc, 0x54, 0xf9, 0x46, 0xa2, 0x62, 0xd5, 0x3b, 0x25, 0x6a, 0xc, 0x34, //16: guid 0x37, 0x00, 0x00, 0x00, // 4: layout_descriptor // string_offset 0x02, // 1: descriptor_count // // Descriptor 1, length = 16 // 34 /*EfiKeyC3*/, 0x0, 0x0, 0x0, 'd', 0x00, 'D', 0x00, 0x00, 0x00, 0x00, 0x00, EFI_NULL_MODIFIER, 0x0, 0x3, 0x0, // // Descriptor 2, length = 16 // 35 /*EfiKeyC4*/, 0x0, 0x0, 0x0, 'e', 0x00, 'E', 0x00, 0x00, 0x00, 0x00, 0x00, EFI_NULL_MODIFIER, 0x0, 0x3, 0x0, // // EFI_DESCRIPTOR_STRING_BUNDLE, length = 38 // 0x01, 0x00, // 2: DescriptionCount 'e', 0x0, 'n', 0x0, '-', 0x0, 'U', 0x0, 'S', 0x0, //10: RFC3066 language code ' ', 0x0, // 2: Space 'S', 0x0, 'i', 0x0, 'm', 0x0, 'p', 0x0, 'l', 0x0, 'e', 0x0, '4', 0x0, 'o', 0x0, 'n', 0x0, 'l', 0x0, 'y', 0x0, '\0', 0x0, //24: DescriptionString #ifdef NOT_USED /* TODO: form package not implemented yet */ // // EFI_HII_PACKAGE_FORMS, length = 8 // 0x08, 0x00, 0x00, // 3 EFI_HII_PACKAGE_FORMS, // 1 // // Opcode 1 // EFI_IFR_BITWISE_AND_OP, // 1 0x02, // 1 EFI_IFR_END_OP, // 1 0x02, // 1 #endif // // End of package list, length = 4 // 0x4, 0x00, 0x00, // 3 EFI_HII_PACKAGE_END // 1 }; efi_guid_t packagelist_guid1 = EFI_GUID(0x03abcd89, 0x03f4, 0x7044, 0x81, 0xde, 0x99, 0xb1, 0x81, 0x20, 0xf7, 0x68); efi_guid_t packagelist_guid2 = EFI_GUID(0x8685ded3, 0x1bce, 0x43f3, 0xa2, 0x0c, 0xa3, 0x06, 0xec, 0x69, 0x72, 0xdd); efi_guid_t kb_layout_guid11 = EFI_GUID(0x8d40e495, 0xe2aa, 0x4c6f, 0x89, 0x70, 0x68, 0x85, 0x09, 0xee, 0xc7, 0xd2); efi_guid_t kb_layout_guid12 = EFI_GUID(0x2ae60b3e, 0xb9d6, 0x49d8, 0x9a, 0x16, 0xc2, 0x48, 0xf1, 0xeb, 0xa8, 0xdb); efi_guid_t kb_layout_guid21 = EFI_GUID(0xe0f56a1f, 0xdf6b, 0x4a7e, 0xa3, 0x9a, 0xe7, 0xa5, 0x19, 0x15, 0x45, 0xd6); efi_guid_t kb_layout_guid22 = EFI_GUID(0x47be6ac9, 0x54cc, 0x46f9, 0xa2, 0x62, 0xd5, 0x3b, 0x25, 0x6a, 0x0c, 0x34); efi_guid_t package_guid = EFI_GUID(0x0387c95a, 0xd703, 0x2346, 0xb2, 0xab, 0xd0, 0xc7, 0xdd, 0x90, 0x44, 0xf8);