[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH for-6.2 00/12] qom: Get rid of all manual usage of OBJECT_CHECK &
From: |
Eduardo Habkost |
Subject: |
[PATCH for-6.2 00/12] qom: Get rid of all manual usage of OBJECT_CHECK & friends |
Date: |
Fri, 6 Aug 2021 17:11:15 -0400 |
This series gets rid of all manual usage of OBJECT_CHECK,
OBJECT_CLASS_CHECK, and OBJECT_GET_CLASS.
All type check macros defined manually are replaced with
DEFINE_*CHECKER* or OBJECT_DECLARE* macros.
All manual usage of OBJECT_CHECK/OBJECT_CLASS_CHECK/OBJECT_GET_CLASS
is manually replaced with the corresponding type-specific wrappers.
For a git tree containing all dependencies, see:
https://gitlab.com/ehabkost/qemu.git work/qom-automated-declare-type-pass2
This series is based on multiple other series I have submitted
recently, including:
Date: Thu, 5 Aug 2021 15:34:25 -0400
Subject: [PATCH for-6.2 0/6] qom: Fix broken OBJECT_CHECK usage
Message-Id: <20210805193431.307761-1-ehabkost@redhat.com>
20210805193431.307761-1-ehabkost@redhat.com">https://lore.kernel.org/qemu-devel/20210805193431.307761-1-ehabkost@redhat.com
Date: Thu, 5 Aug 2021 17:47:39 -0400
Subject: [PATCH] bcm2836: Remove redundant typedef and macros
Message-Id: <20210805214739.390613-1-ehabkost@redhat.com>
20210805214739.390613-1-ehabkost@redhat.com">https://lore.kernel.org/qemu-devel/20210805214739.390613-1-ehabkost@redhat.com
Date: Thu, 5 Aug 2021 22:31:19 -0400
Subject: [PATCH for-6.2] sbsa-ref: Rename SBSA_GWDT enum value
Message-Id: <20210806023119.431680-1-ehabkost@redhat.com>
20210806023119.431680-1-ehabkost@redhat.com">https://lore.kernel.org/qemu-devel/20210806023119.431680-1-ehabkost@redhat.com
Based-on: <20210805193431.307761-1-ehabkost@redhat.com>
Based-on: <20210805214739.390613-1-ehabkost@redhat.com>
Based-on: <20210806023119.431680-1-ehabkost@redhat.com>
Eduardo Habkost (12):
accel: Rename TYPE_ACCEL to TYPE_ACCEL_BASE
qom: Use DEVICE_*CLASS instead of OBJECT_*CLASS
scripts/codeconverter: Update to latest version
[automated] Add struct names to typedefs used by QOM types
[automated] Move QOM typedefs and add missing includes
[automated] Split QOM "typedef struct T { ... } T" declarations
[automated] Use DECLARE_*CHECKER* macros when possible
npcm7xx_clk: Use DECLARE_INSTANCE_CHECKER
npcm7xx_otp: Use DECLARE_CLASS_CHECKERS
[automated] Use DECLARE_OBJ_CHECKERS when possible
[automated] Use OBJECT_DECLARE_TYPE when possible
[automated] Use OBJECT_DECLARE_SIMPLE_TYPE when possible
hw/core/machine.c | 2 +-
hw/nvme/nvme.h | 24 +-
hw/usb/hcd-uhci.h | 6 +-
hw/usb/hcd-xhci-pci.h | 8 +-
hw/usb/hcd-xhci-sysbus.h | 8 +-
hw/usb/u2f.h | 17 +-
include/crypto/tlscreds.h | 5 +-
include/hw/acpi/acpi_dev_interface.h | 2 +-
include/hw/adc/npcm7xx_adc.h | 8 +-
include/hw/arm/linux-boot-if.h | 2 +-
include/hw/arm/npcm7xx.h | 36 ++-
include/hw/char/shakti_uart.h | 8 +-
include/hw/core/accel-cpu.h | 6 +-
include/hw/dma/sifive_pdma.h | 8 +-
include/hw/dma/xlnx_csu_dma.h | 8 +-
include/hw/fw-path-provider.h | 2 +-
include/hw/gpio/npcm7xx_gpio.h | 10 +-
include/hw/gpio/sifive_gpio.h | 4 +-
include/hw/hotplug.h | 2 +-
include/hw/i2c/npcm7xx_smbus.h | 10 +-
include/hw/intc/intc.h | 2 +-
include/hw/intc/m68k_irqc.h | 8 +-
include/hw/intc/sifive_clint.h | 8 +-
include/hw/intc/sifive_plic.h | 4 +-
include/hw/ipmi/ipmi.h | 2 +-
include/hw/mem/memory-device.h | 2 +-
include/hw/mem/npcm7xx_mc.h | 9 +-
include/hw/misc/aspeed_lpc.h | 7 +-
include/hw/misc/bcm2835_cprman.h | 21 +-
include/hw/misc/bcm2835_cprman_internals.h | 13 +-
include/hw/misc/led.h | 3 +-
include/hw/misc/mchp_pfsoc_dmc.h | 17 +-
include/hw/misc/mchp_pfsoc_ioscb.h | 8 +-
include/hw/misc/mchp_pfsoc_sysreg.h | 9 +-
include/hw/misc/npcm7xx_clk.h | 18 +-
include/hw/misc/npcm7xx_gcr.h | 7 +-
include/hw/misc/npcm7xx_mft.h | 7 +-
include/hw/misc/npcm7xx_pwm.h | 4 +-
include/hw/misc/npcm7xx_rng.h | 9 +-
include/hw/misc/sifive_e_prci.h | 4 +-
include/hw/misc/sifive_test.h | 4 +-
include/hw/misc/sifive_u_otp.h | 4 +-
include/hw/misc/sifive_u_prci.h | 4 +-
include/hw/misc/xlnx-versal-xramc.h | 8 +-
include/hw/net/npcm7xx_emc.h | 5 +-
include/hw/net/xlnx-zynqmp-can.h | 8 +-
include/hw/nmi.h | 2 +-
include/hw/nvram/npcm7xx_otp.h | 12 +-
include/hw/ppc/spapr_drc.h | 23 +-
include/hw/ppc/spapr_xive.h | 15 +-
include/hw/ppc/vof.h | 1 +
include/hw/rdma/rdma.h | 2 +-
include/hw/register.h | 3 +-
include/hw/riscv/microchip_pfsoc.h | 18 +-
include/hw/riscv/shakti_c.h | 15 +-
include/hw/riscv/sifive_e.h | 17 +-
include/hw/riscv/sifive_u.h | 17 +-
include/hw/rtc/m48t59.h | 2 +-
include/hw/sd/cadence_sdhci.h | 8 +-
include/hw/ssi/npcm7xx_fiu.h | 4 +-
include/hw/ssi/sifive_spi.h | 7 +-
include/hw/stream.h | 2 +-
include/hw/timer/npcm7xx_timer.h | 4 +-
include/hw/tricore/tricore_testdevice.h | 8 +-
include/hw/usb/hcd-dwc3.h | 8 +-
include/hw/usb/msd.h | 1 +
include/hw/usb/xlnx-usb-subsystem.h | 10 +-
include/hw/usb/xlnx-versal-usb2-ctrl-regs.h | 8 +-
include/hw/vmstate-if.h | 2 +-
include/hw/watchdog/sbsa_gwdt.h | 10 +-
include/qemu/accel.h | 20 +-
include/qom/object_interfaces.h | 2 +-
include/sysemu/tpm.h | 2 +-
target/arm/idau.h | 2 +-
target/hexagon/cpu.h | 19 +-
accel/accel-common.c | 4 +-
accel/accel-softmmu.c | 4 +-
accel/accel-user.c | 2 +-
accel/hvf/hvf-accel-ops.c | 4 +-
accel/kvm/kvm-all.c | 4 +-
accel/qtest/qtest.c | 4 +-
accel/tcg/tcg-all.c | 5 +-
accel/xen/xen-all.c | 4 +-
bsd-user/main.c | 2 +-
chardev/char-parallel.c | 17 +-
hw/arm/bcm2836.c | 1 +
hw/block/fdc-sysbus.c | 5 +-
hw/i2c/i2c_mux_pca954x.c | 9 +-
hw/m68k/mcf5206.c | 7 +-
hw/mem/sparse-mem.c | 9 +-
hw/mips/boston.c | 4 +-
hw/mips/loongson3_virt.c | 1 +
hw/misc/npcm7xx_clk.c | 10 +-
hw/misc/sbsa_ec.c | 9 +-
hw/net/can/ctucan_pci.c | 5 +-
hw/nvram/npcm7xx_otp.c | 6 +-
hw/pci/pci.c | 3 +-
hw/s390x/vhost-user-fs-ccw.c | 8 +-
hw/sensor/adm1272.c | 7 +-
hw/sensor/max34451.c | 7 +-
hw/usb/hcd-ehci-pci.c | 2 +-
hw/usb/u2f-emulated.c | 5 +-
hw/usb/u2f-passthru.c | 5 +-
hw/virtio/vhost-user-i2c-pci.c | 1 +
linux-user/main.c | 2 +-
migration/savevm.c | 3 +-
monitor/misc.c | 3 +-
.../codeconverter/codeconverter/patching.py | 18 +-
.../codeconverter/codeconverter/qom_macros.py | 187 +++++++++++--
.../codeconverter/qom_type_info.py | 247 +++++++++++++++++-
.../codeconverter/codeconverter/regexps.py | 3 +-
softmmu/memory.c | 2 +-
softmmu/qdev-monitor.c | 3 +-
softmmu/vl.c | 6 +-
target/i386/hax/hax-all.c | 4 +-
target/i386/nvmm/nvmm-all.c | 4 +-
target/i386/whpx/whpx-all.c | 4 +-
tests/qtest/pnv-xscom-test.c | 5 +-
tests/unit/check-qom-interface.c | 2 +-
ui/vdagent.c | 1 +
120 files changed, 805 insertions(+), 458 deletions(-)
--
2.31.1
- [PATCH for-6.2 00/12] qom: Get rid of all manual usage of OBJECT_CHECK & friends,
Eduardo Habkost <=
- [PATCH for-6.2 01/12] accel: Rename TYPE_ACCEL to TYPE_ACCEL_BASE, Eduardo Habkost, 2021/08/06
- [PATCH for-6.2 02/12] qom: Use DEVICE_*CLASS instead of OBJECT_*CLASS, Eduardo Habkost, 2021/08/06
- [PATCH for-6.2 03/12] scripts/codeconverter: Update to latest version, Eduardo Habkost, 2021/08/06
- [PATCH for-6.2 04/12] [automated] Add struct names to typedefs used by QOM types, Eduardo Habkost, 2021/08/06
- [PATCH for-6.2 05/12] [automated] Move QOM typedefs and add missing includes, Eduardo Habkost, 2021/08/06