mac_oldworld: Allow specifying nvram backing store
Add a way to set a backing store for the mac_nvram. Use -drive file=nvram.img,format=raw,if=mtd to specify backing file where nvram.img must be MACIO_NVRAM_SIZE which is 8192 bytes. Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <1aadee8f0ca0f56cf1b7c45c3944676a07d91de9.1675297286.git.balaton@eik.bme.hu> Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
This commit is contained in:
parent
1f7888e225
commit
5df3eb4d36
@ -102,7 +102,7 @@ static void ppc_heathrow_init(MachineState *machine)
|
|||||||
DeviceState *dev, *pic_dev, *grackle_dev;
|
DeviceState *dev, *pic_dev, *grackle_dev;
|
||||||
BusState *adb_bus;
|
BusState *adb_bus;
|
||||||
uint16_t ppc_boot_device;
|
uint16_t ppc_boot_device;
|
||||||
DriveInfo *hd[MAX_IDE_BUS * MAX_IDE_DEVS];
|
DriveInfo *dinfo, *hd[MAX_IDE_BUS * MAX_IDE_DEVS];
|
||||||
void *fw_cfg;
|
void *fw_cfg;
|
||||||
uint64_t tbfreq = kvm_enabled() ? kvmppc_get_tbfreq() : TBFREQ;
|
uint64_t tbfreq = kvm_enabled() ? kvmppc_get_tbfreq() : TBFREQ;
|
||||||
|
|
||||||
@ -245,6 +245,12 @@ static void ppc_heathrow_init(MachineState *machine)
|
|||||||
qdev_prop_set_chr(dev, "chrA", serial_hd(0));
|
qdev_prop_set_chr(dev, "chrA", serial_hd(0));
|
||||||
qdev_prop_set_chr(dev, "chrB", serial_hd(1));
|
qdev_prop_set_chr(dev, "chrB", serial_hd(1));
|
||||||
|
|
||||||
|
dinfo = drive_get(IF_MTD, 0, 0);
|
||||||
|
if (dinfo) {
|
||||||
|
dev = DEVICE(object_resolve_path_component(macio, "nvram"));
|
||||||
|
qdev_prop_set_drive(dev, "drive", blk_by_legacy_dinfo(dinfo));
|
||||||
|
}
|
||||||
|
|
||||||
pci_realize_and_unref(PCI_DEVICE(macio), pci_bus, &error_fatal);
|
pci_realize_and_unref(PCI_DEVICE(macio), pci_bus, &error_fatal);
|
||||||
|
|
||||||
pic_dev = DEVICE(object_resolve_path_component(macio, "pic"));
|
pic_dev = DEVICE(object_resolve_path_component(macio, "pic"));
|
||||||
|
Loading…
Reference in New Issue
Block a user