Skip to content

Commit

Permalink
ACPICA: Update Resource descriptor dump module.
Browse files Browse the repository at this point in the history
ACPICA commit 184f3cc4d162a6b6b2005eacd8be2fe55f19a245

- Change global #ifdef to check for ACPI_DEBUGGER only.
- Cleanup some long lines and misaligned code.

Link: https://github.com/acpica/acpica/commit/184f3cc4
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  • Loading branch information
Bob Moore authored and Rafael J. Wysocki committed Apr 14, 2015
1 parent 81ed793 commit 39239fe
Show file tree
Hide file tree
Showing 2 changed files with 117 additions and 116 deletions.
4 changes: 2 additions & 2 deletions drivers/acpi/acpica/acresrc.h
Original file line number Diff line number Diff line change
Expand Up @@ -299,9 +299,9 @@ acpi_rs_set_resource_length(acpi_rsdesc_size total_length,
union aml_resource *aml);

/*
* rsdump
* rsdump - Debugger support
*/
#ifdef ACPI_EXEC_APP
#ifdef ACPI_DEBUGGER
void acpi_rs_dump_resource_list(struct acpi_resource *resource);

void acpi_rs_dump_irq_list(u8 *route_table);
Expand Down
229 changes: 115 additions & 114 deletions drivers/acpi/acpica/rsdump.c
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*******************************************************************************
*
* Module Name: rsdump - Functions to display the resource structures.
* Module Name: rsdump - AML debugger support for resource structures.
*
******************************************************************************/

Expand Down Expand Up @@ -48,7 +48,10 @@
#define _COMPONENT ACPI_RESOURCES
ACPI_MODULE_NAME("rsdump")

#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DISASSEMBLER) || defined(ACPI_DEBUGGER)
/*
* All functions in this module are used by the AML Debugger only
*/
#if defined(ACPI_DEBUGGER)
/* Local prototypes */
static void acpi_rs_out_string(char *title, char *value);

Expand Down Expand Up @@ -78,6 +81,116 @@ static void acpi_rs_dump_address_common(union acpi_resource_data *resource);
static void
acpi_rs_dump_descriptor(void *resource, struct acpi_rsdump_info *table);

/*******************************************************************************
*
* FUNCTION: acpi_rs_dump_resource_list
*
* PARAMETERS: resource_list - Pointer to a resource descriptor list
*
* RETURN: None
*
* DESCRIPTION: Dispatches the structure to the correct dump routine.
*
******************************************************************************/

void acpi_rs_dump_resource_list(struct acpi_resource *resource_list)
{
u32 count = 0;
u32 type;

ACPI_FUNCTION_ENTRY();

/* Check if debug output enabled */

if (!ACPI_IS_DEBUG_ENABLED(ACPI_LV_RESOURCES, _COMPONENT)) {
return;
}

/* Walk list and dump all resource descriptors (END_TAG terminates) */

do {
acpi_os_printf("\n[%02X] ", count);
count++;

/* Validate Type before dispatch */

type = resource_list->type;
if (type > ACPI_RESOURCE_TYPE_MAX) {
acpi_os_printf
("Invalid descriptor type (%X) in resource list\n",
resource_list->type);
return;
}

/* Sanity check the length. It must not be zero, or we loop forever */

if (!resource_list->length) {
acpi_os_printf
("Invalid zero length descriptor in resource list\n");
return;
}

/* Dump the resource descriptor */

if (type == ACPI_RESOURCE_TYPE_SERIAL_BUS) {
acpi_rs_dump_descriptor(&resource_list->data,
acpi_gbl_dump_serial_bus_dispatch
[resource_list->data.
common_serial_bus.type]);
} else {
acpi_rs_dump_descriptor(&resource_list->data,
acpi_gbl_dump_resource_dispatch
[type]);
}

/* Point to the next resource structure */

resource_list = ACPI_NEXT_RESOURCE(resource_list);

/* Exit when END_TAG descriptor is reached */

} while (type != ACPI_RESOURCE_TYPE_END_TAG);
}

/*******************************************************************************
*
* FUNCTION: acpi_rs_dump_irq_list
*
* PARAMETERS: route_table - Pointer to the routing table to dump.
*
* RETURN: None
*
* DESCRIPTION: Print IRQ routing table
*
******************************************************************************/

void acpi_rs_dump_irq_list(u8 *route_table)
{
struct acpi_pci_routing_table *prt_element;
u8 count;

ACPI_FUNCTION_ENTRY();

/* Check if debug output enabled */

if (!ACPI_IS_DEBUG_ENABLED(ACPI_LV_RESOURCES, _COMPONENT)) {
return;
}

prt_element = ACPI_CAST_PTR(struct acpi_pci_routing_table, route_table);

/* Dump all table elements, Exit on zero length element */

for (count = 0; prt_element->length; count++) {
acpi_os_printf("\n[%02X] PCI IRQ Routing Table Package\n",
count);
acpi_rs_dump_descriptor(prt_element, acpi_rs_dump_prt);

prt_element = ACPI_ADD_PTR(struct acpi_pci_routing_table,
prt_element, prt_element->length);
}
}

/*******************************************************************************
*
* FUNCTION: acpi_rs_dump_descriptor
Expand Down Expand Up @@ -355,118 +468,6 @@ static void acpi_rs_dump_address_common(union acpi_resource_data *resource)
acpi_rs_dump_descriptor(resource, acpi_rs_dump_general_flags);
}

#ifdef ACPI_EXEC_APP
/*******************************************************************************
*
* FUNCTION: acpi_rs_dump_resource_list
*
* PARAMETERS: resource_list - Pointer to a resource descriptor list
*
* RETURN: None
*
* DESCRIPTION: Dispatches the structure to the correct dump routine.
*
******************************************************************************/

void acpi_rs_dump_resource_list(struct acpi_resource *resource_list)
{
u32 count = 0;
u32 type;

ACPI_FUNCTION_ENTRY();

/* Check if debug output enabled */

if (!ACPI_IS_DEBUG_ENABLED(ACPI_LV_RESOURCES, _COMPONENT)) {
return;
}

/* Walk list and dump all resource descriptors (END_TAG terminates) */

do {
acpi_os_printf("\n[%02X] ", count);
count++;

/* Validate Type before dispatch */

type = resource_list->type;
if (type > ACPI_RESOURCE_TYPE_MAX) {
acpi_os_printf
("Invalid descriptor type (%X) in resource list\n",
resource_list->type);
return;
}

/* Sanity check the length. It must not be zero, or we loop forever */

if (!resource_list->length) {
acpi_os_printf
("Invalid zero length descriptor in resource list\n");
return;
}

/* Dump the resource descriptor */

if (type == ACPI_RESOURCE_TYPE_SERIAL_BUS) {
acpi_rs_dump_descriptor(&resource_list->data,
acpi_gbl_dump_serial_bus_dispatch
[resource_list->data.
common_serial_bus.type]);
} else {
acpi_rs_dump_descriptor(&resource_list->data,
acpi_gbl_dump_resource_dispatch
[type]);
}

/* Point to the next resource structure */

resource_list = ACPI_NEXT_RESOURCE(resource_list);

/* Exit when END_TAG descriptor is reached */

} while (type != ACPI_RESOURCE_TYPE_END_TAG);
}

/*******************************************************************************
*
* FUNCTION: acpi_rs_dump_irq_list
*
* PARAMETERS: route_table - Pointer to the routing table to dump.
*
* RETURN: None
*
* DESCRIPTION: Print IRQ routing table
*
******************************************************************************/

void acpi_rs_dump_irq_list(u8 *route_table)
{
struct acpi_pci_routing_table *prt_element;
u8 count;

ACPI_FUNCTION_ENTRY();

/* Check if debug output enabled */

if (!ACPI_IS_DEBUG_ENABLED(ACPI_LV_RESOURCES, _COMPONENT)) {
return;
}

prt_element = ACPI_CAST_PTR(struct acpi_pci_routing_table, route_table);

/* Dump all table elements, Exit on zero length element */

for (count = 0; prt_element->length; count++) {
acpi_os_printf("\n[%02X] PCI IRQ Routing Table Package\n",
count);
acpi_rs_dump_descriptor(prt_element, acpi_rs_dump_prt);

prt_element = ACPI_ADD_PTR(struct acpi_pci_routing_table,
prt_element, prt_element->length);
}
}
#endif

/*******************************************************************************
*
* FUNCTION: acpi_rs_out*
Expand Down

0 comments on commit 39239fe

Please sign in to comment.