summaryrefslogtreecommitdiff
path: root/target/linux/goldfish/image
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2009-06-14 20:42:33 +0000
committerFelix Fietkau <nbd@openwrt.org>2009-06-14 20:42:33 +0000
commitf88360279f91387dc61725226ad38c3c95d3790a (patch)
tree66d21f3483914eb7e674c45f3497ab8912094ac0 /target/linux/goldfish/image
parenta6d8f8be9e06c5ffb03f815c8c76ba743c64aa3d (diff)
downloadmtk-20170518-f88360279f91387dc61725226ad38c3c95d3790a.zip
mtk-20170518-f88360279f91387dc61725226ad38c3c95d3790a.tar.gz
mtk-20170518-f88360279f91387dc61725226ad38c3c95d3790a.tar.bz2
add the 'goldfish' target, useful for experimenting with virtual phone hardware (includes the emulator)
SVN-Revision: 16459
Diffstat (limited to 'target/linux/goldfish/image')
-rw-r--r--target/linux/goldfish/image/Makefile43
-rw-r--r--target/linux/goldfish/image/run-emulator.sh3
-rw-r--r--target/linux/goldfish/image/ubinize.cfg14
3 files changed, 60 insertions, 0 deletions
diff --git a/target/linux/goldfish/image/Makefile b/target/linux/goldfish/image/Makefile
new file mode 100644
index 0000000..bf871fb
--- /dev/null
+++ b/target/linux/goldfish/image/Makefile
@@ -0,0 +1,43 @@
+#
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+include $(INCLUDE_DIR)/image.mk
+
+JFFS2_BLOCKSIZE=124k
+JFFS2OPTS += -n -s 2048
+
+_PREFIX=openwrt-goldfish-
+
+define Image/BuildKernel
+ $(TARGET_CROSS)objcopy -O binary -R .note -R .comment -S \
+ $(LINUX_DIR)/arch/arm/boot/compressed/vmlinux $(BIN_DIR)/$(_PREFIX)kernel.bin
+ $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS), \
+ $(CP) $(LINUX_DIR)/usr/initramfs_data.cpio.gz, \
+ gzip -c < $(LINUX_DIR)/usr/initramfs_data.cpio > \
+ ) $(BIN_DIR)/$(_PREFIX)ramdisk.bin
+ $(CP) ./run-emulator.sh $(BIN_DIR)/
+endef
+
+define Image/Build/jffs2-124k
+ $(CP) ./ubinize.cfg $(KDIR)/
+ (cd $(KDIR); \
+ ubinize \
+ -o $(BIN_DIR)/$(_PREFIX)$(1).img \
+ -p 128KiB -m 2KiB -s 2KiB ubinize.cfg; \
+ )
+ nand_ecc \
+ $(BIN_DIR)/$(_PREFIX)$(1).img \
+ $(BIN_DIR)/$(_PREFIX)system.bin
+endef
+
+define Image/Build
+ $(call Image/Build/$(1),$(1))
+endef
+
+
+$(eval $(call BuildImage))
diff --git a/target/linux/goldfish/image/run-emulator.sh b/target/linux/goldfish/image/run-emulator.sh
new file mode 100644
index 0000000..652ec5e
--- /dev/null
+++ b/target/linux/goldfish/image/run-emulator.sh
@@ -0,0 +1,3 @@
+PREFIX=openwrt-goldfish-
+touch ${PREFIX}data.bin
+./goldfish-qemu/emulator -sysdir . -ramdisk ${PREFIX}ramdisk.bin -kernel ${PREFIX}kernel.bin -system ${PREFIX}system.bin -data ${PREFIX}data.bin -show-kernel -partition-size 100 -qemu -append "console=ttyS0 ubi.mtd=0 root=/dev/mtdblock3 rootfstype=jffs2 bootdelay=1 init=/etc/preinit" -net nic,vlan=0,model=smc91c111 -net user,vlan=0,hostname=OpenWrt
diff --git a/target/linux/goldfish/image/ubinize.cfg b/target/linux/goldfish/image/ubinize.cfg
new file mode 100644
index 0000000..d8d1fde
--- /dev/null
+++ b/target/linux/goldfish/image/ubinize.cfg
@@ -0,0 +1,14 @@
+[rootfs]
+# Volume mode (other option is static)
+mode=ubi
+# Source image
+image=root.jffs2-124k
+# Volume ID in UBI image
+vol_id=0
+# Allow for dynamic resize
+vol_type=dynamic
+# Volume name
+vol_name=rootfs
+# Autoresize volume at first mount
+vol_flags=autoresize
+