summaryrefslogtreecommitdiffstats
path: root/arch/sandbox
diff options
context:
space:
mode:
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2009-10-22 14:21:29 +0200
committerJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2009-10-22 14:21:29 +0200
commitb4521685bf00398a4db0d3abe28376bd8f1b31ed (patch)
tree91c2097bc5f467c15ff8b404b288b8f916d80541 /arch/sandbox
parente2a7b79cfc63c8a5bdafb6f333fedf35b6b8a380 (diff)
downloadbarebox-b4521685bf00398a4db0d3abe28376bd8f1b31ed.tar.gz
barebox-b4521685bf00398a4db0d3abe28376bd8f1b31ed.tar.xz
[SANDBOX] Move include/asm-sandbox/arch-* to arch/sandbox/*/include/mach
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Diffstat (limited to 'arch/sandbox')
-rw-r--r--arch/sandbox/Makefile26
-rw-r--r--arch/sandbox/mach-sandbox/include/mach/hostfile.h15
-rw-r--r--arch/sandbox/mach-sandbox/include/mach/linux.h23
-rw-r--r--arch/sandbox/os/Makefile12
-rw-r--r--arch/sandbox/os/common.c4
5 files changed, 58 insertions, 22 deletions
diff --git a/arch/sandbox/Makefile b/arch/sandbox/Makefile
index 5501b104ba..57fac202f6 100644
--- a/arch/sandbox/Makefile
+++ b/arch/sandbox/Makefile
@@ -1,7 +1,7 @@
CPPFLAGS += -fno-strict-aliasing
-machine-y := sandbox
+machine-y := sandbox
board-y := sandbox
lds-y := board/sandbox/u-boot.lds
@@ -22,10 +22,13 @@ CFLAGS += -Dmalloc=u_boot_malloc \
-Dglob=u_boot_glob -Dglobfree=u_boot_globfree \
-Dioctl=u_boot_ioctl
-ifeq ($(incdir-y),)
-incdir-y := $(machine-y)
+machdirs := $(patsubst %,arch/sandbox/mach-%/,$(machine-y))
+
+ifeq ($(KBUILD_SRC),)
+CPPFLAGS += $(patsubst %,-I%include,$(machdirs))
+else
+CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(machdirs))
endif
-INCDIR := arch-$(incdir-y)
SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
-e s/arm.*/arm/ -e s/sa110/arm/ \
@@ -50,24 +53,10 @@ endif
CPPFLAGS += -DELF_CLASS="$(ELF_CLASS)"
export ELF_FORMAT ELF_ARCH SUBARCH ELF_CLASS
-# Update machine arch and proc symlinks if something which affects
-# them changed. We use .arch to indicate when they were updated
-# last, otherwise make uses the target directory mtime.
-
-include/asm-sandbox/.arch: $(wildcard include/config/arch/*.h) include/config/auto.conf
- @echo ' SYMLINK include/asm-sandbox/arch -> include/asm-sandbox/$(INCDIR)'
-ifneq ($(KBUILD_SRC),)
- $(Q)mkdir -p include/asm-sandbox
- $(Q)ln -fsn $(srctree)/include/asm-sandbox/$(INCDIR) include/asm-sandbox/arch
-else
- $(Q)ln -fsn $(INCDIR) include/asm-sandbox/arch
-endif
- @touch $@
archprepare: maketools
PHONY += maketools
-maketools: include/asm-sandbox/.arch
cmd_uboot__ = $(CC) -o $@ -Wl,-T,$(uboot-lds) \
-Wl,--start-group $(uboot-common) -Wl,--end-group \
@@ -76,4 +65,3 @@ cmd_uboot__ = $(CC) -o $@ -Wl,-T,$(uboot-lds) \
common-y += board/sandbox/ arch/sandbox/os/
CLEAN_FILES += board/sandbox/u-boot.lds
-MRPROPER_FILES += include/asm-sandbox/arch
diff --git a/arch/sandbox/mach-sandbox/include/mach/hostfile.h b/arch/sandbox/mach-sandbox/include/mach/hostfile.h
new file mode 100644
index 0000000000..30f9499c03
--- /dev/null
+++ b/arch/sandbox/mach-sandbox/include/mach/hostfile.h
@@ -0,0 +1,15 @@
+#ifndef __ASM_ARCH_HOSTFILE_H
+#define __ASM_ARCH_HOSTFILE_H
+
+struct hf_platform_data {
+ int fd;
+ size_t size;
+ unsigned long map_base;
+ char *filename;
+ char *name;
+};
+
+int u_boot_register_filedev(struct hf_platform_data *hf);
+
+#endif /* __ASM_ARCH_HOSTFILE_H */
+
diff --git a/arch/sandbox/mach-sandbox/include/mach/linux.h b/arch/sandbox/mach-sandbox/include/mach/linux.h
new file mode 100644
index 0000000000..09376413e9
--- /dev/null
+++ b/arch/sandbox/mach-sandbox/include/mach/linux.h
@@ -0,0 +1,23 @@
+#ifndef __ASM_ARCH_LINUX_H
+#define __ASM_ARCH_LINUX_H
+
+int linux_register_device(const char *name, void *start, void *end);
+int tap_alloc(char *dev);
+uint64_t linux_get_time(void);
+int linux_read(int fd, void *buf, size_t count);
+int linux_read_nonblock(int fd, void *buf, size_t count);
+ssize_t linux_write(int fd, const void *buf, size_t count);
+off_t linux_lseek(int fildes, off_t offset);
+int linux_getc (void);
+void linux_putc (const char c);
+int linux_tstc(int fd);
+
+int u_boot_register_console(char *name_template, int stdinfd, int stdoutfd);
+
+struct linux_console_data {
+ int stdinfd;
+ int stdoutfd;
+ unsigned int flags;
+};
+
+#endif /* __ASM_ARCH_LINUX_H */
diff --git a/arch/sandbox/os/Makefile b/arch/sandbox/os/Makefile
index 117f05eba0..2980301e15 100644
--- a/arch/sandbox/os/Makefile
+++ b/arch/sandbox/os/Makefile
@@ -1,4 +1,14 @@
-CPPFLAGS := -Iinclude/asm/arch -P
+machine-y := sandbox
+
+machdirs := $(patsubst %,arch/sandbox/mach-%/,$(machine-y))
+
+ifeq ($(KBUILD_SRC),)
+CPPFLAGS := $(patsubst %,-I%include,$(machdirs))
+else
+CPPFLAGS = $(patsubst %,-I$(srctree)/%include,$(machdirs))
+endif
+
+CPPFLAGS += -P
CFLAGS := -Wall
NOSTDINC_FLAGS :=
diff --git a/arch/sandbox/os/common.c b/arch/sandbox/os/common.c
index 72e4c8d702..e89d8a6d36 100644
--- a/arch/sandbox/os/common.c
+++ b/arch/sandbox/os/common.c
@@ -47,8 +47,8 @@
/*
* ...except the ones needed to connect with U-Boot
*/
-#include <linux.h>
-#include <hostfile.h>
+#include <mach/linux.h>
+#include <mach/hostfile.h>
static struct termios term_orig, term_vi;
static char erase_char; /* the users erase character */