virt.c (48e4ba59a3756aad743982da16bf9b5120d91a0c) | virt.c (55c136599f512a86e3fec9f77b6b5a30a6b34cca) |
---|---|
1/* 2 * QEMU RISC-V VirtIO Board 3 * 4 * Copyright (c) 2017 SiFive, Inc. 5 * 6 * RISC-V machine with 16550a UART and VirtIO MMIO 7 * 8 * This program is free software; you can redistribute it and/or modify it --- 1321 unchanged lines hidden (view full) --- 1330} 1331 1332static void virt_machine_done(Notifier *notifier, void *data) 1333{ 1334 RISCVVirtState *s = container_of(notifier, RISCVVirtState, 1335 machine_done); 1336 const MemMapEntry *memmap = virt_memmap; 1337 MachineState *machine = MACHINE(s); | 1/* 2 * QEMU RISC-V VirtIO Board 3 * 4 * Copyright (c) 2017 SiFive, Inc. 5 * 6 * RISC-V machine with 16550a UART and VirtIO MMIO 7 * 8 * This program is free software; you can redistribute it and/or modify it --- 1321 unchanged lines hidden (view full) --- 1330} 1331 1332static void virt_machine_done(Notifier *notifier, void *data) 1333{ 1334 RISCVVirtState *s = container_of(notifier, RISCVVirtState, 1335 machine_done); 1336 const MemMapEntry *memmap = virt_memmap; 1337 MachineState *machine = MACHINE(s); |
1338 target_ulong start_addr = memmap[VIRT_DRAM].base; | 1338 hwaddr start_addr = memmap[VIRT_DRAM].base; |
1339 target_ulong firmware_end_addr, kernel_start_addr; 1340 const char *firmware_name = riscv_default_firmware_name(&s->soc[0]); 1341 uint64_t fdt_load_addr; 1342 uint64_t kernel_entry = 0; 1343 BlockBackend *pflash_blk0; 1344 1345 /* 1346 * An user provided dtb must include everything, including --- 15 unchanged lines hidden (view full) --- 1362 exit(1); 1363 } 1364 } else { 1365 machine->firmware = g_strdup("none"); 1366 } 1367 } 1368 1369 firmware_end_addr = riscv_find_and_load_firmware(machine, firmware_name, | 1339 target_ulong firmware_end_addr, kernel_start_addr; 1340 const char *firmware_name = riscv_default_firmware_name(&s->soc[0]); 1341 uint64_t fdt_load_addr; 1342 uint64_t kernel_entry = 0; 1343 BlockBackend *pflash_blk0; 1344 1345 /* 1346 * An user provided dtb must include everything, including --- 15 unchanged lines hidden (view full) --- 1362 exit(1); 1363 } 1364 } else { 1365 machine->firmware = g_strdup("none"); 1366 } 1367 } 1368 1369 firmware_end_addr = riscv_find_and_load_firmware(machine, firmware_name, |
1370 start_addr, NULL); | 1370 &start_addr, NULL); |
1371 1372 pflash_blk0 = pflash_cfi01_get_blk(s->flash[0]); 1373 if (pflash_blk0) { 1374 if (machine->firmware && !strcmp(machine->firmware, "none") && 1375 !kvm_enabled()) { 1376 /* 1377 * Pflash was supplied but bios is none and not KVM guest, 1378 * let's overwrite the address we jump to after reset to --- 466 unchanged lines hidden --- | 1371 1372 pflash_blk0 = pflash_cfi01_get_blk(s->flash[0]); 1373 if (pflash_blk0) { 1374 if (machine->firmware && !strcmp(machine->firmware, "none") && 1375 !kvm_enabled()) { 1376 /* 1377 * Pflash was supplied but bios is none and not KVM guest, 1378 * let's overwrite the address we jump to after reset to --- 466 unchanged lines hidden --- |