From: Daniel Henrique Barboza <danielhb413@gmail.com>
To: qemu-devel@nongnu.org
Cc: Daniel Henrique Barboza <danielhb413@gmail.com>,
qemu-ppc@nongnu.org, clg@kaod.org, david@gibson.dropbear.id.au
Subject: [PATCH v2 3/8] ppc/pnv: remove stack pointer from PnvPHB4
Date: Fri, 14 Jan 2022 15:07:14 -0300 [thread overview]
Message-ID: <20220114180719.52117-4-danielhb413@gmail.com> (raw)
In-Reply-To: <20220114180719.52117-1-danielhb413@gmail.com>
This pointer was being used for two reasons: pnv_phb4_update_regions()
was using it to access the PHB and phb4_realize() was using it as a way
to determine if the PHB was user created.
We can determine if the PHB is user created via phb->pec, introduced in
the previous patch, and pnv_phb4_update_regions() is no longer using
stack->phb.
Remove the pointer from the PnvPHB4 device.
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
---
hw/pci-host/pnv_phb4.c | 15 ++++-----------
hw/pci-host/pnv_phb4_pec.c | 2 --
include/hw/pci-host/pnv_phb4.h | 2 --
3 files changed, 4 insertions(+), 15 deletions(-)
diff --git a/hw/pci-host/pnv_phb4.c b/hw/pci-host/pnv_phb4.c
index 4933fe57fe..2efd34518e 100644
--- a/hw/pci-host/pnv_phb4.c
+++ b/hw/pci-host/pnv_phb4.c
@@ -1573,9 +1573,10 @@ static void pnv_phb4_realize(DeviceState *dev, Error **errp)
char name[32];
/* User created PHB */
- if (!phb->stack) {
+ if (!phb->pec) {
PnvMachineState *pnv = PNV_MACHINE(qdev_get_machine());
PnvChip *chip = pnv_get_chip(pnv, phb->chip_id);
+ PnvPhb4PecStack *stack;
PnvPhb4PecClass *pecc;
BusState *s;
@@ -1584,7 +1585,7 @@ static void pnv_phb4_realize(DeviceState *dev, Error **errp)
return;
}
- phb->stack = pnv_phb4_get_stack(chip, phb, &local_err);
+ stack = pnv_phb4_get_stack(chip, phb, &local_err);
if (local_err) {
error_propagate(errp, local_err);
return;
@@ -1594,18 +1595,12 @@ static void pnv_phb4_realize(DeviceState *dev, Error **errp)
* All other phb properties but 'pec' ad 'version' are
* already set.
*/
- object_property_set_link(OBJECT(phb), "pec", OBJECT(phb->stack->pec),
+ object_property_set_link(OBJECT(phb), "pec", OBJECT(stack->pec),
&error_abort);
pecc = PNV_PHB4_PEC_GET_CLASS(phb->pec);
object_property_set_int(OBJECT(phb), "version", pecc->version,
&error_fatal);
- /*
- * Assign stack->phb since pnv_phb4_update_regions() uses it
- * to access the phb.
- */
- phb->stack->phb = phb;
-
/*
* Reparent user created devices to the chip to build
* correctly the device tree.
@@ -1707,8 +1702,6 @@ static Property pnv_phb4_properties[] = {
DEFINE_PROP_UINT32("index", PnvPHB4, phb_id, 0),
DEFINE_PROP_UINT32("chip-id", PnvPHB4, chip_id, 0),
DEFINE_PROP_UINT64("version", PnvPHB4, version, 0),
- DEFINE_PROP_LINK("stack", PnvPHB4, stack, TYPE_PNV_PHB4_PEC_STACK,
- PnvPhb4PecStack *),
DEFINE_PROP_LINK("pec", PnvPHB4, pec, TYPE_PNV_PHB4_PEC,
PnvPhb4PecState *),
DEFINE_PROP_END_OF_LIST(),
diff --git a/hw/pci-host/pnv_phb4_pec.c b/hw/pci-host/pnv_phb4_pec.c
index 22194b8de2..ed1d644182 100644
--- a/hw/pci-host/pnv_phb4_pec.c
+++ b/hw/pci-host/pnv_phb4_pec.c
@@ -293,8 +293,6 @@ static void pnv_pec_stk_default_phb_realize(PnvPhb4PecStack *stack,
&error_fatal);
object_property_set_int(OBJECT(stack->phb), "version", pecc->version,
&error_fatal);
- object_property_set_link(OBJECT(stack->phb), "stack", OBJECT(stack),
- &error_abort);
if (!sysbus_realize(SYS_BUS_DEVICE(stack->phb), errp)) {
return;
diff --git a/include/hw/pci-host/pnv_phb4.h b/include/hw/pci-host/pnv_phb4.h
index 1d27e4c0cb..a9059b7279 100644
--- a/include/hw/pci-host/pnv_phb4.h
+++ b/include/hw/pci-host/pnv_phb4.h
@@ -151,8 +151,6 @@ struct PnvPHB4 {
XiveSource xsrc;
qemu_irq *qirqs;
- PnvPhb4PecStack *stack;
-
QLIST_HEAD(, PnvPhb4DMASpace) dma_spaces;
};
--
2.33.1
next prev parent reply other threads:[~2022-01-14 18:13 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-14 18:07 [PATCH v2 0/8] remove PnvPhb4PecStack from Powernv9 Daniel Henrique Barboza
2022-01-14 18:07 ` [PATCH v2 1/8] ppc/pnv: introduce PnvPHB4 'pec' property Daniel Henrique Barboza
2022-01-14 18:07 ` [PATCH v2 2/8] ppc/pnv: reduce stack->stack_no usage Daniel Henrique Barboza
2022-01-17 10:52 ` Cédric Le Goater
2022-01-14 18:07 ` Daniel Henrique Barboza [this message]
2022-01-14 18:07 ` [PATCH v2 4/8] ppc/pnv: move default_phb_realize() to pec_realize() Daniel Henrique Barboza
2022-01-14 18:07 ` [PATCH v2 5/8] ppc/pnv: remove PnvPhb4PecStack::stack_no Daniel Henrique Barboza
2022-01-17 10:53 ` Cédric Le Goater
2022-01-14 18:07 ` [PATCH v2 6/8] ppc/pnv: make PECs create and realize PHB4s Daniel Henrique Barboza
2022-01-17 10:55 ` Cédric Le Goater
2022-01-14 18:07 ` [PATCH v2 7/8] ppc/pnv: remove PnvPhb4PecStack object Daniel Henrique Barboza
2022-01-14 18:07 ` [PATCH v2 8/8] ppc/pnv: rename pnv_pec_stk_update_map() Daniel Henrique Barboza
2022-01-18 12:03 ` [PATCH v2 0/8] remove PnvPhb4PecStack from Powernv9 Cédric Le Goater
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=20220114180719.52117-4-danielhb413@gmail.com \
--to=danielhb413@gmail.com \
--cc=clg@kaod.org \
--cc=david@gibson.dropbear.id.au \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.