All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frederic Barrat <fbarrat@linux.ibm.com>
To: Daniel Henrique Barboza <danielhb413@gmail.com>, qemu-devel@nongnu.org
Cc: qemu-ppc@nongnu.org, clg@kaod.org
Subject: Re: [PATCH for-7.2 v4 04/11] ppc/pnv: add helpers for pnv-phb user devices
Date: Fri, 12 Aug 2022 16:49:13 +0200	[thread overview]
Message-ID: <21b47b75-c6ca-e3ea-2d79-314b1451cdc0@linux.ibm.com> (raw)
In-Reply-To: <20220811163950.578927-5-danielhb413@gmail.com>



On 11/08/2022 18:39, Daniel Henrique Barboza wrote:
> pnv_parent_qom_fixup() and pnv_parent_bus_fixup() are versions of the
> helpers that were reverted by commit 9c10d86fee "ppc/pnv: Remove
> user-created PHB{3,4,5} devices". They are needed to amend the QOM and
> bus hierarchies of user created pnv-phbs, matching them with default
> pnv-phbs.
> 
> A new helper pnv_phb_user_device_init() is created to handle
> user-created devices setup. We're going to call it inside
> pnv_phb_realize() in case we're realizing an user created device. This
> will centralize all user device realated in a single spot, leaving the
> realize functions of the phb3/phb4 backends untouched.
> 
> Another helper called pnv_chip_add_phb() was added to handle the
> particularities of each chip version when adding a new PHB.
> 
> Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
> ---


Just a minor typo in a comment below.
Reviewed-by: Frederic Barrat <fbarrat@linux.ibm.com>


> diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
> index f9e5a3d248..2deaac17f7 100644
> --- a/hw/ppc/pnv.c
> +++ b/hw/ppc/pnv.c
> @@ -281,6 +281,26 @@ static void pnv_dt_icp(PnvChip *chip, void *fdt, uint32_t pir,
>       g_free(reg);
>   }
>   
> +/*
> + * Adds a PnvPHB to the chip. Returns the parent obj of the
> + * PHB which varies with each version (phb version 3 is parented
> + * by the chip, version 4 and 4 are parented by the PEC


typo-----------------------------^

   Fred


> + * device).
> + *
> + * TODO: for version 3 we're still parenting the PHB with the
> + * chip. We should parent with a (so far not implemented)
> + * PHB3 PEC device.
> + */
> +Object *pnv_chip_add_phb(PnvChip *chip, PnvPHB *phb, Error **errp)
> +{
> +    if (phb->version == 3) {
> +        return OBJECT(chip);
> +    } else {
> +        /* phb4 support will be added later */
> +        return NULL;
> +    }
> +}
> +
>   static void pnv_chip_power8_dt_populate(PnvChip *chip, void *fdt)
>   {
>       static const char compat[] = "ibm,power8-xscom\0ibm,xscom";
> diff --git a/include/hw/ppc/pnv.h b/include/hw/ppc/pnv.h
> index 033d907287..781d0acffa 100644
> --- a/include/hw/ppc/pnv.h
> +++ b/include/hw/ppc/pnv.h
> @@ -231,6 +231,7 @@ struct PnvMachineState {
>   };
>   
>   PnvChip *pnv_get_chip(PnvMachineState *pnv, uint32_t chip_id);
> +Object *pnv_chip_add_phb(PnvChip *chip, PnvPHB *phb, Error **errp);
>   
>   #define PNV_FDT_ADDR          0x01000000
>   #define PNV_TIMEBASE_FREQ     512000000ULL


  parent reply	other threads:[~2022-08-12 15:00 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-11 16:39 [PATCH for-7.2 v4 00/11] enable pnv-phb user created devices Daniel Henrique Barboza
2022-08-11 16:39 ` [PATCH for-7.2 v4 01/11] ppc/pnv: add phb-id/chip-id PnvPHB3RootBus properties Daniel Henrique Barboza
2022-08-12 14:39   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 02/11] ppc/pnv: add phb-id/chip-id PnvPHB4RootBus properties Daniel Henrique Barboza
2022-08-12 14:39   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 03/11] ppc/pnv: set root port chassis and slot using Bus properties Daniel Henrique Barboza
2022-08-12 14:40   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 04/11] ppc/pnv: add helpers for pnv-phb user devices Daniel Henrique Barboza
2022-08-11 18:47   ` Cédric Le Goater
2022-08-12 14:49   ` Frederic Barrat [this message]
2022-08-11 16:39 ` [PATCH for-7.2 v4 05/11] ppc/pnv: turn chip8->phbs[] into a PnvPHB* array Daniel Henrique Barboza
2022-08-11 18:48   ` Cédric Le Goater
2022-08-12 14:52   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 06/11] ppc/pnv: enable user created pnv-phb for powernv8 Daniel Henrique Barboza
2022-08-12 16:15   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 07/11] ppc/pnv: add PHB4 helpers for user created pnv-phb Daniel Henrique Barboza
2022-08-11 18:44   ` Cédric Le Goater
2022-08-12 15:23   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 08/11] ppc/pnv: enable user created pnv-phb for powernv9 Daniel Henrique Barboza
2022-08-12 16:16   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 09/11] ppc/pnv: change pnv_phb4_get_pec() to also retrieve chip10->pecs Daniel Henrique Barboza
2022-08-11 18:45   ` Cédric Le Goater
2022-08-12 15:26   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 10/11] ppc/pnv: user creatable pnv-phb for powernv10 Daniel Henrique Barboza
2022-08-12 15:27   ` Frederic Barrat
2022-08-11 16:39 ` [PATCH for-7.2 v4 11/11] ppc/pnv: fix QOM parenting of user creatable root ports Daniel Henrique Barboza
2022-08-12 16:13   ` Frederic Barrat
2022-08-16 20:00     ` Daniel Henrique Barboza

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=21b47b75-c6ca-e3ea-2d79-314b1451cdc0@linux.ibm.com \
    --to=fbarrat@linux.ibm.com \
    --cc=clg@kaod.org \
    --cc=danielhb413@gmail.com \
    --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.