[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 29/49] hw/isa/piix4: Move pci_map_irq_fn' near pci_set_irq_fn
From: |
Philippe Mathieu-Daudé |
Subject: |
[PULL 29/49] hw/isa/piix4: Move pci_map_irq_fn' near pci_set_irq_fn |
Date: |
Sat, 11 Jun 2022 12:32:52 +0200 |
From: Bernhard Beschow <shentey@gmail.com>
The pci_map_irq_fn was implemented below type_init() which made it
inaccessible to QOM functions. So move it up.
Signed-off-by: Bernhard Beschow <shentey@gmail.com>
Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20220603185045.143789-4-shentey@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
hw/isa/piix4.c | 50 +++++++++++++++++++++++++-------------------------
1 file changed, 25 insertions(+), 25 deletions(-)
diff --git a/hw/isa/piix4.c b/hw/isa/piix4.c
index 1d04fb6a55..18aa24424f 100644
--- a/hw/isa/piix4.c
+++ b/hw/isa/piix4.c
@@ -74,6 +74,31 @@ static void piix4_set_irq(void *opaque, int irq_num, int
level)
}
}
+static int pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num)
+{
+ int slot;
+
+ slot = PCI_SLOT(pci_dev->devfn);
+
+ switch (slot) {
+ /* PIIX4 USB */
+ case 10:
+ return 3;
+ /* AMD 79C973 Ethernet */
+ case 11:
+ return 1;
+ /* Crystal 4281 Sound */
+ case 12:
+ return 2;
+ /* PCI slot 1 to 4 */
+ case 18 ... 21:
+ return ((slot - 18) + irq_num) & 0x03;
+ /* Unknown device, don't do any translation */
+ default:
+ return irq_num;
+ }
+}
+
static void piix4_isa_reset(DeviceState *dev)
{
PIIX4State *d = PIIX4_PCI_DEVICE(dev);
@@ -266,31 +291,6 @@ static void piix4_register_types(void)
type_init(piix4_register_types)
-static int pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num)
-{
- int slot;
-
- slot = PCI_SLOT(pci_dev->devfn);
-
- switch (slot) {
- /* PIIX4 USB */
- case 10:
- return 3;
- /* AMD 79C973 Ethernet */
- case 11:
- return 1;
- /* Crystal 4281 Sound */
- case 12:
- return 2;
- /* PCI slot 1 to 4 */
- case 18 ... 21:
- return ((slot - 18) + irq_num) & 0x03;
- /* Unknown device, don't do any translation */
- default:
- return irq_num;
- }
-}
-
DeviceState *piix4_create(PCIBus *pci_bus, ISABus **isa_bus, I2CBus **smbus)
{
PIIX4State *s;
--
2.36.1
- [PULL 19/49] hw/acpi/piix4: move PIIX4PMState into separate piix4.h header, (continued)
- [PULL 19/49] hw/acpi/piix4: move PIIX4PMState into separate piix4.h header, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 20/49] hw/acpi/piix4: alter piix4_pm_init() to return PIIX4PMState, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 21/49] hw/acpi/piix4: rename piix4_pm_init() to piix4_pm_initfn(), Philippe Mathieu-Daudé, 2022/06/11
- [PULL 22/49] hw/acpi/piix4: use qdev gpio to wire up sci_irq, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 24/49] hw/i386/pc_piix: create PIIX4_PM device directly instead of using piix4_pm_initfn(), Philippe Mathieu-Daudé, 2022/06/11
- [PULL 23/49] hw/acpi/piix4: use qdev gpio to wire up smi_irq, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 25/49] hw/isa/piix4.c: create PIIX4_PM device directly instead of using piix4_pm_initfn(), Philippe Mathieu-Daudé, 2022/06/11
- [PULL 26/49] hw/acpi/piix4: remove unused piix4_pm_initfn() function, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 27/49] hw/southbridge/piix: Aggregate all PIIX southbridge type names, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 28/49] hw/isa/piix4: Use object_initialize_child() for embedded struct, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 29/49] hw/isa/piix4: Move pci_map_irq_fn' near pci_set_irq_fn,
Philippe Mathieu-Daudé <=
- [PULL 30/49] hw/isa/piix4: QOM'ify PCI device creation and wiring, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 31/49] hw/isa/piix4: Factor out ISABus retrieval from piix4_create(), Philippe Mathieu-Daudé, 2022/06/11
- [PULL 32/49] hw/isa/piix4: QOM'ify PIIX4 PM creation, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 34/49] hw/isa/piix3: Move pci_map_irq_fn near pci_set_irq_fn, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 36/49] hw/isa/piix3: Factor out ISABus retrieval from piix3_create(), Philippe Mathieu-Daudé, 2022/06/11
- [PULL 33/49] hw/isa/piix4: Inline and remove piix4_create(), Philippe Mathieu-Daudé, 2022/06/11
- [PULL 37/49] hw/isa/piix3: Inline and remove piix3_create(), Philippe Mathieu-Daudé, 2022/06/11
- [PULL 35/49] hw/isa/piix3: QOM'ify PCI device creation and wiring, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 38/49] hw/i386/microvm-dt: Force explicit failure if retrieving QOM property fails, Philippe Mathieu-Daudé, 2022/06/11
- [PULL 39/49] hw/i386/microvm-dt: Determine mc146818rtc's IRQ number from QOM property, Philippe Mathieu-Daudé, 2022/06/11