[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 03/13] ppc/pnv: Introduce a "xics" property alias under th
From: |
David Gibson |
Subject: |
Re: [PATCH v2 03/13] ppc/pnv: Introduce a "xics" property alias under the PSI model |
Date: |
Sun, 22 Dec 2019 20:33:31 +1100 |
On Thu, Dec 19, 2019 at 07:11:45PM +0100, Cédric Le Goater wrote:
> This removes the need of the intermediate link under PSI to pass the
> XICS link to the underlying ICSState object.
>
> Signed-off-by: Cédric Le Goater <address@hidden>
> Reviewed-by: Greg Kurz <address@hidden>
> Signed-off-by: Cédric Le Goater <address@hidden>
LGTM, but will need a rebase if we're dropping the previous patch.
> ---
> hw/ppc/pnv.c | 4 ++--
> hw/ppc/pnv_psi.c | 11 ++---------
> 2 files changed, 4 insertions(+), 11 deletions(-)
>
> diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
> index 1d8bfb164a32..163a658806e2 100644
> --- a/hw/ppc/pnv.c
> +++ b/hw/ppc/pnv.c
> @@ -999,8 +999,6 @@ static void pnv_chip_power8_instance_init(Object *obj)
>
> object_initialize_child(obj, "psi", &chip8->psi, sizeof(chip8->psi),
> TYPE_PNV8_PSI, &error_abort, NULL);
> - object_property_add_const_link(OBJECT(&chip8->psi), "xics",
> - OBJECT(qdev_get_machine()), &error_abort);
>
> object_initialize_child(obj, "lpc", &chip8->lpc, sizeof(chip8->lpc),
> TYPE_PNV8_LPC, &error_abort, NULL);
> @@ -1069,6 +1067,8 @@ static void pnv_chip_power8_realize(DeviceState *dev,
> Error **errp)
> "bar", &error_fatal);
> object_property_set_link(OBJECT(&chip8->psi),
> OBJECT(chip->system_memory),
> "system-memory", &error_abort);
> + object_property_set_link(OBJECT(&chip8->psi), OBJECT(qdev_get_machine()),
> + ICS_PROP_XICS, &error_abort);
> object_property_set_bool(OBJECT(&chip8->psi), true, "realized",
> &local_err);
> if (local_err) {
> error_propagate(errp, local_err);
> diff --git a/hw/ppc/pnv_psi.c b/hw/ppc/pnv_psi.c
> index 28d34e5c193a..d3124f673571 100644
> --- a/hw/ppc/pnv_psi.c
> +++ b/hw/ppc/pnv_psi.c
> @@ -470,6 +470,8 @@ static void pnv_psi_power8_instance_init(Object *obj)
>
> object_initialize_child(obj, "ics-psi", &psi8->ics, sizeof(psi8->ics),
> TYPE_ICS, &error_abort, NULL);
> + object_property_add_alias(obj, ICS_PROP_XICS, OBJECT(&psi8->ics),
> + ICS_PROP_XICS, &error_abort);
> }
>
> static const uint8_t irq_to_xivr[] = {
> @@ -485,21 +487,12 @@ static void pnv_psi_power8_realize(DeviceState *dev,
> Error **errp)
> {
> PnvPsi *psi = PNV_PSI(dev);
> ICSState *ics = &PNV8_PSI(psi)->ics;
> - Object *obj;
> Error *err = NULL;
> unsigned int i;
>
> assert(psi->system_memory);
>
> - obj = object_property_get_link(OBJECT(dev), "xics", &err);
> - if (!obj) {
> - error_setg(errp, "%s: required link 'xics' not found: %s",
> - __func__, error_get_pretty(err));
> - return;
> - }
> -
> /* Create PSI interrupt control source */
> - object_property_set_link(OBJECT(ics), obj, ICS_PROP_XICS, &error_abort);
> object_property_set_int(OBJECT(ics), PSI_NUM_INTERRUPTS, "nr-irqs",
> &err);
> if (err) {
> error_propagate(errp, err);
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature
- [PATCH v2 00/13] ppc/pnv: remove the use of qdev_get_machine() and get_system_memory(), Cédric Le Goater, 2019/12/19
- [PATCH v2 01/13] ppc/pnv: Modify the powerdown notifier to get the PowerNV machine, Cédric Le Goater, 2019/12/19
- [PATCH v2 02/13] ppc/pnv: Introduce a "system-memory" property, Cédric Le Goater, 2019/12/19
- [PATCH v2 03/13] ppc/pnv: Introduce a "xics" property alias under the PSI model, Cédric Le Goater, 2019/12/19
- Re: [PATCH v2 03/13] ppc/pnv: Introduce a "xics" property alias under the PSI model,
David Gibson <=
- [PATCH v2 04/13] ppc/pnv: Introduce a "xics" property under the POWER8 chip, Cédric Le Goater, 2019/12/19
- [PATCH v2 05/13] spapr/xive: Use device_class_set_parent_realize(), Cédric Le Goater, 2019/12/19
- [PATCH v2 06/13] pnv/xive: Use device_class_set_parent_realize(), Cédric Le Goater, 2019/12/19
- [PATCH v2 07/13] spapr, pnv, xive: Add a "xive-fabric" link to the XIVE router, Cédric Le Goater, 2019/12/19
- [PATCH v2 08/13] xive: Use the XIVE fabric link under the XIVE router, Cédric Le Goater, 2019/12/19