summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexandru Gagniuc <mr.nuke.me@gmail.com>2013-12-26 22:53:52 -0500
committerAlexandru Gagniuc <mr.nuke.me@gmail.com>2014-01-14 08:07:44 +0100
commit3dd0e72d3b9ad5fb6593db6c81c9ad712711e330 (patch)
tree9098c3c7c0a59fb77758a7b50d2b4b9d715c948b /src
parent8e053afa860e254d099b7c2e530cfbbe185ca098 (diff)
lib/hexdump: Take const void * and size_t as arguments
Representing a memory location as an unsigned long is specific to 32-bit architectures. It also doesn't make sense to represent a length assumed to be positive as a signed integer. With this change, it is no longer necessary to cast a pointer to unsigned long when passing it to hexdump. Change-Id: I641777d940ceac6f37c363051f1e9c1b3ec3ed95 Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-on: http://review.coreboot.org/4575 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/include/lib.h3
-rw-r--r--src/lib/hexdump.c4
2 files changed, 4 insertions, 3 deletions
diff --git a/src/include/lib.h b/src/include/lib.h
index 3a515332b1..8de49d3508 100644
--- a/src/include/lib.h
+++ b/src/include/lib.h
@@ -22,6 +22,7 @@
#ifndef __LIB_H__
#define __LIB_H__
#include <stdint.h>
+#include <types.h>
#if !defined(__ROMCC__) /* Conflicts with inline function in arch/io.h */
/* Defined in src/lib/clog2.c */
@@ -57,6 +58,6 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx);
void post_cache_as_ram(void);
/* Defined in src/lib/hexdump.c */
-void hexdump(unsigned long memory, int length);
+void hexdump(const void *memory, size_t length);
#endif /* __LIB_H__ */
diff --git a/src/lib/hexdump.c b/src/lib/hexdump.c
index d24ae775e7..82b0a3ba5b 100644
--- a/src/lib/hexdump.c
+++ b/src/lib/hexdump.c
@@ -28,7 +28,7 @@ static int isprint(int c)
return (c >= 32 && c <= 126);
}
-void hexdump(unsigned long memory, int length)
+void hexdump(const void* memory, size_t length)
{
int i;
uint8_t *m;
@@ -48,7 +48,7 @@ void hexdump(unsigned long memory, int length)
}
if (all_zero < 2) {
- printk(BIOS_DEBUG, "%08lx:", memory + i);
+ printk(BIOS_DEBUG, "%p:", memory + i);
for (j = 0; j < 16; j++)
printk(BIOS_DEBUG, " %02x", m[i+j]);
printk(BIOS_DEBUG, " ");