All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Auger <eric.auger@redhat.com>
To: Alex Williamson <alex.williamson@redhat.com>, qemu-devel@nongnu.org
Cc: eric.auger.pro@gmail.com, clg@redhat.com,
	zhenzhong.duan@intel.com, mst@redhat.com,
	marcel.apfelbaum@gmail.com
Subject: Re: [PATCH 4/5] pcie, virtio: Remove redundant pm_cap
Date: Mon, 24 Feb 2025 19:40:06 +0100	[thread overview]
Message-ID: <499dd251-baf0-42ee-8400-e968d8a96f4f@redhat.com> (raw)
In-Reply-To: <20250220224918.2520417-5-alex.williamson@redhat.com>




On 2/20/25 11:48 PM, Alex Williamson wrote:
> The pm_cap on the PCIExpressDevice object can be distilled down
> to the new instance on the PCIDevice object.
>
> Cc: Michael S. Tsirkin <mst@redhat.com>
> Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
> Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>

Eric
> ---
>  hw/pci-bridge/pcie_pci_bridge.c | 1 -
>  hw/virtio/virtio-pci.c          | 8 +++-----
>  include/hw/pci/pcie.h           | 2 --
>  3 files changed, 3 insertions(+), 8 deletions(-)
>
> diff --git a/hw/pci-bridge/pcie_pci_bridge.c b/hw/pci-bridge/pcie_pci_bridge.c
> index 9fa656b43b42..2429503cfbbf 100644
> --- a/hw/pci-bridge/pcie_pci_bridge.c
> +++ b/hw/pci-bridge/pcie_pci_bridge.c
> @@ -56,7 +56,6 @@ static void pcie_pci_bridge_realize(PCIDevice *d, Error **errp)
>      if (pos < 0) {
>          goto pm_error;
>      }
> -    d->exp.pm_cap = pos;
>      pci_set_word(d->config + pos + PCI_PM_PMC, 0x3);
>  
>      pcie_cap_arifwd_init(d);
> diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
> index afe8b5551c5c..3ca3f849d391 100644
> --- a/hw/virtio/virtio-pci.c
> +++ b/hw/virtio/virtio-pci.c
> @@ -2209,8 +2209,6 @@ static void virtio_pci_realize(PCIDevice *pci_dev, Error **errp)
>              return;
>          }
>  
> -        pci_dev->exp.pm_cap = pos;
> -
>          /*
>           * Indicates that this function complies with revision 1.2 of the
>           * PCI Power Management Interface Specification.
> @@ -2309,11 +2307,11 @@ static bool virtio_pci_no_soft_reset(PCIDevice *dev)
>  {
>      uint16_t pmcsr;
>  
> -    if (!pci_is_express(dev) || !dev->exp.pm_cap) {
> +    if (!pci_is_express(dev) || !(dev->cap_present & QEMU_PCI_CAP_PM)) {
>          return false;
>      }
>  
> -    pmcsr = pci_get_word(dev->config + dev->exp.pm_cap + PCI_PM_CTRL);
> +    pmcsr = pci_get_word(dev->config + dev->pm_cap + PCI_PM_CTRL);
>  
>      /*
>       * When No_Soft_Reset bit is set and the device
> @@ -2342,7 +2340,7 @@ static void virtio_pci_bus_reset_hold(Object *obj, ResetType type)
>  
>          if (proxy->flags & VIRTIO_PCI_FLAG_INIT_PM) {
>              pci_word_test_and_clear_mask(
> -                dev->config + dev->exp.pm_cap + PCI_PM_CTRL,
> +                dev->config + dev->pm_cap + PCI_PM_CTRL,
>                  PCI_PM_CTRL_STATE_MASK);
>          }
>      }
> diff --git a/include/hw/pci/pcie.h b/include/hw/pci/pcie.h
> index b8d59732bc63..70a5de09de39 100644
> --- a/include/hw/pci/pcie.h
> +++ b/include/hw/pci/pcie.h
> @@ -58,8 +58,6 @@ typedef enum {
>  struct PCIExpressDevice {
>      /* Offset of express capability in config space */
>      uint8_t exp_cap;
> -    /* Offset of Power Management capability in config space */
> -    uint8_t pm_cap;
>  
>      /* SLOT */
>      bool hpev_notified; /* Logical AND of conditions for hot plug event.



  parent reply	other threads:[~2025-02-24 18:41 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-20 22:48 [PATCH 0/5] PCI: Implement basic PCI PM capability backing Alex Williamson
2025-02-20 22:48 ` [PATCH 1/5] hw/pci: Basic support for PCI power management Alex Williamson
2025-02-24 19:03   ` Eric Auger
2025-02-25  5:24     ` Alex Williamson
2025-02-25  9:45       ` Eric Auger
2025-02-20 22:48 ` [PATCH 2/5] pci: Use PCI PM capability initializer Alex Williamson
2025-02-24 18:37   ` Eric Auger
2025-02-24 19:03     ` Alex Williamson
2025-02-20 22:48 ` [PATCH 3/5] vfio/pci: Delete local pm_cap Alex Williamson
2025-02-24 18:38   ` Eric Auger
2025-02-20 22:48 ` [PATCH 4/5] pcie, virtio: Remove redundant pm_cap Alex Williamson
2025-02-21  6:12   ` Duan, Zhenzhong
2025-02-22  6:00     ` Cédric Le Goater
2025-02-24  1:45       ` Duan, Zhenzhong
2025-02-24 18:40   ` Eric Auger [this message]
2025-02-20 22:48 ` [PATCH 5/5] hw/vfio/pci: Re-order pre-reset Alex Williamson
2025-02-24 20:16   ` Eric Auger
2025-02-20 22:54 ` [PATCH 0/5] PCI: Implement basic PCI PM capability backing Michael S. Tsirkin
2025-02-24  8:21   ` Cédric Le Goater
2025-02-24  1:43 ` Duan, Zhenzhong
2025-02-24  8:14 ` Cédric Le Goater
2025-02-24 15:09   ` Alex Williamson

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=499dd251-baf0-42ee-8400-e968d8a96f4f@redhat.com \
    --to=eric.auger@redhat.com \
    --cc=alex.williamson@redhat.com \
    --cc=clg@redhat.com \
    --cc=eric.auger.pro@gmail.com \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=zhenzhong.duan@intel.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 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.