Home | History | Annotate | Download | only in HiiDatabaseDxe

Lines Matching refs:Package

30                                  package list

98 // Insert the Package List node to Package List link of the whole database.
146 @param PackageInstance Points to the package referred to by the
148 @param PackageType Package type
149 @param Handle The handle of the package list which contains the
150 specified package.
168 EFI_HII_PACKAGE_HEADER *Package;
186 Package = NULL;
189 // Convert the incoming package from hii database storage format to UEFI
194 Package = (EFI_HII_PACKAGE_HEADER *) (((HII_GUID_PACKAGE_INSTANCE *) PackageInstance)->GuidPkg);
211 Package = (EFI_HII_PACKAGE_HEADER *) Buffer;
215 Package = (EFI_HII_PACKAGE_HEADER *) (((HII_KEYBOARD_LAYOUT_PACKAGE_INSTANCE *) PackageInstance)->KeyboardPkg);
233 Package = (EFI_HII_PACKAGE_HEADER *) Buffer;
251 Package = (EFI_HII_PACKAGE_HEADER *) Buffer;
294 Package = (EFI_HII_PACKAGE_HEADER *) Buffer;
306 Package = (EFI_HII_PACKAGE_HEADER *) Buffer;
310 Package = (EFI_HII_PACKAGE_HEADER *) PackageInstance;
324 // Check in case PackageGuid is not NULL when Package is GUID package
335 Package,
351 This function insert a GUID package to a package list node.
354 @param PackageHdr Pointer to a buffer stored with GUID package
357 @param PackageList Pointer to a package list which will be inserted
359 @param Package Created GUID package
361 @retval EFI_SUCCESS Guid Package is inserted successfully.
363 Guid package.
372 OUT HII_GUID_PACKAGE_INSTANCE **Package
385 // Create a GUID package node
400 *Package = GuidPackage;
415 @param Handle Identification of a package list.
416 @param PackageList Pointer to a package list which will be exported.
421 package list.
479 This function deletes all GUID packages from a package list node.
483 @param Handle Handle of the package list which contains the to
485 @param PackageList Pointer to a package list that contains removing
488 Package(s) is deleted successfully.
500 HII_GUID_PACKAGE_INSTANCE *Package;
507 Package = CR (
516 (VOID *) Package,
524 RemoveEntryList (&Package->GuidEntry);
525 CopyMem (&PackageHeader, Package->GuidPkg, sizeof (EFI_HII_PACKAGE_HEADER));
527 FreePool (Package->GuidPkg);
528 FreePool (Package);
536 This function insert a Form package to a package list node.
539 @param PackageHdr Pointer to a buffer stored with Form package
542 @param PackageList Pointer to a package list which will be inserted
544 @param Package Created Form package
546 @retval EFI_SUCCESS Form Package is inserted successfully.
548 Form package.
557 OUT HII_IFR_PACKAGE_INSTANCE **Package
568 // Get the length of the package, including package header itself
573 // Create a Form package node
588 // Copy Package Header
602 *Package = FormPackage;
616 @param Handle Identification of a package list.
617 @param PackageList Pointer to a package list which will be exported.
622 package list.
674 // Copy the Form package content.
695 This function deletes all Form packages from a package list node.
699 @param Handle Handle of the package list which contains the to
701 @param PackageList Pointer to a package list that contains removing
704 @retval EFI_SUCCESS Form Package(s) is deleted successfully.
716 HII_IFR_PACKAGE_INSTANCE *Package;
722 Package = CR (
731 (VOID *) Package,
739 RemoveEntryList (&Package->IfrEntry);
740 PackageList->PackageListHdr.PackageLength -= Package->FormPkgHdr.Length;
741 FreePool (Package->IfrData);
742 FreePool (Package);
761 This function insert a String package to a package list node.
765 @param PackageHdr Pointer to a buffer stored with String package
768 @param PackageList Pointer to a package list which will be inserted
770 @param Package Created String package
772 @retval EFI_SUCCESS String Package is inserted successfully.
774 String package.
776 @retval EFI_UNSUPPORTED A string package with the same language already
777 exists in current package list.
786 OUT HII_STRING_PACKAGE_INSTANCE **Package
827 // Create a String package node
852 // Copy the String package header.
874 // Insert to String package array
877 *Package = StringPackage;
901 Adjust all string packages in a single package list to have the same max string ID.
903 @param PackageList Pointer to a package list which will be adjusted.
983 @param Handle Identification of a package list.
984 @param PackageList Pointer to a package list which will be exported.
989 package list.
1038 // Copy String package header
1061 This function deletes all String packages from a package list node.
1065 @param Handle Handle of the package list which contains the to
1067 @param PackageList Pointer to a package list that contains removing
1070 @retval EFI_SUCCESS String Package(s) is deleted successfully.
1082 HII_STRING_PACKAGE_INSTANCE *Package;
1089 Package = CR (
1098 (VOID *) Package,
1106 RemoveEntryList (&Package->StringEntry);
1107 PackageList->PackageListHdr.PackageLength -= Package->StringPkgHdr->Header.Length;
1108 FreePool (Package->StringBlock);
1109 FreePool (Package->StringPkgHdr);
1113 while (!IsListEmpty (&Package->FontInfoList)) {
1115 Package->FontInfoList.ForwardLink,
1124 FreePool (Package);
1132 This function insert a Font package to a package list node.
1136 @param PackageHdr Pointer to a buffer stored with Font package
1139 @param PackageList Pointer to a package list which will be inserted
1141 @param Package Created Font package
1143 @retval EFI_SUCCESS Font Package is inserted successfully.
1145 Font package.
1147 @retval EFI_UNSUPPORTED A font package with same EFI_FONT_INFO already
1157 OUT HII_FONT_PACKAGE_INSTANCE **Package
1208 // Create a Font package node
1235 // This font package describes an unique EFI_FONT_INFO. Backup it in global
1250 // Insert this font package to Font package array
1253 *Package = FontPackage;
1289 @param Handle Identification of a package list.
1290 @param PackageList Pointer to a package list which will be exported.
1295 package list.
1315 HII_FONT_PACKAGE_INSTANCE *Package;
1330 Package = CR (Link, HII_FONT_PACKAGE_INSTANCE, FontEntry, HII_FONT_PACKAGE_SIGNATURE);
1331 PackageLength += Package->FontPkgHdr->Header.Length;
1339 (VOID *) Package,
1345 // Copy Font package header
1347 CopyMem (Buffer, Package->FontPkgHdr, Package->FontPkgHdr->HdrSize);
1348 Buffer = (UINT8 *) Buffer + Package->FontPkgHdr->HdrSize;
1355 Package->GlyphBlock,
1356 Package->FontPkgHdr->Header.Length - Package->FontPkgHdr->HdrSize
1358 Buffer = (UINT8 *) Buffer + Package->FontPkgHdr->Header.Length - Package->FontPkgHdr->HdrSize;
1368 This function deletes all Font packages from a package list node.
1372 @param Handle Handle of the package list which contains the to
1374 @param PackageList Pointer to a package list that contains removing
1377 @retval EFI_SUCCESS Font Package(s) is deleted successfully.
1389 HII_FONT_PACKAGE_INSTANCE *Package;
1398 Package = CR (
1407 (VOID *) Package,
1415 RemoveEntryList (&Package->FontEntry);
1416 PackageList->PackageListHdr.PackageLength -= Package->FontPkgHdr->Header.Length;
1418 if (Package->GlyphBlock != NULL) {
1419 FreePool (Package->GlyphBlock);
1421 FreePool (Package->FontPkgHdr);
1425 while (!IsListEmpty (&Package->GlyphInfoList)) {
1427 Package->GlyphInfoList.ForwardLink,
1441 if (GlobalFont->FontPackage == Package
1449 FreePool (Package);
1457 This function insert a Image package to a package list node.
1460 @param PackageHdr Pointer to a buffer stored with Image package
1463 @param PackageList Pointer to a package list which will be inserted
1465 @param Package Created Image package
1467 @retval EFI_SUCCESS Image Package is inserted successfully.
1469 Image package.
1478 OUT HII_IMAGE_PACKAGE_INSTANCE **Package
1496 // Less than one image package is allowed in one package list.
1503 // Create a Image package node
1511 // Copy the Image package header.
1519 // If PaletteInfoOffset is zero, there are no palettes in this image package.
1548 // If ImageInfoOffset is zero, there are no images in this package.
1571 *Package = ImagePackage;
1586 @param Handle Identification of a package list.
1587 @param PackageList Pointer to a package list which will be exported.
1592 package list.
1611 HII_IMAGE_PACKAGE_INSTANCE *Package;
1622 Package = PackageList->ImagePkg;
1624 if (Package == NULL) {
1628 PackageLength = Package->ImagePkgHdr.Header.Length;
1637 (VOID *) Package,
1642 ASSERT (Package->ImagePkgHdr.Header.Length ==
1643 sizeof (EFI_HII_IMAGE_PACKAGE_HDR) + Package->ImageBlockSize + Package->PaletteInfoSize);
1645 // Copy Image package header,
1648 CopyMem (Buffer, &Package->ImagePkgHdr, sizeof (EFI_HII_IMAGE_PACKAGE_HDR));
1654 if (Package->ImageBlockSize != 0) {
1655 CopyMem (Buffer, Package->ImageBlock, Package->ImageBlockSize);
1656 Buffer = (UINT8 *) Buffer + Package->ImageBlockSize;
1661 if (Package->PaletteInfoSize != 0) {
1662 CopyMem (Buffer, Package->PaletteBlock, Package->PaletteInfoSize);
1663 Buffer = (UINT8 *) Buffer + Package->PaletteInfoSize;
1673 This function deletes Image package from a package list node.
1677 @param Handle Handle of the package list which contains the to
1679 @param PackageList Package List which contains the to be removed
1680 Image package.
1682 @retval EFI_SUCCESS Image Package(s) is deleted successfully.
1693 HII_IMAGE_PACKAGE_INSTANCE *Package;
1696 Package = PackageList->ImagePkg;
1699 // Image package does not exist, return directly.
1701 if (Package == NULL) {
1708 (VOID *) Package,
1716 PackageList->PackageListHdr.PackageLength -= Package->ImagePkgHdr.Header.Length;
1718 FreePool (Package->ImageBlock);
1719 if (Package->PaletteBlock != NULL) {
1720 FreePool (Package->PaletteBlock);
1722 FreePool (Package);
1731 This function insert a Simple Font package to a package list node.
1735 package information.
1737 @param PackageList Pointer to a package list which will be inserted
1739 @param Package Created Simple Font package
1741 @retval EFI_SUCCESS Simple Font Package is inserted successfully.
1743 Simple Font package.
1752 OUT HII_SIMPLE_FONT_PACKAGE_INSTANCE **Package
1764 // Create a Simple Font package node
1774 // Copy the Simple Font package.
1787 // Insert to Simple Font package array
1790 *Package = SimpleFontPackage;
1815 @param Handle Identification of a package list.
1816 @param PackageList Pointer to a package list which will be exported.
1821 package list.
1841 HII_SIMPLE_FONT_PACKAGE_INSTANCE *Package;
1855 Package = CR (Link, HII_SIMPLE_FONT_PACKAGE_INSTANCE, SimpleFontEntry, HII_S_FONT_PACKAGE_SIGNATURE);
1856 PackageLength += Package->SimpleFontPkgHdr->Header.Length;
1864 (VOID *) Package,
1871 // Copy SimpleFont package
1873 CopyMem (Buffer, Package->SimpleFontPkgHdr, Package->SimpleFontPkgHdr->Header.Length);
1874 Buffer = (UINT8 *) Buffer + Package->SimpleFontPkgHdr->Header.Length;
1884 This function deletes all Simple Font packages from a package list node.
1888 @param Handle Handle of the package list which contains the to
1890 @param PackageList Pointer to a package list that contains removing
1893 @retval EFI_SUCCESS Simple Font Package(s) is deleted successfully.
1905 HII_SIMPLE_FONT_PACKAGE_INSTANCE *Package;
1911 Package = CR (
1920 (VOID *) Package,
1928 RemoveEntryList (&Package->SimpleFontEntry);
1929 PackageList->PackageListHdr.PackageLength -= Package->SimpleFontPkgHdr->Header.Length;
1930 FreePool (Package->SimpleFontPkgHdr);
1931 FreePool (Package);
1939 This function insert a Device path package to a package list node.
1945 @param PackageList Pointer to a package list which will be inserted
1948 @retval EFI_SUCCESS Device path Package is inserted successfully.
1950 Device path package.
1968 // Less than one device path package is allowed in one package list.
1990 // Since Device Path package is created by NewPackageList, either NEW_PACK
1991 // or ADD_PACK should increase the length of package list.
1999 This function exports device path package to a buffer.
2003 @param Handle Identification of a package list.
2004 @param PackageList Pointer to a package list which will be exported.
2009 package list.
2011 @retval EFI_SUCCESS Device path Package is exported successfully.
2027 UINT8 *Package;
2037 Package = PackageList->DevicePathPkg;
2039 if (Package == NULL) {
2043 CopyMem (&Header, Package, sizeof (EFI_HII_PACKAGE_HEADER));
2052 (VOID *) Package,
2059 // Copy Device path package
2061 CopyMem (Buffer, Package, Header.Length);
2070 This function deletes Device Path package from a package list node.
2074 @param Handle Handle of the package list.
2075 @param PackageList Package List which contains the to be removed
2076 Device Path package.
2078 @retval EFI_SUCCESS Device Path Package is deleted successfully.
2090 UINT8 *Package;
2093 Package = PackageList->DevicePathPkg;
2098 if (Package == NULL) {
2105 (VOID *) Package,
2113 CopyMem (&Header, Package, sizeof (EFI_HII_PACKAGE_HEADER));
2116 FreePool (Package);
2125 This function will insert a device path package to package list firstly then
2133 @param DatabaseRecord Pointer to a database record contains a package
2136 @retval EFI_SUCCESS Device path Package is inserted successfully.
2138 Device path package.
2160 // Create a device path package and insert to packagelist
2182 This function insert a Keyboard Layout package to a package list node.
2186 package information.
2188 @param PackageList Pointer to a package list which will be inserted
2190 @param Package Created Keyboard Layout package
2192 @retval EFI_SUCCESS Keyboard Layout Package is inserted successfully.
2194 Keyboard Layout package.
2203 OUT HII_KEYBOARD_LAYOUT_PACKAGE_INSTANCE **Package
2217 // Create a Keyboard Layout package node
2235 *Package = KeyboardLayoutPackage;
2262 @param Handle Identification of a package list.
2263 @param PackageList Pointer to a package list which will be exported.
2268 package list.
2289 HII_KEYBOARD_LAYOUT_PACKAGE_INSTANCE *Package;
2304 Package = CR (Link, HII_KEYBOARD_LAYOUT_PACKAGE_INSTANCE, KeyboardEntry, HII_KB_LAYOUT_PACKAGE_SIGNATURE);
2305 CopyMem (&PackageHeader, Package->KeyboardPkg, sizeof (EFI_HII_PACKAGE_HEADER));
2314 (EFI_HII_PACKAGE_HEADER *) Package,
2321 // Copy Keyboard Layout package
2323 CopyMem (Buffer, Package->KeyboardPkg, PackageHeader.Length);
2334 This function deletes all Keyboard Layout packages from a package list node.
2338 @param Handle Handle of the package list which contains the to
2340 @param PackageList Pointer to a package list that contains removing
2343 @retval EFI_SUCCESS Keyboard Layout Package(s) is deleted
2356 HII_KEYBOARD_LAYOUT_PACKAGE_INSTANCE *Package;
2363 Package = CR (
2372 (VOID *) Package,
2380 RemoveEntryList (&Package->KeyboardEntry);
2381 CopyMem (&PackageHeader, Package->KeyboardPkg, sizeof (EFI_HII_PACKAGE_HEADER));
2383 FreePool (Package->KeyboardPkg);
2384 FreePool (Package);
2392 This function will insert a package list to hii database firstly then
2400 @param PackageList Pointer to a package list.
2401 @param DatabaseRecord Pointer to a database record contains a package
2407 Device path package.
2445 // Process the package list header
2620 // goto header of next package
2627 // Adjust String Package to make sure all string packages have the same max string ID.
2638 This function exports a package list to a buffer. It is the worker function
2644 @param Handle Identification of a package list.
2645 @param PackageList Pointer to a package list which will be exported.
2647 package lists when Handle is NULL.
2679 // Copy the package list header
2680 // ResultSize indicates the length of the exported bytes of this package list
2786 // Append the package list end.
2940 This function adds the packages in the package
2942 create a package of type EFI_PACKAGE_TYPE_DEVICE_PATH and add it to the package list.
2948 @param DriverHandle Associate the package list with this EFI handle.
2953 @retval EFI_SUCCESS The package list associated with the Handle was
2985 // Check the Package list GUID to guarantee this GUID is unique in database.
3006 // Fill in information of the created Package List node
3007 // according to incoming package list.
3017 // Create a Device path package and add into the package list if exists.
3044 This function removes the package list that is associated with Handle
3045 from the HII database. Before removing the package, any registered functions
3046 with the notification type REMOVE_PACK and the same package type will be called.
3130 // Free resources of the package list
3160 This function updates the existing package list (which has the specified Handle)
3161 in the HII databases, using the new package list specified by PackageList.
3168 package.
3215 // Remove the package if its type matches one of the package types which is
3216 // contained in the new package list.
3256 // Add all of the packages within the new package list
3279 This function returns a list of the package handles of the specified type
3281 EFI_HII_PACKAGE_TYPE_ALL will cause all package handles to be listed.
3285 @param PackageType Specifies the package type of the packages to list
3403 // Pseudo-type EFI_HII_PACKAGE_TYPE_ALL will cause all package handles
3414 // This active package list has the specified package type, list it.
3440 This function will export one or all package lists in the database to a buffer.
3441 For each package list exported, this function will call functions registered
3442 with EXPORT_PACK and then copy the package list to the buffer.
3447 package list in the HII database to export or NULL
3448 to indicate all package lists should be exported.
3455 @retval EFI_SUCCESS Package exported.
3499 // Export all package lists in current hii database.
3543 notified when specific package types are added, removed or updated in the HII database.
3549 @param PackageType Specifies the package type of the packages to list
3637 Removes the specified HII database package-related notification.
3750 HII_KEYBOARD_LAYOUT_PACKAGE_INSTANCE *Package;
3764 // Search all package lists in whole database to retrieve keyboard layout.
3774 // Find out all Keyboard Layout packages in this package list.
3776 Package = CR (
3782 Layout = (UINT8 *) Package->KeyboardPkg + sizeof (EFI_HII_PACKAGE_HEADER) + sizeof (UINT16);
3785 (UINT8 *) Package->KeyboardPkg + sizeof (EFI_HII_PACKAGE_HEADER),
3857 HII_KEYBOARD_LAYOUT_PACKAGE_INSTANCE *Package;
3890 Package = CR (
3897 Layout = (UINT8 *) Package->KeyboardPkg +
3999 Return the EFI handle associated with a package list.
4004 package list in the HIIdatabase.
4006 registered with the package list in