mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-17 15:12:07 -06:00
hw/i386/pc: don't carry FDC from pc_basic_device_init() to pc_cmos_init()
Thanks to the last patch, pc_cmos_init() doesn't need the (optional) board-default FDC any longer as an input parameter. Update pc_basic_device_init() not to hand it back to pc_init1() / pc_q35_init(), and update the latter not to carry the FDC to pc_cmos_init(). This simplifies the code. pc_init1() | pc_q35_init() pc_basic_device_init() pc_cmos_init() Cc: Jan Tomko <jtomko@redhat.com> Cc: John Snow <jsnow@redhat.com> Cc: Markus Armbruster <armbru@redhat.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: John Snow <jsnow@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
b86f46132c
commit
220a884642
4 changed files with 9 additions and 11 deletions
|
@ -430,7 +430,7 @@ static void pc_cmos_init_late(void *opaque)
|
||||||
|
|
||||||
void pc_cmos_init(ram_addr_t ram_size, ram_addr_t above_4g_mem_size,
|
void pc_cmos_init(ram_addr_t ram_size, ram_addr_t above_4g_mem_size,
|
||||||
const char *boot_device, MachineState *machine,
|
const char *boot_device, MachineState *machine,
|
||||||
ISADevice *floppy, BusState *idebus0, BusState *idebus1,
|
BusState *idebus0, BusState *idebus1,
|
||||||
ISADevice *s)
|
ISADevice *s)
|
||||||
{
|
{
|
||||||
int val;
|
int val;
|
||||||
|
@ -1463,7 +1463,6 @@ static const MemoryRegionOps ioportF0_io_ops = {
|
||||||
void pc_basic_device_init(ISABus *isa_bus, qemu_irq *gsi,
|
void pc_basic_device_init(ISABus *isa_bus, qemu_irq *gsi,
|
||||||
ISADevice **rtc_state,
|
ISADevice **rtc_state,
|
||||||
bool create_fdctrl,
|
bool create_fdctrl,
|
||||||
ISADevice **floppy,
|
|
||||||
bool no_vmport,
|
bool no_vmport,
|
||||||
uint32 hpet_irqs)
|
uint32 hpet_irqs)
|
||||||
{
|
{
|
||||||
|
@ -1559,7 +1558,9 @@ void pc_basic_device_init(ISABus *isa_bus, qemu_irq *gsi,
|
||||||
fd[i] = drive_get(IF_FLOPPY, 0, i);
|
fd[i] = drive_get(IF_FLOPPY, 0, i);
|
||||||
create_fdctrl |= !!fd[i];
|
create_fdctrl |= !!fd[i];
|
||||||
}
|
}
|
||||||
*floppy = create_fdctrl ? fdctrl_init_isa(isa_bus, fd) : NULL;
|
if (create_fdctrl) {
|
||||||
|
fdctrl_init_isa(isa_bus, fd);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void pc_nic_init(ISABus *isa_bus, PCIBus *pci_bus)
|
void pc_nic_init(ISABus *isa_bus, PCIBus *pci_bus)
|
||||||
|
|
|
@ -94,7 +94,6 @@ static void pc_init1(MachineState *machine)
|
||||||
DriveInfo *hd[MAX_IDE_BUS * MAX_IDE_DEVS];
|
DriveInfo *hd[MAX_IDE_BUS * MAX_IDE_DEVS];
|
||||||
BusState *idebus[MAX_IDE_BUS];
|
BusState *idebus[MAX_IDE_BUS];
|
||||||
ISADevice *rtc_state;
|
ISADevice *rtc_state;
|
||||||
ISADevice *floppy;
|
|
||||||
MemoryRegion *ram_memory;
|
MemoryRegion *ram_memory;
|
||||||
MemoryRegion *pci_memory;
|
MemoryRegion *pci_memory;
|
||||||
MemoryRegion *rom_memory;
|
MemoryRegion *rom_memory;
|
||||||
|
@ -241,7 +240,7 @@ static void pc_init1(MachineState *machine)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* init basic PC hardware */
|
/* init basic PC hardware */
|
||||||
pc_basic_device_init(isa_bus, gsi, &rtc_state, true, &floppy,
|
pc_basic_device_init(isa_bus, gsi, &rtc_state, true,
|
||||||
(pc_machine->vmport != ON_OFF_AUTO_ON), 0x4);
|
(pc_machine->vmport != ON_OFF_AUTO_ON), 0x4);
|
||||||
|
|
||||||
pc_nic_init(isa_bus, pci_bus);
|
pc_nic_init(isa_bus, pci_bus);
|
||||||
|
@ -273,7 +272,7 @@ static void pc_init1(MachineState *machine)
|
||||||
}
|
}
|
||||||
|
|
||||||
pc_cmos_init(below_4g_mem_size, above_4g_mem_size, machine->boot_order,
|
pc_cmos_init(below_4g_mem_size, above_4g_mem_size, machine->boot_order,
|
||||||
machine, floppy, idebus[0], idebus[1], rtc_state);
|
machine, idebus[0], idebus[1], rtc_state);
|
||||||
|
|
||||||
if (pci_enabled && usb_enabled()) {
|
if (pci_enabled && usb_enabled()) {
|
||||||
pci_create_simple(pci_bus, piix3_devfn + 2, "piix3-usb-uhci");
|
pci_create_simple(pci_bus, piix3_devfn + 2, "piix3-usb-uhci");
|
||||||
|
|
|
@ -73,7 +73,6 @@ static void pc_q35_init(MachineState *machine)
|
||||||
PCIDevice *lpc;
|
PCIDevice *lpc;
|
||||||
BusState *idebus[MAX_SATA_PORTS];
|
BusState *idebus[MAX_SATA_PORTS];
|
||||||
ISADevice *rtc_state;
|
ISADevice *rtc_state;
|
||||||
ISADevice *floppy;
|
|
||||||
MemoryRegion *pci_memory;
|
MemoryRegion *pci_memory;
|
||||||
MemoryRegion *rom_memory;
|
MemoryRegion *rom_memory;
|
||||||
MemoryRegion *ram_memory;
|
MemoryRegion *ram_memory;
|
||||||
|
@ -249,7 +248,7 @@ static void pc_q35_init(MachineState *machine)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* init basic PC hardware */
|
/* init basic PC hardware */
|
||||||
pc_basic_device_init(isa_bus, gsi, &rtc_state, !mc->no_floppy, &floppy,
|
pc_basic_device_init(isa_bus, gsi, &rtc_state, !mc->no_floppy,
|
||||||
(pc_machine->vmport != ON_OFF_AUTO_ON), 0xff0104);
|
(pc_machine->vmport != ON_OFF_AUTO_ON), 0xff0104);
|
||||||
|
|
||||||
/* connect pm stuff to lpc */
|
/* connect pm stuff to lpc */
|
||||||
|
@ -278,7 +277,7 @@ static void pc_q35_init(MachineState *machine)
|
||||||
8, NULL, 0);
|
8, NULL, 0);
|
||||||
|
|
||||||
pc_cmos_init(below_4g_mem_size, above_4g_mem_size, machine->boot_order,
|
pc_cmos_init(below_4g_mem_size, above_4g_mem_size, machine->boot_order,
|
||||||
machine, floppy, idebus[0], idebus[1], rtc_state);
|
machine, idebus[0], idebus[1], rtc_state);
|
||||||
|
|
||||||
/* the rest devices to which pci devfn is automatically assigned */
|
/* the rest devices to which pci devfn is automatically assigned */
|
||||||
pc_vga_init(isa_bus, host_bus);
|
pc_vga_init(isa_bus, host_bus);
|
||||||
|
|
|
@ -199,13 +199,12 @@ DeviceState *pc_vga_init(ISABus *isa_bus, PCIBus *pci_bus);
|
||||||
void pc_basic_device_init(ISABus *isa_bus, qemu_irq *gsi,
|
void pc_basic_device_init(ISABus *isa_bus, qemu_irq *gsi,
|
||||||
ISADevice **rtc_state,
|
ISADevice **rtc_state,
|
||||||
bool create_fdctrl,
|
bool create_fdctrl,
|
||||||
ISADevice **floppy,
|
|
||||||
bool no_vmport,
|
bool no_vmport,
|
||||||
uint32 hpet_irqs);
|
uint32 hpet_irqs);
|
||||||
void pc_init_ne2k_isa(ISABus *bus, NICInfo *nd);
|
void pc_init_ne2k_isa(ISABus *bus, NICInfo *nd);
|
||||||
void pc_cmos_init(ram_addr_t ram_size, ram_addr_t above_4g_mem_size,
|
void pc_cmos_init(ram_addr_t ram_size, ram_addr_t above_4g_mem_size,
|
||||||
const char *boot_device, MachineState *machine,
|
const char *boot_device, MachineState *machine,
|
||||||
ISADevice *floppy, BusState *ide0, BusState *ide1,
|
BusState *ide0, BusState *ide1,
|
||||||
ISADevice *s);
|
ISADevice *s);
|
||||||
void pc_nic_init(ISABus *isa_bus, PCIBus *pci_bus);
|
void pc_nic_init(ISABus *isa_bus, PCIBus *pci_bus);
|
||||||
void pc_pci_device_init(PCIBus *pci_bus);
|
void pc_pci_device_init(PCIBus *pci_bus);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue