aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Lutomirski <luto@kernel.org>2015-10-29 17:50:16 -0700
committerAndy Lutomirski <luto@kernel.org>2015-10-29 17:50:16 -0700
commitac7baea71cf9b79638c07c91850dc34cac5689b2 (patch)
treeb1e20776705873abe05f443e1f0cccc8c15985b4
parentd0560e75a00128315521d85475570790a3040adf (diff)
downloadvirtme-ac7baea71cf9b79638c07c91850dc34cac5689b2.tar.gz
Add sparc64 support
Signed-off-by: Andy Lutomirski <luto@kernel.org>
-rw-r--r--virtme/architectures.py25
-rw-r--r--virtme/commands/run.py6
2 files changed, 27 insertions, 4 deletions
diff --git a/virtme/architectures.py b/virtme/architectures.py
index 61342d4..a5e9389 100644
--- a/virtme/architectures.py
+++ b/virtme/architectures.py
@@ -37,6 +37,10 @@ class Arch(object):
return []
@staticmethod
+ def qemu_nodisplay_args():
+ return ['-vga', 'none', '-display', 'none']
+
+ @staticmethod
def config_base():
return []
@@ -194,6 +198,26 @@ class Arch_ppc64(Arch):
# Apparently SLOF (QEMU's bundled firmware?) can't boot a zImage.
return 'vmlinux'
+class Arch_sparc64(Arch):
+ def __init__(self, name):
+ Arch.__init__(self, name)
+
+ self.defconfig_target = 'sparc64_defconfig'
+ self.qemuname = 'sparc64'
+ self.linuxname = 'sparc'
+
+ def qemuargs(self, is_native):
+ ret = Arch.qemuargs(is_native)
+
+ return ret
+
+ def kimg_path(self):
+ return 'arch/sparc/boot/image'
+
+ def qemu_nodisplay_args(self):
+ # qemu-system-sparc fails to boot if -display none is set.
+ return ['-nographic', '-vga', 'none']
+
class Arch_s390x(Arch):
def __init__(self, name):
Arch.__init__(self, name)
@@ -229,6 +253,7 @@ ARCHES = {
'arm': Arch_arm,
'aarch64': Arch_aarch64,
'ppc64': Arch_ppc64,
+ 'sparc64': Arch_sparc64,
's390x': Arch_s390x,
}
diff --git a/virtme/commands/run.py b/virtme/commands/run.py
index 4885924..7d269ff 100644
--- a/virtme/commands/run.py
+++ b/virtme/commands/run.py
@@ -253,8 +253,7 @@ def main():
kernelargs.extend(arch.earlyconsole_args())
kernelargs.extend(arch.serial_console_args())
- qemuargs.extend(['-vga', 'none'])
- qemuargs.extend(['-display', 'none'])
+ qemuargs.extend(arch.qemu_nodisplay_args())
# PS/2 probing is slow; give the kernel a hint to speed it up.
kernelargs.extend(['psmouse.proto=exps'])
@@ -303,8 +302,7 @@ def main():
need_initramfs = True # TODO: Fix this
# Turn off default I/O
- qemuargs.extend(['-vga', 'none'])
- qemuargs.extend(['-display', 'none'])
+ qemuargs.extend(arch.qemu_nodisplay_args())
# Send kernel logs to stderr
qemuargs.extend(['-serial', 'none'])