[PULL 00/36] reset refactoring patches

Peter Maydell posted 36 patches 1 year, 4 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20221216214244.1391647-1-peter.maydell@linaro.org
Maintainers: Paolo Bonzini <pbonzini@redhat.com>, "Daniel P. Berrangé" <berrange@redhat.com>, Eduardo Habkost <eduardo@habkost.net>, "Michael S. Tsirkin" <mst@redhat.com>, Gerd Hoffmann <kraxel@redhat.com>, "Maciej S. Szmigiero" <maciej.szmigiero@oracle.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson <richard.henderson@linaro.org>, Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>, Daniel Henrique Barboza <danielhb413@gmail.com>, "Cédric Le Goater" <clg@kaod.org>, David Gibson <david@gibson.dropbear.id.au>, Greg Kurz <groug@kaod.org>, Laurent Vivier <laurent@vivier.eu>, Elena Ufimtseva <elena.ufimtseva@oracle.com>, Jagannathan Raman <jag.raman@oracle.com>, John G Johnson <john.g.johnson@oracle.com>, Matthew Rosato <mjrosato@linux.ibm.com>, Eric Farman <farman@linux.ibm.com>, Thomas Huth <thuth@redhat.com>, David Hildenbrand <david@redhat.com>, Ilya Leoshkevich <iii@linux.ibm.com>, Halil Pasic <pasic@linux.ibm.com>, Christian Borntraeger <borntraeger@linux.ibm.com>, Peter Maydell <peter.maydell@linaro.org>, Michael Rolnik <mrolnik@gmail.com>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>, Taylor Simpson <tsimpson@quicinc.com>, Song Gao <gaosong@loongson.cn>, Xiaojuan Yang <yangxiaojuan@loongson.cn>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Aurelien Jarno <aurelien@aurel32.net>, Jiaxun Yang <jiaxun.yang@flygoat.com>, Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>, Chris Wulff <crwulff@gmail.com>, Marek Vasut <marex@denx.de>, Stafford Horne <shorne@gmail.com>, Palmer Dabbelt <palmer@dabbelt.com>, Alistair Francis <alistair.francis@wdc.com>, Bin Meng <bin.meng@windriver.com>, Yoshinori Sato <ysato@users.sourceforge.jp>, Artyom Tarasenko <atar4qemu@gmail.com>, Bastian Koppelmann <kbastian@mail.uni-paderborn.de>, Max Filippov <jcmvbkbc@gmail.com>
hw/display/virtio-vga.h        |  2 +-
include/hw/input/ps2.h         |  2 +-
include/hw/misc/mos6522.h      |  2 +-
include/hw/pci/pcie_port.h     |  2 +-
include/hw/ppc/xics.h          |  2 +-
include/hw/qdev-core.h         | 35 -----------------------
target/arm/cpu-qom.h           |  4 +--
target/avr/cpu-qom.h           |  4 +--
target/cris/cpu-qom.h          |  4 +--
target/hexagon/cpu.h           |  2 +-
target/i386/cpu-qom.h          |  4 +--
target/loongarch/cpu.h         |  4 +--
target/m68k/cpu-qom.h          |  4 +--
target/microblaze/cpu-qom.h    |  4 +--
target/mips/cpu-qom.h          |  4 +--
target/nios2/cpu.h             |  4 +--
target/openrisc/cpu.h          |  4 +--
target/ppc/cpu-qom.h           |  4 +--
target/riscv/cpu.h             |  4 +--
target/rx/cpu-qom.h            |  4 +--
target/sh4/cpu-qom.h           |  4 +--
target/sparc/cpu-qom.h         |  4 +--
target/tricore/cpu-qom.h       |  2 +-
target/xtensa/cpu-qom.h        |  4 +--
hw/core/cpu-common.c           |  7 +++--
hw/core/qdev.c                 | 64 ------------------------------------------
hw/display/virtio-vga.c        | 15 ++++++----
hw/hyperv/vmbus.c              |  4 +--
hw/i386/xen/xen_platform.c     |  2 +-
hw/input/adb.c                 |  2 +-
hw/input/ps2.c                 | 45 ++++++++++++++++++++---------
hw/intc/xics.c                 | 11 ++++----
hw/misc/mac_via.c              | 26 ++++++++++-------
hw/misc/macio/cuda.c           | 14 +++++----
hw/misc/macio/pmu.c            | 14 +++++----
hw/misc/mos6522.c              |  7 +++--
hw/pci-bridge/cxl_root_port.c  | 14 +++++----
hw/pci-bridge/pcie_root_port.c |  8 ++++--
hw/pci-host/pnv_phb.c          | 18 ++++++------
hw/pci-host/pnv_phb3_msi.c     | 22 ++++++---------
hw/pci/pci.c                   |  6 ++--
hw/pci/pci_bridge.c            |  2 +-
hw/remote/vfio-user-obj.c      |  2 +-
hw/s390x/s390-pci-inst.c       |  2 +-
hw/s390x/s390-virtio-ccw.c     |  2 +-
hw/usb/dev-uas.c               |  2 +-
hw/virtio/virtio-pci.c         |  8 ++++--
target/arm/cpu.c               | 13 ++++++---
target/avr/cpu.c               | 13 ++++++---
target/cris/cpu.c              | 12 +++++---
target/hexagon/cpu.c           | 12 +++++---
target/i386/cpu.c              | 12 +++++---
target/loongarch/cpu.c         | 12 +++++---
target/m68k/cpu.c              | 12 +++++---
target/microblaze/cpu.c        | 12 +++++---
target/mips/cpu.c              | 12 +++++---
target/nios2/cpu.c             | 12 +++++---
target/openrisc/cpu.c          | 12 +++++---
target/ppc/cpu_init.c          | 12 +++++---
target/riscv/cpu.c             | 12 +++++---
target/rx/cpu.c                | 13 +++++----
target/sh4/cpu.c               | 12 +++++---
target/sparc/cpu.c             | 12 +++++---
target/tricore/cpu.c           | 12 +++++---
target/xtensa/cpu.c            | 12 +++++---
hw/core/trace-events           |  6 ----
66 files changed, 321 insertions(+), 314 deletions(-)
[PULL 00/36] reset refactoring patches
Posted by Peter Maydell 1 year, 4 months ago
This pull request collects up various reset-related patches
that I sent out and had reviewed during freeze. I've sent
them all here because they touch various devices across
the tree, and this seems more efficient than splitting them
across different submaintainer trees.

thanks
-- PMM

The following changes since commit 4208e6ae114ac8266dcacc9696a443ce5c37b04e:

  Merge tag 'pull-request-2022-12-15' of https://gitlab.com/thuth/qemu into staging (2022-12-15 21:39:56 +0000)

are available in the Git repository at:

  https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20221216

for you to fetch changes up to a0c2e80afc98a9771b109eb5ce0b47edd7c78155:

  hw/pci-host/pnv_phb3_msi: Convert TYPE_PHB3_MSI to 3-phase reset (2022-12-16 15:59:07 +0000)

----------------------------------------------------------------
reset refactoring queue:
 * remove uses of qdev_reset_all(), qbus_reset_all(), device_legacy_reset()
 * convert various devices to 3-phase reset, so we can remove their
   uses of device_class_set_parent_reset()

----------------------------------------------------------------
Peter Maydell (36):
      hw/s390x/s390-pci-inst.c: Use device_cold_reset() to reset PCI devices
      pci: Use device_cold_reset() and bus_cold_reset()
      hw/hyperv/vmbus: Use device_cold_reset() and bus_cold_reset()
      Replace use of qdev_reset_all() with device_cold_reset()
      qdev: Remove qdev_reset_all() and qbus_reset_all()
      hw: Remove device_legacy_reset()
      hw/input/ps2: Convert TYPE_PS2_DEVICE to 3-phase reset
      hw/input/ps2.c: Convert TYPE_PS2_{KBD, MOUSE}_DEVICE to 3-phase reset
      hw/misc/mos6522: Convert TYPE_MOS6522 to 3-phase reset
      hw/misc: Convert TYPE_MOS6522 subclasses to 3-phase reset
      hw/core/cpu-common: Convert TYPE_CPU class to 3-phase reset
      target/arm: Convert to 3-phase reset
      target/avr: Convert to 3-phase reset
      target/cris: Convert to 3-phase reset
      target/hexagon: Convert to 3-phase reset
      target/i386: Convert to 3-phase reset
      target/loongarch: Convert to 3-phase reset
      target/m68k: Convert to 3-phase reset
      target/microblaze: Convert to 3-phase reset
      target/mips: Convert to 3-phase reset
      target/nios2: Convert to 3-phase reset
      target/openrisc: Convert to 3-phase reset
      target/ppc: Convert to 3-phase reset
      target/riscv: Convert to 3-phase reset
      target/rx: Convert to 3-phase reset
      target/sh4: Convert to 3-phase reset
      target/sparc: Convert to 3-phase reset
      target/tricore: Convert to 3-phase reset
      target/xtensa: Convert to 3-phase reset
      hw/virtio: Convert TYPE_VIRTIO_PCI to 3-phase reset
      hw/display/virtio-vga: Convert TYPE_VIRTIO_VGA_BASE to 3-phase reset
      pci: Convert TYPE_PCIE_ROOT_PORT to 3-phase reset
      pci: Convert child classes of TYPE_PCIE_ROOT_PORT to 3-phase reset
      hw/intc/xics: Reset TYPE_ICS objects with device_cold_reset()
      hw/intc/xics: Convert TYPE_ICS to 3-phase reset
      hw/pci-host/pnv_phb3_msi: Convert TYPE_PHB3_MSI to 3-phase reset

 hw/display/virtio-vga.h        |  2 +-
 include/hw/input/ps2.h         |  2 +-
 include/hw/misc/mos6522.h      |  2 +-
 include/hw/pci/pcie_port.h     |  2 +-
 include/hw/ppc/xics.h          |  2 +-
 include/hw/qdev-core.h         | 35 -----------------------
 target/arm/cpu-qom.h           |  4 +--
 target/avr/cpu-qom.h           |  4 +--
 target/cris/cpu-qom.h          |  4 +--
 target/hexagon/cpu.h           |  2 +-
 target/i386/cpu-qom.h          |  4 +--
 target/loongarch/cpu.h         |  4 +--
 target/m68k/cpu-qom.h          |  4 +--
 target/microblaze/cpu-qom.h    |  4 +--
 target/mips/cpu-qom.h          |  4 +--
 target/nios2/cpu.h             |  4 +--
 target/openrisc/cpu.h          |  4 +--
 target/ppc/cpu-qom.h           |  4 +--
 target/riscv/cpu.h             |  4 +--
 target/rx/cpu-qom.h            |  4 +--
 target/sh4/cpu-qom.h           |  4 +--
 target/sparc/cpu-qom.h         |  4 +--
 target/tricore/cpu-qom.h       |  2 +-
 target/xtensa/cpu-qom.h        |  4 +--
 hw/core/cpu-common.c           |  7 +++--
 hw/core/qdev.c                 | 64 ------------------------------------------
 hw/display/virtio-vga.c        | 15 ++++++----
 hw/hyperv/vmbus.c              |  4 +--
 hw/i386/xen/xen_platform.c     |  2 +-
 hw/input/adb.c                 |  2 +-
 hw/input/ps2.c                 | 45 ++++++++++++++++++++---------
 hw/intc/xics.c                 | 11 ++++----
 hw/misc/mac_via.c              | 26 ++++++++++-------
 hw/misc/macio/cuda.c           | 14 +++++----
 hw/misc/macio/pmu.c            | 14 +++++----
 hw/misc/mos6522.c              |  7 +++--
 hw/pci-bridge/cxl_root_port.c  | 14 +++++----
 hw/pci-bridge/pcie_root_port.c |  8 ++++--
 hw/pci-host/pnv_phb.c          | 18 ++++++------
 hw/pci-host/pnv_phb3_msi.c     | 22 ++++++---------
 hw/pci/pci.c                   |  6 ++--
 hw/pci/pci_bridge.c            |  2 +-
 hw/remote/vfio-user-obj.c      |  2 +-
 hw/s390x/s390-pci-inst.c       |  2 +-
 hw/s390x/s390-virtio-ccw.c     |  2 +-
 hw/usb/dev-uas.c               |  2 +-
 hw/virtio/virtio-pci.c         |  8 ++++--
 target/arm/cpu.c               | 13 ++++++---
 target/avr/cpu.c               | 13 ++++++---
 target/cris/cpu.c              | 12 +++++---
 target/hexagon/cpu.c           | 12 +++++---
 target/i386/cpu.c              | 12 +++++---
 target/loongarch/cpu.c         | 12 +++++---
 target/m68k/cpu.c              | 12 +++++---
 target/microblaze/cpu.c        | 12 +++++---
 target/mips/cpu.c              | 12 +++++---
 target/nios2/cpu.c             | 12 +++++---
 target/openrisc/cpu.c          | 12 +++++---
 target/ppc/cpu_init.c          | 12 +++++---
 target/riscv/cpu.c             | 12 +++++---
 target/rx/cpu.c                | 13 +++++----
 target/sh4/cpu.c               | 12 +++++---
 target/sparc/cpu.c             | 12 +++++---
 target/tricore/cpu.c           | 12 +++++---
 target/xtensa/cpu.c            | 12 +++++---
 hw/core/trace-events           |  6 ----
 66 files changed, 321 insertions(+), 314 deletions(-)
Re: [PULL 00/36] reset refactoring patches
Posted by Peter Maydell 1 year, 4 months ago
On Fri, 16 Dec 2022 at 21:42, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> This pull request collects up various reset-related patches
> that I sent out and had reviewed during freeze. I've sent
> them all here because they touch various devices across
> the tree, and this seems more efficient than splitting them
> across different submaintainer trees.
>
> thanks
> -- PMM
>
> The following changes since commit 4208e6ae114ac8266dcacc9696a443ce5c37b04e:
>
>   Merge tag 'pull-request-2022-12-15' of https://gitlab.com/thuth/qemu into staging (2022-12-15 21:39:56 +0000)
>
> are available in the Git repository at:
>
>   https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20221216
>
> for you to fetch changes up to a0c2e80afc98a9771b109eb5ce0b47edd7c78155:
>
>   hw/pci-host/pnv_phb3_msi: Convert TYPE_PHB3_MSI to 3-phase reset (2022-12-16 15:59:07 +0000)
>
> ----------------------------------------------------------------
> reset refactoring queue:
>  * remove uses of qdev_reset_all(), qbus_reset_all(), device_legacy_reset()
>  * convert various devices to 3-phase reset, so we can remove their
>    uses of device_class_set_parent_reset()
>




Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/8.0
for any user-visible changes.

-- PMM