Deleted Added
sdiff udiff text old ( 245582 ) new ( 246849 )
full compact
1/******************************************************************************
2 *
3 * Module Name: dmextern - Support for External() ASL statements
4 *
5 *****************************************************************************/
6
7/*
8 * Copyright (C) 2000 - 2013, Intel Corp.

--- 32 unchanged lines hidden (view full) ---

41 * POSSIBILITY OF SUCH DAMAGES.
42 */
43
44#include <contrib/dev/acpica/include/acpi.h>
45#include <contrib/dev/acpica/include/accommon.h>
46#include <contrib/dev/acpica/include/amlcode.h>
47#include <contrib/dev/acpica/include/acnamesp.h>
48#include <contrib/dev/acpica/include/acdisasm.h>
49
50
51/*
52 * This module is used for application-level code (iASL disassembler) only.
53 *
54 * It contains the code to create and emit any necessary External() ASL
55 * statements for the module being disassembled.
56 */

--- 311 unchanged lines hidden (view full) ---

368 UINT32 Value)
369{
370 char *ExternalPath;
371 char *Fullpath = NULL;
372 ACPI_EXTERNAL_LIST *NewExternal;
373 ACPI_EXTERNAL_LIST *NextExternal;
374 ACPI_EXTERNAL_LIST *PrevExternal = NULL;
375 ACPI_STATUS Status;
376
377
378 if (!Path)
379 {
380 return;
381 }
382
383 /*
384 * We don't want External() statements to contain a leading '\'.
385 * This prevents duplicate external statements of the form:
386 *
387 * External (\ABCD)
388 * External (ABCD)
389 *
390 * This would cause a compile time error when the disassembled

--- 68 unchanged lines hidden (view full) ---

459 {
460 ACPI_FREE (ExternalPath);
461 return;
462 }
463
464 NewExternal->Path = ExternalPath;
465 NewExternal->Type = Type;
466 NewExternal->Value = Value;
467 NewExternal->Length = (UINT16) ACPI_STRLEN (ExternalPath);
468
469 /* Was the external path with parent prefix normalized to a fullpath? */
470
471 if (Fullpath == ExternalPath)
472 {
473 /* Get new internal path */
474

--- 204 unchanged lines hidden (view full) ---

679
680
681 if (!AcpiGbl_ExternalList)
682 {
683 return;
684 }
685
686 /*
687 * Walk the list of externals (unresolved references)
688 * found during the AML parsing
689 */
690 while (AcpiGbl_ExternalList)
691 {
692 AcpiOsPrintf (" External (%s%s",
693 AcpiGbl_ExternalList->Path,
694 AcpiDmGetObjectTypeName (AcpiGbl_ExternalList->Type));
695
696 if (AcpiGbl_ExternalList->Type == ACPI_TYPE_METHOD)
697 {
698 AcpiOsPrintf (") // %u Arguments\n",
699 AcpiGbl_ExternalList->Value);
700 }
701 else
702 {
703 AcpiOsPrintf (")\n");
704 }
705
706 /* Free this external info block and move on to next external */
707

--- 5 unchanged lines hidden (view full) ---

713
714 ACPI_FREE (AcpiGbl_ExternalList->Path);
715 ACPI_FREE (AcpiGbl_ExternalList);
716 AcpiGbl_ExternalList = NextExternal;
717 }
718
719 AcpiOsPrintf ("\n");
720}