qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Bernhard Beschow <shentey@gmail.com>
To: qemu-devel@nongnu.org
Cc: Igor Mammedov <imammedo@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Ani Sinha <ani@anisinha.ca>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	BALATON Zoltan <balaton@eik.bme.hu>,
	Thomas Huth <thuth@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	Laurent Vivier <lvivier@redhat.com>,
	Sunil Muthuswamy <sunilmut@microsoft.com>,
	qemu-trivial@nongnu.org, Bernhard Beschow <shentey@gmail.com>
Subject: [PATCH v2 10/20] hw/isa/lpc_ich9: Eliminate ICH9LPCState::isa_bus
Date: Tue, 31 Jan 2023 12:53:16 +0100	[thread overview]
Message-ID: <20230131115326.12454-11-shentey@gmail.com> (raw)
In-Reply-To: <20230131115326.12454-1-shentey@gmail.com>

By using qdev_get_child_bus() we can eliminate ICH9LPCState::isa_bus and
spare the ich9_lpc variable in pc_q35, too.

Signed-off-by: Bernhard Beschow <shentey@gmail.com>
---
 include/hw/i386/ich9.h | 3 ---
 hw/i386/pc_q35.c       | 4 +---
 hw/isa/lpc_ich9.c      | 5 +----
 3 files changed, 2 insertions(+), 10 deletions(-)

diff --git a/include/hw/i386/ich9.h b/include/hw/i386/ich9.h
index 921e4c7ef6..05464f6965 100644
--- a/include/hw/i386/ich9.h
+++ b/include/hw/i386/ich9.h
@@ -1,7 +1,6 @@
 #ifndef HW_ICH9_H
 #define HW_ICH9_H
 
-#include "hw/isa/isa.h"
 #include "hw/sysbus.h"
 #include "hw/i386/pc.h"
 #include "hw/isa/apm.h"
@@ -64,8 +63,6 @@ struct ICH9LPCState {
                                        * triggers feature lockdown */
     uint64_t smi_negotiated_features; /* guest-invisible, host endian */
 
-    /* isa bus */
-    ISABus *isa_bus;
     MemoryRegion rcrb_mem; /* root complex register block */
     Notifier machine_ready;
 
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 83e4fb7868..a4d5c89409 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -132,7 +132,6 @@ static void pc_q35_init(MachineState *machine)
     GSIState *gsi_state;
     ISABus *isa_bus;
     int i;
-    ICH9LPCState *ich9_lpc;
     PCIDevice *ahci;
     ram_addr_t lowmem;
     DriveInfo *hd[MAX_SATA_PORTS];
@@ -262,12 +261,11 @@ static void pc_q35_init(MachineState *machine)
     /* irq lines */
     gsi_state = pc_gsi_create(&x86ms->gsi, pcmc->pci_enabled);
 
-    ich9_lpc = ICH9_LPC_DEVICE(lpc);
     lpc_dev = DEVICE(lpc);
     for (i = 0; i < GSI_NUM_PINS; i++) {
         qdev_connect_gpio_out_named(lpc_dev, ICH9_GPIO_GSI, i, x86ms->gsi[i]);
     }
-    isa_bus = ich9_lpc->isa_bus;
+    isa_bus = ISA_BUS(qdev_get_child_bus(lpc_dev, "isa.0"));
 
     if (x86ms->pic == ON_OFF_AUTO_ON || x86ms->pic == ON_OFF_AUTO_AUTO) {
         pc_i8259_create(isa_bus, gsi_state->i8259_irq);
diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c
index b444faacd2..9ab966ef88 100644
--- a/hw/isa/lpc_ich9.c
+++ b/hw/isa/lpc_ich9.c
@@ -710,8 +710,6 @@ static void ich9_lpc_realize(PCIDevice *d, Error **errp)
     memory_region_init_io(&lpc->rcrb_mem, OBJECT(d), &rcrb_mmio_ops, lpc,
                           "lpc-rcrb-mmio", ICH9_CC_SIZE);
 
-    lpc->isa_bus = isa_bus;
-
     ich9_cc_init(lpc);
     apm_init(d, &lpc->apm, ich9_apm_ctrl_changed, lpc);
 
@@ -819,8 +817,7 @@ static void build_ich9_isa_aml(AcpiDevAmlIf *adev, Aml *scope)
 {
     Aml *field;
     BusChild *kid;
-    ICH9LPCState *s = ICH9_LPC_DEVICE(adev);
-    BusState *bus = BUS(s->isa_bus);
+    BusState *bus = qdev_get_child_bus(DEVICE(adev), "isa.0");
     Aml *sb_scope = aml_scope("\\_SB");
 
     /* ICH9 PCI to ISA irq remapping */
-- 
2.39.1



  parent reply	other threads:[~2023-01-31 11:54 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-31 11:53 [PATCH v2 00/20] PC and ICH9 cleanups Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 01/20] hw/pci-host/i440fx: Inline sysbus_add_io() Bernhard Beschow
2023-01-31 13:38   ` Thomas Huth
2023-01-31 11:53 ` [PATCH v2 02/20] hw/pci-host/q35: " Bernhard Beschow
2023-01-31 13:38   ` Thomas Huth
2023-01-31 11:53 ` [PATCH v2 03/20] hw/i386/pc_q35: Reuse machine parameter Bernhard Beschow
2023-01-31 13:49   ` Thomas Huth
2023-01-31 11:53 ` [PATCH v2 04/20] hw/i386/pc_q35: Resolve redundant q35_host variable Bernhard Beschow
2023-01-31 13:53   ` Thomas Huth
2023-01-31 11:53 ` [PATCH v2 05/20] hw/i386/pc_{q35, piix}: Reuse MachineClass::desc as SMB product name Bernhard Beschow
2023-01-31 13:55   ` Thomas Huth
2023-01-31 11:53 ` [PATCH v2 06/20] hw/i386/pc_{q35, piix}: Minimize usage of get_system_memory() Bernhard Beschow
2023-01-31 13:58   ` [PATCH v2 06/20] hw/i386/pc_{q35,piix}: " Thomas Huth
2023-01-31 11:53 ` [PATCH v2 07/20] hw/i386/pc: Initialize ram_memory variable directly Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 08/20] hw/i386/ich9: Rename Q35_MASK to ICH9_MASK Bernhard Beschow
2023-01-31 14:00   ` Thomas Huth
2023-01-31 11:53 ` [PATCH v2 09/20] hw/isa/lpc_ich9: Unexport PIRQ functions Bernhard Beschow
2023-01-31 11:53 ` Bernhard Beschow [this message]
2023-01-31 14:04   ` [PATCH v2 10/20] hw/isa/lpc_ich9: Eliminate ICH9LPCState::isa_bus Thomas Huth
2023-01-31 11:53 ` [PATCH v2 11/20] hw/isa/lpc_ich9: Reuse memory and io address space of PCI bus Bernhard Beschow
2023-02-01  0:02   ` Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 12/20] hw/i2c/smbus_ich9: Move ich9_smb_set_irq() in front of ich9_smbus_realize() Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 13/20] hw/i2c/smbus_ich9: Inline ich9_smb_init() and remove it Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 14/20] hw/i386/pc_q35: Allow for setting properties before realizing TYPE_ICH9_LPC_DEVICE Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 15/20] hw/isa/lpc_ich9: Connect pm stuff to lpc internally Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 16/20] hw/isa/lpc_ich9: Remove redundant ich9_lpc_reset() invocation Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 17/20] hw/i386/ich9: Remove redundant GSI_NUM_PINS Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 18/20] hw: Move ioapic*.h to intc/ Bernhard Beschow
2023-01-31 11:53 ` [PATCH v2 19/20] hw/i386/ich9: Clean up includes Bernhard Beschow
2023-03-02 14:43   ` Igor Mammedov
2023-01-31 11:53 ` [PATCH v2 20/20] hw: Move ich9.h to southbridge/ Bernhard Beschow

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230131115326.12454-11-shentey@gmail.com \
    --to=shentey@gmail.com \
    --cc=ani@anisinha.ca \
    --cc=balaton@eik.bme.hu \
    --cc=eduardo@habkost.net \
    --cc=imammedo@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-trivial@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=sunilmut@microsoft.com \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).