[U-Boot] [PATCH v6 02/27] common: Make sure arch-specific map_sysmem() is defined
Joe Hershberger
joe.hershberger at ni.com
Thu Mar 12 00:44:00 CET 2015
In the case where the arch defines a custom map_sysmem(), make sure that
including just mapmem.h is sufficient to have these functions as they
are when the arch does not override it.
Also split the non-arch specific functions out of common.h
Signed-off-by: Joe Hershberger <joe.hershberger at ni.com>
Reviewed-by: Simon Glass <sjg at chromium.org>
---
Changes in v6: None
Changes in v5:
-Moved to a separate header mapmem.h
Changes in v4:
-New to v4
Changes in v3: None
Changes in v2: None
arch/arm/lib/bootm.c | 1 +
common/board_f.c | 1 +
common/board_r.c | 1 +
common/bootm.c | 1 +
common/cmd_bootm.c | 1 +
common/cmd_demo.c | 1 +
common/cmd_fat.c | 1 +
common/cmd_fdt.c | 1 +
common/cmd_lzmadec.c | 1 +
common/cmd_md5sum.c | 1 +
common/cmd_mem.c | 1 +
common/cmd_nvedit.c | 1 +
common/cmd_pxe.c | 1 +
common/cmd_sf.c | 1 +
common/cmd_source.c | 1 +
common/cmd_trace.c | 1 +
common/cmd_ximg.c | 1 +
common/hash.c | 1 +
common/image-fdt.c | 1 +
common/image-fit.c | 1 +
common/image.c | 1 +
common/iotrace.c | 1 +
common/lcd.c | 1 +
common/malloc_simple.c | 1 +
drivers/demo/demo-simple.c | 1 +
drivers/i2c/i2c-uniphier-f.c | 1 +
drivers/i2c/i2c-uniphier.c | 1 +
drivers/mtd/spi/sf_probe.c | 1 +
drivers/serial/ns16550.c | 1 +
drivers/serial/serial_uniphier.c | 1 +
fs/fs.c | 1 +
include/common.h | 17 -----------------
include/mapmem.h | 32 ++++++++++++++++++++++++++++++++
lib/trace.c | 1 +
test/compression.c | 1 +
test/dm/cmd_dm.c | 1 +
36 files changed, 66 insertions(+), 17 deletions(-)
create mode 100644 include/mapmem.h
diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c
index 2d6b676..b1bff8c 100644
--- a/arch/arm/lib/bootm.c
+++ b/arch/arm/lib/bootm.c
@@ -18,6 +18,7 @@
#include <u-boot/zlib.h>
#include <asm/byteorder.h>
#include <libfdt.h>
+#include <mapmem.h>
#include <fdt_support.h>
#include <asm/bootm.h>
#include <asm/secure.h>
diff --git a/common/board_f.c b/common/board_f.c
index 4d8b8a6..1b7e7d9 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -23,6 +23,7 @@
#include <i2c.h>
#include <initcall.h>
#include <logbuff.h>
+#include <mapmem.h>
/* TODO: Can we move these into arch/ headers? */
#ifdef CONFIG_8xx
diff --git a/common/board_r.c b/common/board_r.c
index 4fcd4f6..af0f274 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -33,6 +33,7 @@
#endif
#include <logbuff.h>
#include <malloc.h>
+#include <mapmem.h>
#ifdef CONFIG_BITBANGMII
#include <miiphy.h>
#endif
diff --git a/common/bootm.c b/common/bootm.c
index 34f60bb..6842029 100644
--- a/common/bootm.c
+++ b/common/bootm.c
@@ -13,6 +13,7 @@
#include <fdt_support.h>
#include <lmb.h>
#include <malloc.h>
+#include <mapmem.h>
#include <asm/io.h>
#include <linux/lzo.h>
#include <lzma/LzmaTypes.h>
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 48199bf..b3d3968 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -16,6 +16,7 @@
#include <image.h>
#include <lmb.h>
#include <malloc.h>
+#include <mapmem.h>
#include <nand.h>
#include <asm/byteorder.h>
#include <linux/compiler.h>
diff --git a/common/cmd_demo.c b/common/cmd_demo.c
index 8a10bdf..209dc4a 100644
--- a/common/cmd_demo.c
+++ b/common/cmd_demo.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <dm-demo.h>
+#include <mapmem.h>
#include <asm/io.h>
struct udevice *demo_dev;
diff --git a/common/cmd_fat.c b/common/cmd_fat.c
index c00fb28..aae993d 100644
--- a/common/cmd_fat.c
+++ b/common/cmd_fat.c
@@ -14,6 +14,7 @@
#include <net.h>
#include <ata.h>
#include <asm/io.h>
+#include <mapmem.h>
#include <part.h>
#include <fat.h>
#include <fs.h>
diff --git a/common/cmd_fdt.c b/common/cmd_fdt.c
index 48b3e70..682b655 100644
--- a/common/cmd_fdt.c
+++ b/common/cmd_fdt.c
@@ -15,6 +15,7 @@
#include <asm/global_data.h>
#include <libfdt.h>
#include <fdt_support.h>
+#include <mapmem.h>
#include <asm/io.h>
#define MAX_LEVEL 32 /* how deeply nested we will go */
diff --git a/common/cmd_lzmadec.c b/common/cmd_lzmadec.c
index 7b0b3fd..1ad9ed6 100644
--- a/common/cmd_lzmadec.c
+++ b/common/cmd_lzmadec.c
@@ -12,6 +12,7 @@
#include <common.h>
#include <command.h>
+#include <mapmem.h>
#include <asm/io.h>
#include <lzma/LzmaTools.h>
diff --git a/common/cmd_md5sum.c b/common/cmd_md5sum.c
index d22ace5..23bb81e 100644
--- a/common/cmd_md5sum.c
+++ b/common/cmd_md5sum.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <command.h>
+#include <mapmem.h>
#include <u-boot/md5.h>
#include <asm/io.h>
diff --git a/common/cmd_mem.c b/common/cmd_mem.c
index bcb3ee3..66a41da 100644
--- a/common/cmd_mem.c
+++ b/common/cmd_mem.c
@@ -20,6 +20,7 @@
#endif
#include <hash.h>
#include <inttypes.h>
+#include <mapmem.h>
#include <watchdog.h>
#include <asm/io.h>
#include <linux/compiler.h>
diff --git a/common/cmd_nvedit.c b/common/cmd_nvedit.c
index 855808c..be792ae 100644
--- a/common/cmd_nvedit.c
+++ b/common/cmd_nvedit.c
@@ -31,6 +31,7 @@
#include <search.h>
#include <errno.h>
#include <malloc.h>
+#include <mapmem.h>
#include <watchdog.h>
#include <linux/stddef.h>
#include <asm/byteorder.h>
diff --git a/common/cmd_pxe.c b/common/cmd_pxe.c
index 7e32c95..96f963d 100644
--- a/common/cmd_pxe.c
+++ b/common/cmd_pxe.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <command.h>
#include <malloc.h>
+#include <mapmem.h>
#include <linux/string.h>
#include <linux/ctype.h>
#include <errno.h>
diff --git a/common/cmd_sf.c b/common/cmd_sf.c
index 5c788e9..01c37de 100644
--- a/common/cmd_sf.c
+++ b/common/cmd_sf.c
@@ -10,6 +10,7 @@
#include <div64.h>
#include <dm.h>
#include <malloc.h>
+#include <mapmem.h>
#include <spi.h>
#include <spi_flash.h>
diff --git a/common/cmd_source.c b/common/cmd_source.c
index 6881bc9..d2a881d 100644
--- a/common/cmd_source.c
+++ b/common/cmd_source.c
@@ -19,6 +19,7 @@
#include <command.h>
#include <image.h>
#include <malloc.h>
+#include <mapmem.h>
#include <asm/byteorder.h>
#include <asm/io.h>
#if defined(CONFIG_8xx)
diff --git a/common/cmd_trace.c b/common/cmd_trace.c
index 8c630e6..1e62a1a 100644
--- a/common/cmd_trace.c
+++ b/common/cmd_trace.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <command.h>
+#include <mapmem.h>
#include <trace.h>
#include <asm/io.h>
diff --git a/common/cmd_ximg.c b/common/cmd_ximg.c
index 64b9186..8b8645c 100644
--- a/common/cmd_ximg.c
+++ b/common/cmd_ximg.c
@@ -15,6 +15,7 @@
#include <common.h>
#include <command.h>
#include <image.h>
+#include <mapmem.h>
#include <watchdog.h>
#if defined(CONFIG_BZIP2)
#include <bzlib.h>
diff --git a/common/hash.c b/common/hash.c
index 9e9f84b..c94c98b 100644
--- a/common/hash.c
+++ b/common/hash.c
@@ -14,6 +14,7 @@
#include <common.h>
#include <command.h>
#include <malloc.h>
+#include <mapmem.h>
#include <hw_sha.h>
#include <asm/io.h>
#include <asm/errno.h>
diff --git a/common/image-fdt.c b/common/image-fdt.c
index d9e4728..7e2da7b 100644
--- a/common/image-fdt.c
+++ b/common/image-fdt.c
@@ -14,6 +14,7 @@
#include <errno.h>
#include <image.h>
#include <libfdt.h>
+#include <mapmem.h>
#include <asm/io.h>
#ifndef CONFIG_SYS_FDT_PAD
diff --git a/common/image-fit.c b/common/image-fit.c
index 778d2a1..4eb4d42 100644
--- a/common/image-fit.c
+++ b/common/image-fit.c
@@ -16,6 +16,7 @@
#else
#include <common.h>
#include <errno.h>
+#include <mapmem.h>
#include <asm/io.h>
DECLARE_GLOBAL_DATA_PTR;
#endif /* !USE_HOSTCC*/
diff --git a/common/image.c b/common/image.c
index a911aa9..f3277c9 100644
--- a/common/image.c
+++ b/common/image.c
@@ -27,6 +27,7 @@
#include <environment.h>
#include <image.h>
+#include <mapmem.h>
#if defined(CONFIG_FIT) || defined(CONFIG_OF_LIBFDT)
#include <libfdt.h>
diff --git a/common/iotrace.c b/common/iotrace.c
index ced426e..2725563 100644
--- a/common/iotrace.c
+++ b/common/iotrace.c
@@ -7,6 +7,7 @@
#define IOTRACE_IMPL
#include <common.h>
+#include <mapmem.h>
#include <asm/io.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/common/lcd.c b/common/lcd.c
index f33942c..6982759 100644
--- a/common/lcd.c
+++ b/common/lcd.c
@@ -15,6 +15,7 @@
#include <linux/types.h>
#include <stdio_dev.h>
#include <lcd.h>
+#include <mapmem.h>
#include <watchdog.h>
#include <asm/unaligned.h>
#include <splash.h>
diff --git a/common/malloc_simple.c b/common/malloc_simple.c
index 64ae036..d445199 100644
--- a/common/malloc_simple.c
+++ b/common/malloc_simple.c
@@ -8,6 +8,7 @@
#include <common.h>
#include <malloc.h>
+#include <mapmem.h>
#include <asm/io.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/demo/demo-simple.c b/drivers/demo/demo-simple.c
index 2bcb7df..f069748 100644
--- a/drivers/demo/demo-simple.c
+++ b/drivers/demo/demo-simple.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <dm.h>
#include <dm-demo.h>
+#include <mapmem.h>
#include <asm/io.h>
static int simple_hello(struct udevice *dev, int ch)
diff --git a/drivers/i2c/i2c-uniphier-f.c b/drivers/i2c/i2c-uniphier-f.c
index 6707edd..ffa6ce5 100644
--- a/drivers/i2c/i2c-uniphier-f.c
+++ b/drivers/i2c/i2c-uniphier-f.c
@@ -13,6 +13,7 @@
#include <dm/root.h>
#include <i2c.h>
#include <fdtdec.h>
+#include <mapmem.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/i2c/i2c-uniphier.c b/drivers/i2c/i2c-uniphier.c
index 64a9ed8..760457f 100644
--- a/drivers/i2c/i2c-uniphier.c
+++ b/drivers/i2c/i2c-uniphier.c
@@ -13,6 +13,7 @@
#include <dm/root.h>
#include <i2c.h>
#include <fdtdec.h>
+#include <mapmem.h>
DECLARE_GLOBAL_DATA_PTR;
diff --git a/drivers/mtd/spi/sf_probe.c b/drivers/mtd/spi/sf_probe.c
index 4103723..ffc4caa 100644
--- a/drivers/mtd/spi/sf_probe.c
+++ b/drivers/mtd/spi/sf_probe.c
@@ -13,6 +13,7 @@
#include <errno.h>
#include <fdtdec.h>
#include <malloc.h>
+#include <mapmem.h>
#include <spi.h>
#include <spi_flash.h>
#include <asm/io.h>
diff --git a/drivers/serial/ns16550.c b/drivers/serial/ns16550.c
index 03beab5..67b1d60 100644
--- a/drivers/serial/ns16550.c
+++ b/drivers/serial/ns16550.c
@@ -8,6 +8,7 @@
#include <dm.h>
#include <errno.h>
#include <fdtdec.h>
+#include <mapmem.h>
#include <ns16550.h>
#include <serial.h>
#include <watchdog.h>
diff --git a/drivers/serial/serial_uniphier.c b/drivers/serial/serial_uniphier.c
index a6bd27f..2a12250 100644
--- a/drivers/serial/serial_uniphier.c
+++ b/drivers/serial/serial_uniphier.c
@@ -10,6 +10,7 @@
#include <asm/errno.h>
#include <dm/device.h>
#include <dm/platform_data/serial-uniphier.h>
+#include <mapmem.h>
#include <serial.h>
#include <fdtdec.h>
diff --git a/fs/fs.c b/fs/fs.c
index 483273f..ac0897d 100644
--- a/fs/fs.c
+++ b/fs/fs.c
@@ -17,6 +17,7 @@
#include <config.h>
#include <errno.h>
#include <common.h>
+#include <mapmem.h>
#include <part.h>
#include <ext4fs.h>
#include <fat.h>
diff --git a/include/common.h b/include/common.h
index 77c55c6..3ccc6f3 100644
--- a/include/common.h
+++ b/include/common.h
@@ -845,23 +845,6 @@ int cpu_disable(int nr);
int cpu_release(int nr, int argc, char * const argv[]);
#endif
-/* Define a null map_sysmem() if the architecture doesn't use it */
-# ifndef CONFIG_ARCH_MAP_SYSMEM
-static inline void *map_sysmem(phys_addr_t paddr, unsigned long len)
-{
- return (void *)(uintptr_t)paddr;
-}
-
-static inline void unmap_sysmem(const void *vaddr)
-{
-}
-
-static inline phys_addr_t map_to_sysmem(const void *ptr)
-{
- return (phys_addr_t)(uintptr_t)ptr;
-}
-# endif
-
#endif /* __ASSEMBLY__ */
#ifdef CONFIG_PPC
diff --git a/include/mapmem.h b/include/mapmem.h
new file mode 100644
index 0000000..42ef3e8
--- /dev/null
+++ b/include/mapmem.h
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2015 National Instruments
+ *
+ * (C) Copyright 2015
+ * Joe Hershberger <joe.hershberger at ni.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0
+ */
+
+#ifndef __MAPMEM_H
+#define __MAPMEM_H
+
+/* Define a null map_sysmem() if the architecture doesn't use it */
+# ifdef CONFIG_ARCH_MAP_SYSMEM
+#include <asm/io.h>
+# else
+static inline void *map_sysmem(phys_addr_t paddr, unsigned long len)
+{
+ return (void *)(uintptr_t)paddr;
+}
+
+static inline void unmap_sysmem(const void *vaddr)
+{
+}
+
+static inline phys_addr_t map_to_sysmem(const void *ptr)
+{
+ return (phys_addr_t)(uintptr_t)ptr;
+}
+# endif
+
+#endif /* __MAPMEM_H */
diff --git a/lib/trace.c b/lib/trace.c
index 711e5b5..ad5e07b 100644
--- a/lib/trace.c
+++ b/lib/trace.c
@@ -5,6 +5,7 @@
*/
#include <common.h>
+#include <mapmem.h>
#include <trace.h>
#include <asm/io.h>
#include <asm/sections.h>
diff --git a/test/compression.c b/test/compression.c
index ea2e4ad..7ef3a8c 100644
--- a/test/compression.c
+++ b/test/compression.c
@@ -10,6 +10,7 @@
#include <bootm.h>
#include <command.h>
#include <malloc.h>
+#include <mapmem.h>
#include <asm/io.h>
#include <u-boot/zlib.h>
diff --git a/test/dm/cmd_dm.c b/test/dm/cmd_dm.c
index 79a674e..195815e 100644
--- a/test/dm/cmd_dm.c
+++ b/test/dm/cmd_dm.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <dm.h>
#include <malloc.h>
+#include <mapmem.h>
#include <errno.h>
#include <asm/io.h>
#include <dm/root.h>
--
1.7.11.5
More information about the U-Boot
mailing list