]> Git Repo - qemu.git/commitdiff
audio: rework pcspk_init()
authorGerd Hoffmann <[email protected]>
Thu, 2 Jul 2020 13:25:20 +0000 (15:25 +0200)
committerGerd Hoffmann <[email protected]>
Mon, 6 Jul 2020 15:01:11 +0000 (17:01 +0200)
Instead of creating and returning the pc speaker accept it as argument.
That allows to rework the initialization workflow in followup patches.

Signed-off-by: Gerd Hoffmann <[email protected]>
Message-id: 20200702132525[email protected]

hw/i386/pc.c
hw/isa/i82378.c
hw/mips/jazz.c
include/hw/audio/pcspk.h

index 407c782b5d42b8b091fa05e152604b5b5386536a..4fc1b7048b28744097bad13434454a5241a96fc5 100644 (file)
@@ -1219,7 +1219,7 @@ void pc_basic_device_init(struct PCMachineState *pcms,
             /* connect PIT to output control line of the HPET */
             qdev_connect_gpio_out(hpet, 0, qdev_get_gpio_in(DEVICE(pit), 0));
         }
-        pcspk_init(isa_bus, pit);
+        pcspk_init(isa_new(TYPE_PC_SPEAKER), isa_bus, pit);
     }
 
     i8257_dma_init(isa_bus, 0);
index d9e6c7fa0096e818118cc5759f38e5e00511725d..75a2da2881576446a337847b12f6c34bd6d72ef4 100644 (file)
@@ -102,7 +102,7 @@ static void i82378_realize(PCIDevice *pci, Error **errp)
     pit = i8254_pit_init(isabus, 0x40, 0, NULL);
 
     /* speaker */
-    pcspk_init(isabus, pit);
+    pcspk_init(isa_new(TYPE_PC_SPEAKER), isabus, pit);
 
     /* 2 82C37 (dma) */
     isa_create_simple(isabus, "i82374");
index c3b0da60ccc1a96645153e87120b2ab2d1d46b54..0002bff6959068120d3fe007851918a68d5059b6 100644 (file)
@@ -250,7 +250,7 @@ static void mips_jazz_init(MachineState *machine,
     isa_bus_irqs(isa_bus, i8259);
     i8257_dma_init(isa_bus, 0);
     pit = i8254_pit_init(isa_bus, 0x40, 0, NULL);
-    pcspk_init(isa_bus, pit);
+    pcspk_init(isa_new(TYPE_PC_SPEAKER), isa_bus, pit);
 
     /* Video card */
     switch (jazz_model) {
index 7e7f5f49dcb0fd49b626e2b14ced0b26b2bb8ec1..8b485602675f2cf49dfad0119c136938437e292a 100644 (file)
 
 #define TYPE_PC_SPEAKER "isa-pcspk"
 
-static inline ISADevice *pcspk_init(ISABus *bus, ISADevice *pit)
+static inline void pcspk_init(ISADevice *isadev, ISABus *bus, ISADevice *pit)
 {
     DeviceState *dev;
-    ISADevice *isadev;
 
-    isadev = isa_new(TYPE_PC_SPEAKER);
     dev = DEVICE(isadev);
     qdev_prop_set_uint32(dev, "iobase", 0x61);
     object_property_set_link(OBJECT(dev), OBJECT(pit), "pit", NULL);
     isa_realize_and_unref(isadev, bus, &error_fatal);
-
-    return isadev;
 }
 
 #endif /* HW_PCSPK_H */
This page took 0.028627 seconds and 4 git commands to generate.