Skip to content

Commit

Permalink
ACPICA: utilities: add flag to only display data when dumping buffers
Browse files Browse the repository at this point in the history
ACPICA commit fb18935fcf940c5854a055975c6b9ee31f0e1a5a

Link: https://github.com/acpica/acpica/commit/fb18935f
Signed-off-by: Erik Schmauss <erik.schmauss@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  • Loading branch information
Erik Schmauss authored and Rafael J. Wysocki committed Oct 28, 2019
1 parent 1770093 commit efcf945
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 27 deletions.
9 changes: 5 additions & 4 deletions drivers/acpi/acpica/acutils.h
Original file line number Diff line number Diff line change
Expand Up @@ -142,10 +142,11 @@ struct acpi_pkg_info {

/* acpi_ut_dump_buffer */

#define DB_BYTE_DISPLAY 1
#define DB_WORD_DISPLAY 2
#define DB_DWORD_DISPLAY 4
#define DB_QWORD_DISPLAY 8
#define DB_BYTE_DISPLAY 0x01
#define DB_WORD_DISPLAY 0x02
#define DB_DWORD_DISPLAY 0x04
#define DB_QWORD_DISPLAY 0x08
#define DB_DISPLAY_DATA_ONLY 0x10

/*
* utascii - ASCII utilities
Expand Down
52 changes: 29 additions & 23 deletions drivers/acpi/acpica/utbuffer.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,9 @@ void acpi_ut_dump_buffer(u8 *buffer, u32 count, u32 display, u32 base_offset)
u32 j;
u32 temp32;
u8 buf_char;
u32 display_data_only = display & DB_DISPLAY_DATA_ONLY;

display &= ~DB_DISPLAY_DATA_ONLY;
if (!buffer) {
acpi_os_printf("Null Buffer Pointer in DumpBuffer!\n");
return;
Expand All @@ -53,7 +55,9 @@ void acpi_ut_dump_buffer(u8 *buffer, u32 count, u32 display, u32 base_offset)

/* Print current offset */

acpi_os_printf("%8.4X: ", (base_offset + i));
if (!display_data_only) {
acpi_os_printf("%8.4X: ", (base_offset + i));
}

/* Print 16 hex chars */

Expand Down Expand Up @@ -109,32 +113,34 @@ void acpi_ut_dump_buffer(u8 *buffer, u32 count, u32 display, u32 base_offset)
* Print the ASCII equivalent characters but watch out for the bad
* unprintable ones (printable chars are 0x20 through 0x7E)
*/
acpi_os_printf(" ");
for (j = 0; j < 16; j++) {
if (i + j >= count) {
acpi_os_printf("\n");
return;
if (!display_data_only) {
acpi_os_printf(" ");
for (j = 0; j < 16; j++) {
if (i + j >= count) {
acpi_os_printf("\n");
return;
}

/*
* Add comment characters so rest of line is ignored when
* compiled
*/
if (j == 0) {
acpi_os_printf("// ");
}

buf_char = buffer[(acpi_size)i + j];
if (isprint(buf_char)) {
acpi_os_printf("%c", buf_char);
} else {
acpi_os_printf(".");
}
}

/*
* Add comment characters so rest of line is ignored when
* compiled
*/
if (j == 0) {
acpi_os_printf("// ");
}
/* Done with that line. */

buf_char = buffer[(acpi_size)i + j];
if (isprint(buf_char)) {
acpi_os_printf("%c", buf_char);
} else {
acpi_os_printf(".");
}
acpi_os_printf("\n");
}

/* Done with that line. */

acpi_os_printf("\n");
i += 16;
}

Expand Down

0 comments on commit efcf945

Please sign in to comment.