Using initramfs for v86d.
authorSeokYeon Hwang <syeon.hwang@samsung.com>
Wed, 9 Apr 2014 05:30:35 +0000 (14:30 +0900)
committerSeokYeon Hwang <syeon.hwang@samsung.com>
Wed, 9 Apr 2014 05:42:32 +0000 (14:42 +0900)
Change-Id: I299da86a1239b6add1befa39c92d20ba4be07069
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
arch/x86/configs/i386_tizen_emul_defconfig
ramfs/busybox [new file with mode: 0755]
ramfs/init [new file with mode: 0644]
ramfs/initramfs [new file with mode: 0755]
ramfs/v86d [new file with mode: 0755]

index 768b8f5eeca3deea0037c51fa0a190539cd021a4..642d92586179ac1b0c8a198bb52c7ded466e7184 100644 (file)
@@ -158,7 +158,22 @@ CONFIG_UIDGID_STRICT_TYPE_CHECKS=y
 CONFIG_MM_OWNER=y
 # CONFIG_SYSFS_DEPRECATED is not set
 CONFIG_RELAY=y
-# CONFIG_BLK_DEV_INITRD is not set
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE="ramfs/initramfs"
+CONFIG_INITRAMFS_ROOT_UID=0
+CONFIG_INITRAMFS_ROOT_GID=0
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_RD_XZ=y
+CONFIG_RD_LZO=y
+CONFIG_RD_LZ4=y
+CONFIG_INITRAMFS_COMPRESSION_NONE=y
+# CONFIG_INITRAMFS_COMPRESSION_GZIP is not set
+# CONFIG_INITRAMFS_COMPRESSION_BZIP2 is not set
+# CONFIG_INITRAMFS_COMPRESSION_LZMA is not set
+# CONFIG_INITRAMFS_COMPRESSION_XZ is not set
+# CONFIG_INITRAMFS_COMPRESSION_LZO is not set
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 CONFIG_SYSCTL=y
 CONFIG_ANON_INODES=y
@@ -375,8 +390,9 @@ CONFIG_MICROCODE_INTEL=y
 CONFIG_MICROCODE_AMD=y
 CONFIG_MICROCODE_OLD_INTERFACE=y
 CONFIG_MICROCODE_INTEL_LIB=y
-# CONFIG_MICROCODE_INTEL_EARLY is not set
-# CONFIG_MICROCODE_AMD_EARLY is not set
+CONFIG_MICROCODE_INTEL_EARLY=y
+CONFIG_MICROCODE_AMD_EARLY=y
+CONFIG_MICROCODE_EARLY=y
 CONFIG_X86_MSR=y
 CONFIG_X86_CPUID=y
 # CONFIG_NOHIGHMEM is not set
@@ -483,6 +499,7 @@ CONFIG_ACPI_PROCESSOR=y
 # CONFIG_ACPI_PROCESSOR_AGGREGATOR is not set
 CONFIG_ACPI_THERMAL=y
 # CONFIG_ACPI_CUSTOM_DSDT is not set
+# CONFIG_ACPI_INITRD_TABLE_OVERRIDE is not set
 CONFIG_ACPI_BLACKLIST_YEAR=0
 # CONFIG_ACPI_DEBUG is not set
 CONFIG_ACPI_PCI_SLOT=y
@@ -3524,6 +3541,7 @@ CONFIG_AUDIT_GENERIC=y
 CONFIG_ZLIB_INFLATE=y
 CONFIG_LZO_COMPRESS=y
 CONFIG_LZO_DECOMPRESS=y
+CONFIG_LZ4_DECOMPRESS=y
 CONFIG_XZ_DEC=y
 CONFIG_XZ_DEC_X86=y
 CONFIG_XZ_DEC_POWERPC=y
@@ -3533,6 +3551,12 @@ CONFIG_XZ_DEC_ARMTHUMB=y
 CONFIG_XZ_DEC_SPARC=y
 CONFIG_XZ_DEC_BCJ=y
 # CONFIG_XZ_DEC_TEST is not set
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_DECOMPRESS_BZIP2=y
+CONFIG_DECOMPRESS_LZMA=y
+CONFIG_DECOMPRESS_XZ=y
+CONFIG_DECOMPRESS_LZO=y
+CONFIG_DECOMPRESS_LZ4=y
 CONFIG_HAS_IOMEM=y
 CONFIG_HAS_IOPORT=y
 CONFIG_HAS_DMA=y
diff --git a/ramfs/busybox b/ramfs/busybox
new file mode 100755 (executable)
index 0000000..dfe2d8f
Binary files /dev/null and b/ramfs/busybox differ
diff --git a/ramfs/init b/ramfs/init
new file mode 100644 (file)
index 0000000..7e0cd17
--- /dev/null
@@ -0,0 +1,19 @@
+#!/bin/sh
+# SeokYeon Hwang (syeon.hwang@samsung.com)
+
+COLOR='\033[1;34m' # light blue
+NO_COLOR='\033[0m'
+
+echo -e "${COLOR}Mount proc filesystem${NO_COLOR}"
+mount -t proc proc /proc
+
+echo -e "${COLOR}Mount emulator image${NO_COLOR}"
+mount -o rw /dev/vda /new_root
+
+echo -e "${COLOR}Mount dev filesystem${NO_COLOR}"
+/bin/mkdir -p /new_root/dev
+/bin/mount -t devtmpfs devtmpfs /new_root/dev
+/bin/mkdir -p /new_root/sys
+
+echo -e "${COLOR}Switching root${NO_COLOR}"
+exec switch_root -c /dev/console /new_root /sbin/init
diff --git a/ramfs/initramfs b/ramfs/initramfs
new file mode 100755 (executable)
index 0000000..0a3a2b7
--- /dev/null
@@ -0,0 +1,31 @@
+# SeokYeon Hwang (syeon.hwang@samsung.com)
+
+dir /dev 0755 0 0
+
+nod /dev/console 0600 0 0 c 5 1
+nod /dev/zero 0600 0 0 c 1 5
+nod /dev/mem 0600 0 0 c 1 1
+nod /dev/vda 0600 0 0 b 254 0
+
+dir /root 0700 0 0
+dir /sbin 0755 0 0
+dir /bin 0755 0 0
+dir /new_root 0755 0 0
+dir /proc 0755 0 0
+
+file /sbin/v86d ramfs/v86d 0755 0 0
+file /init ramfs/init 0755 0 0
+file /bin/busybox ramfs/busybox 0755 0 0
+
+slink /bin/sh /bin/busybox 0755 0 0
+slink /sbin/init /bin/busybox 0755 0 0
+slink /bin/mount /bin/busybox 0755 0 0
+slink /bin/switch_root /bin/busybox 0755 0 0
+slink /bin/mkdir /bin/busybox 0755 0 0
+
+#slink /bin/insmod /bin/busybox 0755 0 0
+#slink /bin/cat /bin/busybox 0755 0 0
+#slink /bin/cp /bin/busybox 0755 0 0
+#slink /bin/mknod /bin/busybox 0755 0 0
+#slink /bin/ln /bin/busybox 0755 0 0
+
diff --git a/ramfs/v86d b/ramfs/v86d
new file mode 100755 (executable)
index 0000000..8ed42a8
Binary files /dev/null and b/ramfs/v86d differ