summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2008-01-03 15:48:43 +1100
committerJon Loeliger <jdl@freescale.com>2008-01-03 07:46:29 -0600
commit3bb78bfd9758ff726ca80df2cb554a2f2df798a3 (patch)
tree3b0ee63e602bf6218aeccbc801f32f34a14b32dc
parent3e516d961a45a2a410a9dc8f61fbdd62641b5ca0 (diff)
downloaddtc-3bb78bfd9758ff726ca80df2cb554a2f2df798a3.tar.gz
dtc: Remove header information dumping
Currently, when used in -Idtb mode, dtc will dump information about the input blob's header fields to stderr. This is kind of ugly, and can get in the way of dtc's real output. This patch, therefore, removes this. So that there's still a way of getting this information for debugging purposes, it places something similar to the removed code into ftdump, replacing the couple of header fields it currently prints with a complete header dump. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-rw-r--r--flattree.c15
-rw-r--r--ftdump.c32
2 files changed, 26 insertions, 21 deletions
diff --git a/flattree.c b/flattree.c
index a7cfb84..7b6d7fe 100644
--- a/flattree.c
+++ b/flattree.c
@@ -898,15 +898,6 @@ struct boot_info *dt_from_blob(FILE *f)
off_mem_rsvmap = be32_to_cpu(fdt->off_mem_rsvmap);
version = be32_to_cpu(fdt->version);
- fprintf(stderr, "\tmagic:\t\t\t0x%x\n", magic);
- fprintf(stderr, "\ttotalsize:\t\t%d\n", totalsize);
- fprintf(stderr, "\toff_dt_struct:\t\t0x%x\n", off_dt);
- fprintf(stderr, "\toff_dt_strings:\t\t0x%x\n", off_str);
- fprintf(stderr, "\toff_mem_rsvmap:\t\t0x%x\n", off_mem_rsvmap);
- fprintf(stderr, "\tversion:\t\t0x%x\n", version );
- fprintf(stderr, "\tlast_comp_version:\t0x%x\n",
- be32_to_cpu(fdt->last_comp_version));
-
if (off_mem_rsvmap >= totalsize)
die("Mem Reserve structure offset exceeds total size\n");
@@ -916,21 +907,15 @@ struct boot_info *dt_from_blob(FILE *f)
if (off_str > totalsize)
die("String table offset exceeds total size\n");
- if (version >= 2)
- fprintf(stderr, "\tboot_cpuid_phys:\t0x%x\n",
- be32_to_cpu(fdt->boot_cpuid_phys));
-
size_str = -1;
if (version >= 3) {
size_str = be32_to_cpu(fdt->size_dt_strings);
- fprintf(stderr, "\tsize_dt_strings:\t%d\n", size_str);
if (off_str+size_str > totalsize)
die("String table extends past total size\n");
}
if (version >= 17) {
size_dt = be32_to_cpu(fdt->size_dt_struct);
- fprintf(stderr, "\tsize_dt_struct:\t\t%d\n", size_dt);
if (off_dt+size_dt > totalsize)
die("Structure block extends past total size\n");
}
diff --git a/ftdump.c b/ftdump.c
index 53343d7..0cdae81 100644
--- a/ftdump.c
+++ b/ftdump.c
@@ -81,11 +81,13 @@ static void print_data(const void *data, int len)
static void dump_blob(void *blob)
{
struct fdt_header *bph = blob;
+ uint32_t off_mem_rsvmap = be32_to_cpu(bph->off_mem_rsvmap);
+ uint32_t off_dt = be32_to_cpu(bph->off_dt_struct);
+ uint32_t off_str = be32_to_cpu(bph->off_dt_strings);
struct fdt_reserve_entry *p_rsvmap =
- (struct fdt_reserve_entry *)(blob
- + be32_to_cpu(bph->off_mem_rsvmap));
- char *p_struct = blob + be32_to_cpu(bph->off_dt_struct);
- char *p_strings = blob + be32_to_cpu(bph->off_dt_strings);
+ (struct fdt_reserve_entry *)(blob + off_mem_rsvmap);
+ char *p_struct = blob + off_dt;
+ char *p_strings = blob + off_str;
uint32_t version = be32_to_cpu(bph->version);
uint32_t totalsize = be32_to_cpu(bph->totalsize);
uint32_t tag;
@@ -98,8 +100,26 @@ static void dump_blob(void *blob)
depth = 0;
shift = 4;
- printf("// Version 0x%x tree\n", version);
- printf("// Totalsize 0x%x(%d)\n", totalsize, totalsize);
+ printf("// magic:\t\t0x%x\n", be32_to_cpu(bph->magic));
+ printf("// totalsize:\t\t0x%x (%d)\n", totalsize, totalsize);
+ printf("// off_dt_struct:\t0x%x\n", off_dt);
+ printf("// off_dt_strings:\t0x%x\n", off_str);
+ printf("// off_mem_rsvmap:\t0x%x\n", off_mem_rsvmap);
+ printf("// version:\t\t%d\n", version);
+ printf("// last_comp_version:\t%d\n",
+ be32_to_cpu(bph->last_comp_version));
+ if (version >= 2)
+ printf("// boot_cpuid_phys:\t0x%x\n",
+ be32_to_cpu(bph->boot_cpuid_phys));
+
+ if (version >= 3)
+ printf("// size_dt_strings:\t0x%x\n",
+ be32_to_cpu(bph->size_dt_strings));
+ if (version >= 17)
+ printf("// size_dt_struct:\t0x%x\n",
+ be32_to_cpu(bph->size_dt_struct));
+ printf("\n");
+
for (i = 0; ; i++) {
addr = be64_to_cpu(p_rsvmap[i].address);
size = be64_to_cpu(p_rsvmap[i].size);