@@ -48,6 +48,7 @@ def __init__(self):
4848 self .interactive = False
4949 self .kernel = None
5050 self .kernel_dir = None
51+ self .supports_efi = False
5152 # It may be tempting to use self.use_kvm during initialization of
5253 # subclasses to set certain properties but the user can explicitly opt
5354 # out of KVM after instantiation, so any decisions based on it should
@@ -318,9 +319,6 @@ def run(self):
318319
319320 self ._run_fg ()
320321
321- def supports_efi (self ):
322- return False
323-
324322
325323class ARMQEMURunner (QEMURunner ):
326324
@@ -395,6 +393,7 @@ def __init__(self):
395393 super ().__init__ ()
396394
397395 self .cmdline += ['console=ttyAMA0' , 'earlycon' ]
396+ self .supports_efi = True
398397
399398 self ._default_kernel_path = Path ('arch/arm64/boot/Image.gz' )
400399 self ._initrd_arch = 'arm64'
@@ -461,19 +460,15 @@ def run(self):
461460
462461 super ().run ()
463462
464- def supports_efi (self ):
465- return True
466-
467463
468464class ARM64BEQEMURunner (ARM64QEMURunner ):
469465
470466 def __init__ (self ):
471467 super ().__init__ ()
472468
473- self ._initrd_arch = 'arm64be'
469+ self .supports_efi = False
474470
475- def supports_efi (self ):
476- return False
471+ self ._initrd_arch = 'arm64be'
477472
478473
479474class M68KQEMURunner (QEMURunner ):
@@ -623,10 +618,9 @@ class X8664QEMURunner(X86QEMURunner):
623618 def __init__ (self ):
624619 super ().__init__ ()
625620
626- self ._initrd_arch = self . _qemu_arch = 'x86_64'
621+ self .supports_efi = True
627622
628- def supports_efi (self ):
629- return True
623+ self ._initrd_arch = self ._qemu_arch = 'x86_64'
630624
631625 def run (self ):
632626 if not self .use_kvm :
@@ -748,7 +742,7 @@ def parse_arguments():
748742 runner .cmdline += args .append
749743
750744 if args .efi :
751- runner .efi = runner .supports_efi ()
745+ runner .efi = runner .supports_efi
752746 if not runner .efi :
753747 utils .yellow (
754748 f"EFI boot requested on unsupported architecture ('{ args .architecture } '), ignoring..."
0 commit comments