aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/gemini/image/copy-kernel/Makefile
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2019-07-17 19:23:31 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2019-08-17 16:57:32 +0200
commita608380e421e601622e524e35f79b5c964781c64 (patch)
treee27321503cf8bba9043266b027ac9eb2970f339f /target/linux/gemini/image/copy-kernel/Makefile
parent860d6ce0ce19b96506597bd7befadda86f15b489 (diff)
downloadupstream-a608380e421e601622e524e35f79b5c964781c64.tar.gz
upstream-a608380e421e601622e524e35f79b5c964781c64.tar.bz2
upstream-a608380e421e601622e524e35f79b5c964781c64.zip
gemini: Add copy-kernel utility package
This package just contains a small Gemini-only assembler bootstrap loop to copy the kernel from the two fragments (previously zImage at 0x01600000 and initramdisk at 0x00800000) into one big zImage of up to 8 MB at 0x00400000. It will be built on demand from the Gemini image Makefile. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'target/linux/gemini/image/copy-kernel/Makefile')
-rw-r--r--target/linux/gemini/image/copy-kernel/Makefile32
1 files changed, 32 insertions, 0 deletions
diff --git a/target/linux/gemini/image/copy-kernel/Makefile b/target/linux/gemini/image/copy-kernel/Makefile
new file mode 100644
index 0000000000..155c35968c
--- /dev/null
+++ b/target/linux/gemini/image/copy-kernel/Makefile
@@ -0,0 +1,32 @@
+#
+# Makefile for Gemin kernel copy stub
+#
+# Copyright (C) 2019 Linus Walleij <linus.walleij@linaro.org>
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 as published
+# by the Free Software Foundation.
+#
+
+AS := $(CROSS_COMPILE)as
+OBJCOPY := $(CROSS_COMPILE)objcopy
+
+BIN_FLAGS := -O binary -S
+
+all: copy-kernel.bin
+
+# Don't build dependencies, this may die if $(CC) isn't gcc
+dep:
+
+install:
+
+%.o : %.S
+ $(AS) $(ASFLAGS) -k -o $@ $<
+
+%.bin: %.o
+ $(OBJCOPY) $(BIN_FLAGS) $< $@
+
+mrproper: clean
+
+clean:
+ rm -f copy-kernel.bin copy-kernel.o