summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/sandbox/include/asm/types.h7
-rw-r--r--commands/iomem.c3
-rw-r--r--drivers/base/driver.c3
-rw-r--r--include/linux/ioport.h6
4 files changed, 17 insertions, 2 deletions
diff --git a/arch/sandbox/include/asm/types.h b/arch/sandbox/include/asm/types.h
index a9872194d..d471d257b 100644
--- a/arch/sandbox/include/asm/types.h
+++ b/arch/sandbox/include/asm/types.h
@@ -7,6 +7,13 @@
* 64 bit
*/
#define INTERNAL_SIZE_T unsigned long
+
+/*
+ * This is a Kconfig variable in the Kernel, but we want to detect
+ * this during compile time, so we set it here.
+ */
+#define CONFIG_PHYS_ADDR_T_64BIT
+
#endif
typedef unsigned short umode_t;
diff --git a/commands/iomem.c b/commands/iomem.c
index 96b03bab8..70355fd1e 100644
--- a/commands/iomem.c
+++ b/commands/iomem.c
@@ -30,7 +30,8 @@ static void __print_resources(struct resource *res, int indent)
for (i = 0; i < indent; i++)
printf(" ");
- printf("0x%08x - 0x%08x (size 0x%08x) %s\n", res->start,
+ printf(PRINTF_CONVERSION_RESOURCE " - " PRINTF_CONVERSION_RESOURCE
+ " (size " PRINTF_CONVERSION_RESOURCE ") %s\n", res->start,
res->start + res->size - 1,
res->size, res->name);
diff --git a/drivers/base/driver.c b/drivers/base/driver.c
index 547d6843a..3be4b9903 100644
--- a/drivers/base/driver.c
+++ b/drivers/base/driver.c
@@ -388,7 +388,8 @@ static int do_devinfo(int argc, char *argv[])
printf("num : %d\n", i);
if (res->name)
printf("name : %s\n", res->name);
- printf("start : 0x%08x\nsize : 0x%08x\n",
+ printf("start : " PRINTF_CONVERSION_RESOURCE "\nsize : "
+ PRINTF_CONVERSION_RESOURCE "\n",
res->start, res->size);
}
diff --git a/include/linux/ioport.h b/include/linux/ioport.h
index c837b5349..3f95dddf4 100644
--- a/include/linux/ioport.h
+++ b/include/linux/ioport.h
@@ -25,6 +25,12 @@ struct resource {
struct list_head sibling;
};
+#ifdef CONFIG_PHYS_ADDR_T_64BIT
+#define PRINTF_CONVERSION_RESOURCE "0x%016llx"
+#else
+#define PRINTF_CONVERSION_RESOURCE "0x%08x"
+#endif
+
/*
* IO resources have these defined flags.
*/