board/qemu: add IBM s390x and Z arch support
authorAlexander Egorenkov <egorenar@linux.ibm.com>
Thu, 17 Sep 2020 04:07:55 +0000 (06:07 +0200)
committerYann E. MORIN <yann.morin.1998@free.fr>
Thu, 24 Sep 2020 20:55:37 +0000 (22:55 +0200)
Signed-off-by: Alexander Egorenkov <egorenar@linux.ibm.com>
[yann.morin.1998@free.fr:
  - don't force network range
  - don't forward TCP port
  - drop post-build script to add tty1
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
DEVELOPERS
board/qemu/s390x/readme.txt [new file with mode: 0644]
configs/qemu_s390x_defconfig [new file with mode: 0644]

index 403e42b81e6b00fcaa7578a24d491f3c1a36f1c7..eefc88c9aaae12d8086edb403df79fd32e7745e9 100644 (file)
@@ -149,6 +149,8 @@ F:  package/multipath-tools/
 
 N:     Alexander Egorenkov <egorenar@linux.ibm.com>
 F:     arch/Config.in.s390x
+F:     board/qemu/s390x/
+F:     configs/qemu_s390x_defconfig
 
 N:     Alexander Kurz <akurz@blala.de>
 F:     package/minimodem/
diff --git a/board/qemu/s390x/readme.txt b/board/qemu/s390x/readme.txt
new file mode 100644 (file)
index 0000000..63e899c
--- /dev/null
@@ -0,0 +1,8 @@
+Run the emulation with:
+
+  qemu-system-s390x -M s390-ccw-virtio -cpu max,zpci=on -m 4G -smp 2 \
+    -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw \
+    -append "rootwait root=/dev/vda net.ifnames=0 biosdevname=0" -display none -serial mon:stdio \
+    -net nic,model=virtio -net user # qemu_s390x_defconfig
+
+The login prompt will appear in the terminal that started Qemu.
diff --git a/configs/qemu_s390x_defconfig b/configs/qemu_s390x_defconfig
new file mode 100644 (file)
index 0000000..3bd407b
--- /dev/null
@@ -0,0 +1,23 @@
+# Architecture
+BR2_s390x=y
+
+# System
+BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
+BR2_SYSTEM_DHCP="eth0"
+
+# Filesystem
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)"
+BR2_TARGET_ROOTFS_EXT2=y
+# BR2_TARGET_ROOTFS_TAR is not set
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.8.7"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+
+# host-qemu for gitlab testing
+BR2_PACKAGE_HOST_QEMU=y
+BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE=y