Skip to content

Commit

Permalink
testing: support riscv64
Browse files Browse the repository at this point in the history
  • Loading branch information
moodyhunter committed Aug 15, 2024
1 parent de99f5d commit e603a18
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 5 deletions.
30 changes: 25 additions & 5 deletions tools/testing/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,13 +101,20 @@ def main():
builder.memory(args.memory_size)
builder.smp(args.smp)
builder.machine(QEMU_ARCH_ARGS[args.arch]['machine'])
builder.cpu(QEMU_ARCH_ARGS[args.arch]['cpu'])
builder.bios(QEMU_ARCH_ARGS[args.arch]['bios'])

if "cpu" in QEMU_ARCH_ARGS[args.arch]:
builder.cpu(QEMU_ARCH_ARGS[args.arch]['cpu'])

if "bios" in QEMU_ARCH_ARGS[args.arch]:
builder.bios(QEMU_ARCH_ARGS[args.arch]['bios'])

builder.chardev("stdio", id='serial0', logfile=args.serial_log_file)
builder.chardev('file', id='syslog', path=args.kernel_log_file)
builder.serial('chardev:serial0')

builder.chardev('file', id='syslog', path=args.kernel_log_file)
builder.serial('chardev:syslog')
builder.drive(format='raw', file='fat:rw:uefi-files/')

builder.drive(id='hd0', format='raw', file='fat:rw:uefi-files/')

if args.kvm:
builder.accel('kvm')
Expand All @@ -121,7 +128,20 @@ def main():
builder.add_raw_arg('-S')

CMDLINE = KernelCommandLine()
CMDLINE.printk_console = 'serial_com2'

if args.arch == "riscv64":
builder.device('qemu-xhci')
builder.device('usb-kbd')
builder.device('usb-mouse')
builder.device('ramfb')
builder.device('virtio-scsi-pci')
builder.device('scsi-hd,drive=hd0')
drive_kwargs = {'if': 'pflash', 'unit': '0', 'format': 'raw', 'file': '/opt/ovmf-riscv64.fd'}
builder.drive(**drive_kwargs)

if args.arch == 'x86_64':
CMDLINE.printk_console = 'serial_com2'

CMDLINE.mos_tests = args.kernel_tests
CMDLINE.init_args = '-j'
CMDLINE.debug.extend(args.kernel_debug)
Expand Down
5 changes: 5 additions & 0 deletions tools/testing/utils/QemuProcess.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ class QemuDeadError(Exception):
'cpu': 'max',
'bios': '/usr/share/ovmf/x64/OVMF.4m.fd',
},
'riscv64': {
'machine': 'virt',
'cpu': 'rv64',
},
}


Expand Down Expand Up @@ -95,6 +99,7 @@ class QemuProcessBuilder:
'accel': '-accel',
'serial': '-serial',
'display': '-display',
'device': '-device',
}

def __init__(self, qemu_path: str):
Expand Down

0 comments on commit e603a18

Please sign in to comment.