Lines Matching defs:Package
3 * Module Name: aslprepkg - support for ACPI predefined name package objects
176 const ACPI_PREDEFINED_INFO *Package,
209 * PARAMETERS: ParentOp - Parser op for the package
210 * Predefined - Pointer to package-specific info for
215 * DESCRIPTION: Top-level validation for predefined name return package
226 const ACPI_PREDEFINED_INFO *Package;
233 /* The package info for this name is in the next table entry */
235 Package = Predefined + 1;
237 /* First child is the package length */
246 * Other package types require one or more elements. In any case, there
251 switch (Package->RetInfo.Type)
276 /* Get the first element of the package */
280 /* Decode the package type */
282 switch (Package->RetInfo.Type)
291 * The package count is fixed and there are no subpackages
293 * If package is too small, exit.
294 * If package is larger than expected, issue warning but continue
296 ExpectedCount = Package->RetInfo.Count1 + Package->RetInfo.Count2;
307 /* Validate all elements of the package */
310 Package->RetInfo.ObjectType1, Package->RetInfo.Count1,
311 Package->RetInfo.ObjectType2, Package->RetInfo.Count2);
316 * The package count is variable, there are no subpackages,
324 * If we get to this point, it means that the package length
326 * package and return because we have run out of package
333 Package->RetInfo.ObjectType1, i);
340 * The package count is variable, there are no subpackages.
344 * Check if package is at least as large as the minimum required
346 ExpectedCount = Package->RetInfo3.Count;
356 if (i < Package->RetInfo3.Count)
358 /* These are the required package elements (0, 1, or 2) */
361 Package->RetInfo3.ObjectType[i], i);
365 /* These are the optional package elements */
368 Package->RetInfo3.TailObjectType, i);
388 Package, 1, Count);
403 * Count cannot be larger than the parent package length, but
420 Package, 1, Count);
425 /* The package contains a variable list of UUID Buffer/Package pairs */
427 /* The length of the package must be even */
431 sprintf (AslGbl_MsgBuffer, "%4.4s: Package length, %d, must be even.",
445 Package->RetInfo.ObjectType2, i);
450 Package->RetInfo.ObjectType1, i);
462 ExpectedCount = Package->RetInfo4.Count1 + 1;
468 /* Check the non-package elements at beginning of main package */
470 for (i = 0; i < Package->RetInfo4.Count1; ++i)
473 Package->RetInfo4.ObjectType1, i);
480 Package, Package->RetInfo4.Count1, Count);
490 * These types all return a single Package that consists of a
497 Package, 0, Count);
516 * PARAMETERS: ParentOp - Parse op for the package
517 * Predefined - Pointer to package-specific info for
541 /* First child is the package length */
576 /* Validate all elements of the package */
597 * Op - Parser op for the package
607 * DESCRIPTION: Validate all elements of a package. Works with packages that
626 * Up to two groups of package elements are supported by the data
630 * Aborts check upon a NULL package element, as this means (at compile
631 * time) that the remainder of the package elements are also NULL
632 * (This is the only way to create NULL package elements.)
655 * ParentOp - Parser op of the parent package
656 * Package - Package info for this predefined name
657 * StartIndex - Index in parent package where list begins
658 * ParentCount - Element count of parent package
662 * DESCRIPTION: Validate the individual package elements for a predefined name.
664 * Package of Packages (subpackages). These are the types:
679 const ACPI_PREDEFINED_INFO *Package,
693 * Validate each subpackage in the parent Package
695 * Note: We ignore NULL package elements on the assumption that
700 /* Each object in the list must be of type Package */
713 /* First child is the package length */
723 (Package->RetInfo.Type != ACPI_PTYPE2_VAR_VAR))
730 * Decode the package type.
731 * PTYPE2 indicates that a "package of packages" is expected for
735 switch (Package->RetInfo.Type)
743 ExpectedCount = Package->RetInfo.Count1 + Package->RetInfo.Count2;
758 Package->RetInfo.ObjectType1, Package->RetInfo.Count1,
759 Package->RetInfo.ObjectType2, Package->RetInfo.Count2);
767 ExpectedCount = Package->RetInfo.Count1 + Package->RetInfo.Count2;
776 Package->RetInfo.ObjectType1, Package->RetInfo.Count1,
777 Package->RetInfo.ObjectType2,
778 Count - Package->RetInfo.Count1);
786 ExpectedCount = Package->RetInfo4.PkgCount;
795 Package->RetInfo4.SubObjectTypes,
796 Package->RetInfo4.PkgCount,
804 ExpectedCount = Package->RetInfo2.Count;
823 Package->RetInfo2.ObjectType[j], j);
833 ExpectedCount = Package->RetInfo.Count1;
844 Package->RetInfo.ObjectType1, Count, 0, 0);
860 * Make sure package is large enough for the Count and is
879 if (Count < Package->RetInfo.Count1)
881 ExpectedCount = Package->RetInfo.Count1;
894 Package->RetInfo.ObjectType1, (Count - 1), 0, 0);
913 * Count - Actual package element count
914 * ExpectedCount - Expected package element count
918 * DESCRIPTION: Issue error message for a package that is smaller than
947 * DESCRIPTION: Issue error message for a zero-length package (a package that
972 * Count - Actual package element count
973 * ExpectedCount - Expected package element count
977 * DESCRIPTION: Issue a remark for a package that is larger than expected.