summary refs log tree commit diff stats
path: root/hw/ipack/ipack.c
diff options
context:
space:
mode:
authorPhilippe Mathieu-Daudé <philmd@linaro.org>2025-01-21 08:34:55 +0100
committerPhilippe Mathieu-Daudé <philmd@linaro.org>2025-01-31 19:36:44 +0100
commitd50280af1bc4b9a59c4a6424c6172a1397f5f6c3 (patch)
treee456a79462d5977e0f2f9a73a12fdcfa159a8eb4 /hw/ipack/ipack.c
parent29df910401a66ee65f553eecebf01993115082d2 (diff)
downloadfocaccia-qemu-d50280af1bc4b9a59c4a6424c6172a1397f5f6c3.tar.gz
focaccia-qemu-d50280af1bc4b9a59c4a6424c6172a1397f5f6c3.zip
hw/ipack: Remove legacy qemu_allocate_irqs() use
No need to dynamically allocate IRQ when we know before hands
how many we'll use. Declare the 2 of them in IPackDevice state
and initialize them in the DeviceRealize handler.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20250121155526.29982-4-philmd@linaro.org>
Diffstat (limited to 'hw/ipack/ipack.c')
-rw-r--r--hw/ipack/ipack.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/hw/ipack/ipack.c b/hw/ipack/ipack.c
index ed75f79183..b6defae602 100644
--- a/hw/ipack/ipack.c
+++ b/hw/ipack/ipack.c
@@ -55,22 +55,19 @@ static void ipack_device_realize(DeviceState *dev, Error **errp)
     }
     bus->free_slot = idev->slot + 1;
 
-    idev->irq = qemu_allocate_irqs(bus->set_irq, idev, 2);
+    qemu_init_irqs(idev->irq, ARRAY_SIZE(idev->irq), bus->set_irq, idev);
 
     k->realize(dev, errp);
 }
 
 static void ipack_device_unrealize(DeviceState *dev)
 {
-    IPackDevice *idev = IPACK_DEVICE(dev);
     IPackDeviceClass *k = IPACK_DEVICE_GET_CLASS(dev);
 
     if (k->unrealize) {
         k->unrealize(dev);
         return;
     }
-
-    qemu_free_irqs(idev->irq, 2);
 }
 
 static const Property ipack_device_props[] = {