fdtdump: properly handle multi-string properties

Device tree can store multiple strings in a single property.
We didn't handle that case properly.

Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
main
Pantelis Antoniou 2013-01-04 21:12:46 +02:00 committed by Jon Loeliger
parent e4b497f367
commit 94a4799b20
1 changed files with 11 additions and 1 deletions

View File

@ -21,13 +21,23 @@ static void print_data(const char *data, int len)
{
int i;
const char *p = data;
const char *s;

/* no data, don't print */
if (len == 0)
return;

if (util_is_printable_string(data, len)) {
printf(" = \"%s\"", (const char *)data);
printf(" = ");

s = data;
do {
printf("\"%s\"", s);
s += strlen(s) + 1;
if (s < data + len)
printf(", ");
} while (s < data + len);

} else if ((len % 4) == 0) {
printf(" = <");
for (i = 0; i < len; i += 4)