diff options
author | Eduardo Habkost <ehabkost@redhat.com> | 2020-08-31 17:07:33 -0400 |
---|---|---|
committer | Eduardo Habkost <ehabkost@redhat.com> | 2020-09-09 09:27:09 -0400 |
commit | 8110fa1d94f2997badc2af39231a1d279c5bb1ee (patch) | |
tree | 6bff28c7907dfb0cbb367ca113f4d02ea03f3a51 /hw | |
parent | db1015e92e04835c9eb50c29625fe566d1202dbd (diff) | |
download | qemu-8110fa1d94f2997badc2af39231a1d279c5bb1ee.zip qemu-8110fa1d94f2997badc2af39231a1d279c5bb1ee.tar.gz qemu-8110fa1d94f2997badc2af39231a1d279c5bb1ee.tar.bz2 |
Use DECLARE_*CHECKER* macros
Generated using:
$ ./scripts/codeconverter/converter.py -i \
--pattern=TypeCheckMacro $(git grep -l '' -- '*.[ch]')
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20200831210740.126168-12-ehabkost@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20200831210740.126168-13-ehabkost@redhat.com>
Message-Id: <20200831210740.126168-14-ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'hw')
347 files changed, 853 insertions, 829 deletions
diff --git a/hw/9pfs/virtio-9p.h b/hw/9pfs/virtio-9p.h index 6dd945e..ff70c5a 100644 --- a/hw/9pfs/virtio-9p.h +++ b/hw/9pfs/virtio-9p.h @@ -16,7 +16,7 @@ struct V9fsVirtioState { typedef struct V9fsVirtioState V9fsVirtioState; #define TYPE_VIRTIO_9P "virtio-9p-device" -#define VIRTIO_9P(obj) \ - OBJECT_CHECK(V9fsVirtioState, (obj), TYPE_VIRTIO_9P) +DECLARE_INSTANCE_CHECKER(V9fsVirtioState, VIRTIO_9P, + TYPE_VIRTIO_9P) #endif diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c index ba39184..1574f7d 100644 --- a/hw/acpi/piix4.c +++ b/hw/acpi/piix4.c @@ -93,8 +93,8 @@ struct PIIX4PMState { }; typedef struct PIIX4PMState PIIX4PMState; -#define PIIX4_PM(obj) \ - OBJECT_CHECK(PIIX4PMState, (obj), TYPE_PIIX4_PM) +DECLARE_INSTANCE_CHECKER(PIIX4PMState, PIIX4_PM, + TYPE_PIIX4_PM) static void piix4_acpi_system_hot_add_init(MemoryRegion *parent, PCIBus *bus, PIIX4PMState *s); diff --git a/hw/alpha/typhoon.c b/hw/alpha/typhoon.c index bd484e4..d02b14d 100644 --- a/hw/alpha/typhoon.c +++ b/hw/alpha/typhoon.c @@ -51,8 +51,8 @@ typedef struct TyphoonPchip { } TyphoonPchip; typedef struct TyphoonState TyphoonState; -#define TYPHOON_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(TyphoonState, (obj), TYPE_TYPHOON_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(TyphoonState, TYPHOON_PCI_HOST_BRIDGE, + TYPE_TYPHOON_PCI_HOST_BRIDGE) struct TyphoonState { PCIHostState parent_obj; diff --git a/hw/arm/collie.c b/hw/arm/collie.c index 82ffc82..a49f4a1 100644 --- a/hw/arm/collie.c +++ b/hw/arm/collie.c @@ -28,8 +28,8 @@ struct CollieMachineState { typedef struct CollieMachineState CollieMachineState; #define TYPE_COLLIE_MACHINE MACHINE_TYPE_NAME("collie") -#define COLLIE_MACHINE(obj) \ - OBJECT_CHECK(CollieMachineState, obj, TYPE_COLLIE_MACHINE) +DECLARE_INSTANCE_CHECKER(CollieMachineState, COLLIE_MACHINE, + TYPE_COLLIE_MACHINE) static struct arm_boot_info collie_binfo = { .loader_start = SA_SDCS0, diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c index cbf6e72..e2ace80 100644 --- a/hw/arm/highbank.c +++ b/hw/arm/highbank.c @@ -157,8 +157,8 @@ static const MemoryRegionOps hb_mem_ops = { #define TYPE_HIGHBANK_REGISTERS "highbank-regs" typedef struct HighbankRegsState HighbankRegsState; -#define HIGHBANK_REGISTERS(obj) \ - OBJECT_CHECK(HighbankRegsState, (obj), TYPE_HIGHBANK_REGISTERS) +DECLARE_INSTANCE_CHECKER(HighbankRegsState, HIGHBANK_REGISTERS, + TYPE_HIGHBANK_REGISTERS) struct HighbankRegsState { /*< private >*/ diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c index 75e608e..19989b6 100644 --- a/hw/arm/integratorcp.c +++ b/hw/arm/integratorcp.c @@ -30,8 +30,8 @@ #define TYPE_INTEGRATOR_CM "integrator_core" typedef struct IntegratorCMState IntegratorCMState; -#define INTEGRATOR_CM(obj) \ - OBJECT_CHECK(IntegratorCMState, (obj), TYPE_INTEGRATOR_CM) +DECLARE_INSTANCE_CHECKER(IntegratorCMState, INTEGRATOR_CM, + TYPE_INTEGRATOR_CM) struct IntegratorCMState { /*< private >*/ @@ -329,8 +329,8 @@ static void integratorcm_realize(DeviceState *d, Error **errp) #define TYPE_INTEGRATOR_PIC "integrator_pic" typedef struct icp_pic_state icp_pic_state; -#define INTEGRATOR_PIC(obj) \ - OBJECT_CHECK(icp_pic_state, (obj), TYPE_INTEGRATOR_PIC) +DECLARE_INSTANCE_CHECKER(icp_pic_state, INTEGRATOR_PIC, + TYPE_INTEGRATOR_PIC) struct icp_pic_state { /*< private >*/ @@ -469,8 +469,8 @@ static void icp_pic_init(Object *obj) #define TYPE_ICP_CONTROL_REGS "icp-ctrl-regs" typedef struct ICPCtrlRegsState ICPCtrlRegsState; -#define ICP_CONTROL_REGS(obj) \ - OBJECT_CHECK(ICPCtrlRegsState, (obj), TYPE_ICP_CONTROL_REGS) +DECLARE_INSTANCE_CHECKER(ICPCtrlRegsState, ICP_CONTROL_REGS, + TYPE_ICP_CONTROL_REGS) struct ICPCtrlRegsState { /*< private >*/ diff --git a/hw/arm/microbit.c b/hw/arm/microbit.c index e94f711..9a4a3d3 100644 --- a/hw/arm/microbit.c +++ b/hw/arm/microbit.c @@ -30,8 +30,8 @@ typedef struct MicrobitMachineState MicrobitMachineState; #define TYPE_MICROBIT_MACHINE MACHINE_TYPE_NAME("microbit") -#define MICROBIT_MACHINE(obj) \ - OBJECT_CHECK(MicrobitMachineState, obj, TYPE_MICROBIT_MACHINE) +DECLARE_INSTANCE_CHECKER(MicrobitMachineState, MICROBIT_MACHINE, + TYPE_MICROBIT_MACHINE) static void microbit_init(MachineState *machine) { diff --git a/hw/arm/mps2-tz.c b/hw/arm/mps2-tz.c index 8870aea..dbf7d63 100644 --- a/hw/arm/mps2-tz.c +++ b/hw/arm/mps2-tz.c @@ -108,12 +108,8 @@ typedef struct MPS2TZMachineState MPS2TZMachineState; #define TYPE_MPS2TZ_AN505_MACHINE MACHINE_TYPE_NAME("mps2-an505") #define TYPE_MPS2TZ_AN521_MACHINE MACHINE_TYPE_NAME("mps2-an521") -#define MPS2TZ_MACHINE(obj) \ - OBJECT_CHECK(MPS2TZMachineState, obj, TYPE_MPS2TZ_MACHINE) -#define MPS2TZ_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(MPS2TZMachineClass, obj, TYPE_MPS2TZ_MACHINE) -#define MPS2TZ_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(MPS2TZMachineClass, klass, TYPE_MPS2TZ_MACHINE) +DECLARE_OBJ_CHECKERS(MPS2TZMachineState, MPS2TZMachineClass, + MPS2TZ_MACHINE, TYPE_MPS2TZ_MACHINE) /* Main SYSCLK frequency in Hz */ #define SYSCLK_FRQ 20000000 diff --git a/hw/arm/mps2.c b/hw/arm/mps2.c index b5173e3..4ee5c38 100644 --- a/hw/arm/mps2.c +++ b/hw/arm/mps2.c @@ -84,12 +84,8 @@ typedef struct MPS2MachineState MPS2MachineState; #define TYPE_MPS2_AN385_MACHINE MACHINE_TYPE_NAME("mps2-an385") #define TYPE_MPS2_AN511_MACHINE MACHINE_TYPE_NAME("mps2-an511") -#define MPS2_MACHINE(obj) \ - OBJECT_CHECK(MPS2MachineState, obj, TYPE_MPS2_MACHINE) -#define MPS2_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(MPS2MachineClass, obj, TYPE_MPS2_MACHINE) -#define MPS2_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(MPS2MachineClass, klass, TYPE_MPS2_MACHINE) +DECLARE_OBJ_CHECKERS(MPS2MachineState, MPS2MachineClass, + MPS2_MACHINE, TYPE_MPS2_MACHINE) /* Main SYSCLK frequency in Hz */ #define SYSCLK_FRQ 25000000 diff --git a/hw/arm/musca.c b/hw/arm/musca.c index 7fd8634..1601525 100644 --- a/hw/arm/musca.c +++ b/hw/arm/musca.c @@ -90,12 +90,8 @@ typedef struct MuscaMachineState MuscaMachineState; #define TYPE_MUSCA_A_MACHINE MACHINE_TYPE_NAME("musca-a") #define TYPE_MUSCA_B1_MACHINE MACHINE_TYPE_NAME("musca-b1") -#define MUSCA_MACHINE(obj) \ - OBJECT_CHECK(MuscaMachineState, obj, TYPE_MUSCA_MACHINE) -#define MUSCA_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(MuscaMachineClass, obj, TYPE_MUSCA_MACHINE) -#define MUSCA_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(MuscaMachineClass, klass, TYPE_MUSCA_MACHINE) +DECLARE_OBJ_CHECKERS(MuscaMachineState, MuscaMachineClass, + MUSCA_MACHINE, TYPE_MUSCA_MACHINE) /* * Main SYSCLK frequency in Hz diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c index 695699e..2117a04 100644 --- a/hw/arm/musicpal.c +++ b/hw/arm/musicpal.c @@ -156,8 +156,8 @@ typedef struct mv88w8618_rx_desc { #define TYPE_MV88W8618_ETH "mv88w8618_eth" typedef struct mv88w8618_eth_state mv88w8618_eth_state; -#define MV88W8618_ETH(obj) \ - OBJECT_CHECK(mv88w8618_eth_state, (obj), TYPE_MV88W8618_ETH) +DECLARE_INSTANCE_CHECKER(mv88w8618_eth_state, MV88W8618_ETH, + TYPE_MV88W8618_ETH) struct mv88w8618_eth_state { /*< private >*/ @@ -486,8 +486,8 @@ static const TypeInfo mv88w8618_eth_info = { #define TYPE_MUSICPAL_LCD "musicpal_lcd" typedef struct musicpal_lcd_state musicpal_lcd_state; -#define MUSICPAL_LCD(obj) \ - OBJECT_CHECK(musicpal_lcd_state, (obj), TYPE_MUSICPAL_LCD) +DECLARE_INSTANCE_CHECKER(musicpal_lcd_state, MUSICPAL_LCD, + TYPE_MUSICPAL_LCD) struct musicpal_lcd_state { /*< private >*/ @@ -704,8 +704,8 @@ static const TypeInfo musicpal_lcd_info = { #define TYPE_MV88W8618_PIC "mv88w8618_pic" typedef struct mv88w8618_pic_state mv88w8618_pic_state; -#define MV88W8618_PIC(obj) \ - OBJECT_CHECK(mv88w8618_pic_state, (obj), TYPE_MV88W8618_PIC) +DECLARE_INSTANCE_CHECKER(mv88w8618_pic_state, MV88W8618_PIC, + TYPE_MV88W8618_PIC) struct mv88w8618_pic_state { /*< private >*/ @@ -842,8 +842,8 @@ typedef struct mv88w8618_timer_state { #define TYPE_MV88W8618_PIT "mv88w8618_pit" typedef struct mv88w8618_pit_state mv88w8618_pit_state; -#define MV88W8618_PIT(obj) \ - OBJECT_CHECK(mv88w8618_pit_state, (obj), TYPE_MV88W8618_PIT) +DECLARE_INSTANCE_CHECKER(mv88w8618_pit_state, MV88W8618_PIT, + TYPE_MV88W8618_PIT) struct mv88w8618_pit_state { /*< private >*/ @@ -1010,8 +1010,8 @@ static const TypeInfo mv88w8618_pit_info = { #define TYPE_MV88W8618_FLASHCFG "mv88w8618_flashcfg" typedef struct mv88w8618_flashcfg_state mv88w8618_flashcfg_state; -#define MV88W8618_FLASHCFG(obj) \ - OBJECT_CHECK(mv88w8618_flashcfg_state, (obj), TYPE_MV88W8618_FLASHCFG) +DECLARE_INSTANCE_CHECKER(mv88w8618_flashcfg_state, MV88W8618_FLASHCFG, + TYPE_MV88W8618_FLASHCFG) struct mv88w8618_flashcfg_state { /*< private >*/ @@ -1103,8 +1103,8 @@ struct MusicPalMiscState { typedef struct MusicPalMiscState MusicPalMiscState; #define TYPE_MUSICPAL_MISC "musicpal-misc" -#define MUSICPAL_MISC(obj) \ - OBJECT_CHECK(MusicPalMiscState, (obj), TYPE_MUSICPAL_MISC) +DECLARE_INSTANCE_CHECKER(MusicPalMiscState, MUSICPAL_MISC, + TYPE_MUSICPAL_MISC) static uint64_t musicpal_misc_read(void *opaque, hwaddr offset, unsigned size) @@ -1210,8 +1210,8 @@ static void mv88w8618_wlan_realize(DeviceState *dev, Error **errp) #define TYPE_MUSICPAL_GPIO "musicpal_gpio" typedef struct musicpal_gpio_state musicpal_gpio_state; -#define MUSICPAL_GPIO(obj) \ - OBJECT_CHECK(musicpal_gpio_state, (obj), TYPE_MUSICPAL_GPIO) +DECLARE_INSTANCE_CHECKER(musicpal_gpio_state, MUSICPAL_GPIO, + TYPE_MUSICPAL_GPIO) struct musicpal_gpio_state { /*< private >*/ @@ -1461,8 +1461,8 @@ static const TypeInfo musicpal_gpio_info = { #define TYPE_MUSICPAL_KEY "musicpal_key" typedef struct musicpal_key_state musicpal_key_state; -#define MUSICPAL_KEY(obj) \ - OBJECT_CHECK(musicpal_key_state, (obj), TYPE_MUSICPAL_KEY) +DECLARE_INSTANCE_CHECKER(musicpal_key_state, MUSICPAL_KEY, + TYPE_MUSICPAL_KEY) struct musicpal_key_state { /*< private >*/ diff --git a/hw/arm/palm.c b/hw/arm/palm.c index ddabb0e..abc6495 100644 --- a/hw/arm/palm.c +++ b/hw/arm/palm.c @@ -134,8 +134,8 @@ static void palmte_button_event(void *opaque, int keycode) #define TYPE_PALM_MISC_GPIO "palm-misc-gpio" typedef struct PalmMiscGPIOState PalmMiscGPIOState; -#define PALM_MISC_GPIO(obj) \ - OBJECT_CHECK(PalmMiscGPIOState, (obj), TYPE_PALM_MISC_GPIO) +DECLARE_INSTANCE_CHECKER(PalmMiscGPIOState, PALM_MISC_GPIO, + TYPE_PALM_MISC_GPIO) struct PalmMiscGPIOState { SysBusDevice parent_obj; diff --git a/hw/arm/pxa2xx.c b/hw/arm/pxa2xx.c index a48a32e..701baa8 100644 --- a/hw/arm/pxa2xx.c +++ b/hw/arm/pxa2xx.c @@ -471,8 +471,8 @@ static const VMStateDescription vmstate_pxa2xx_mm = { #define TYPE_PXA2XX_SSP "pxa2xx-ssp" typedef struct PXA2xxSSPState PXA2xxSSPState; -#define PXA2XX_SSP(obj) \ - OBJECT_CHECK(PXA2xxSSPState, (obj), TYPE_PXA2XX_SSP) +DECLARE_INSTANCE_CHECKER(PXA2xxSSPState, PXA2XX_SSP, + TYPE_PXA2XX_SSP) /* Synchronous Serial Ports */ struct PXA2xxSSPState { @@ -812,8 +812,8 @@ static void pxa2xx_ssp_init(Object *obj) #define TYPE_PXA2XX_RTC "pxa2xx_rtc" typedef struct PXA2xxRTCState PXA2xxRTCState; -#define PXA2XX_RTC(obj) \ - OBJECT_CHECK(PXA2xxRTCState, (obj), TYPE_PXA2XX_RTC) +DECLARE_INSTANCE_CHECKER(PXA2xxRTCState, PXA2XX_RTC, + TYPE_PXA2XX_RTC) struct PXA2xxRTCState { /*< private >*/ @@ -1246,8 +1246,8 @@ static const TypeInfo pxa2xx_rtc_sysbus_info = { #define TYPE_PXA2XX_I2C_SLAVE "pxa2xx-i2c-slave" typedef struct PXA2xxI2CSlaveState PXA2xxI2CSlaveState; -#define PXA2XX_I2C_SLAVE(obj) \ - OBJECT_CHECK(PXA2xxI2CSlaveState, (obj), TYPE_PXA2XX_I2C_SLAVE) +DECLARE_INSTANCE_CHECKER(PXA2xxI2CSlaveState, PXA2XX_I2C_SLAVE, + TYPE_PXA2XX_I2C_SLAVE) struct PXA2xxI2CSlaveState { I2CSlave parent_obj; diff --git a/hw/arm/pxa2xx_gpio.c b/hw/arm/pxa2xx_gpio.c index 2cd6dd9..16bbe4f 100644 --- a/hw/arm/pxa2xx_gpio.c +++ b/hw/arm/pxa2xx_gpio.c @@ -23,8 +23,8 @@ #define TYPE_PXA2XX_GPIO "pxa2xx-gpio" typedef struct PXA2xxGPIOInfo PXA2xxGPIOInfo; -#define PXA2XX_GPIO(obj) \ - OBJECT_CHECK(PXA2xxGPIOInfo, (obj), TYPE_PXA2XX_GPIO) +DECLARE_INSTANCE_CHECKER(PXA2xxGPIOInfo, PXA2XX_GPIO, + TYPE_PXA2XX_GPIO) struct PXA2xxGPIOInfo { /*< private >*/ diff --git a/hw/arm/pxa2xx_pic.c b/hw/arm/pxa2xx_pic.c index 00e72fd..cb52a9d 100644 --- a/hw/arm/pxa2xx_pic.c +++ b/hw/arm/pxa2xx_pic.c @@ -39,8 +39,8 @@ #define TYPE_PXA2XX_PIC "pxa2xx_pic" typedef struct PXA2xxPICState PXA2xxPICState; -#define PXA2XX_PIC(obj) \ - OBJECT_CHECK(PXA2xxPICState, (obj), TYPE_PXA2XX_PIC) +DECLARE_INSTANCE_CHECKER(PXA2xxPICState, PXA2XX_PIC, + TYPE_PXA2XX_PIC) struct PXA2xxPICState { /*< private >*/ diff --git a/hw/arm/raspi.c b/hw/arm/raspi.c index d9f7eeb..d2f6745 100644 --- a/hw/arm/raspi.c +++ b/hw/arm/raspi.c @@ -53,13 +53,9 @@ struct RaspiMachineClass { typedef struct RaspiMachineClass RaspiMachineClass; #define TYPE_RASPI_MACHINE MACHINE_TYPE_NAME("raspi-common") -#define RASPI_MACHINE(obj) \ - OBJECT_CHECK(RaspiMachineState, (obj), TYPE_RASPI_MACHINE) +DECLARE_OBJ_CHECKERS(RaspiMachineState, RaspiMachineClass, + RASPI_MACHINE, TYPE_RASPI_MACHINE) -#define RASPI_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(RaspiMachineClass, (klass), TYPE_RASPI_MACHINE) -#define RASPI_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(RaspiMachineClass, (obj), TYPE_RASPI_MACHINE) /* * Board revision codes: diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c index a638fb3..ac68b46 100644 --- a/hw/arm/sbsa-ref.c +++ b/hw/arm/sbsa-ref.c @@ -98,8 +98,8 @@ struct SBSAMachineState { typedef struct SBSAMachineState SBSAMachineState; #define TYPE_SBSA_MACHINE MACHINE_TYPE_NAME("sbsa-ref") -#define SBSA_MACHINE(obj) \ - OBJECT_CHECK(SBSAMachineState, (obj), TYPE_SBSA_MACHINE) +DECLARE_INSTANCE_CHECKER(SBSAMachineState, SBSA_MACHINE, + TYPE_SBSA_MACHINE) static const MemMapEntry sbsa_ref_memmap[] = { /* 512M boot ROM */ diff --git a/hw/arm/spitz.c b/hw/arm/spitz.c index 0bf5745..a7ad667 100644 --- a/hw/arm/spitz.c +++ b/hw/arm/spitz.c @@ -59,12 +59,8 @@ struct SpitzMachineState { typedef struct SpitzMachineState SpitzMachineState; #define TYPE_SPITZ_MACHINE "spitz-common" -#define SPITZ_MACHINE(obj) \ - OBJECT_CHECK(SpitzMachineState, obj, TYPE_SPITZ_MACHINE) -#define SPITZ_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(SpitzMachineClass, obj, TYPE_SPITZ_MACHINE) -#define SPITZ_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(SpitzMachineClass, klass, TYPE_SPITZ_MACHINE) +DECLARE_OBJ_CHECKERS(SpitzMachineState, SpitzMachineClass, + SPITZ_MACHINE, TYPE_SPITZ_MACHINE) #define zaurus_printf(format, ...) \ fprintf(stderr, "%s: " format, __func__, ##__VA_ARGS__) @@ -89,7 +85,8 @@ typedef struct SpitzMachineState SpitzMachineState; #define TYPE_SL_NAND "sl-nand" typedef struct SLNANDState SLNANDState; -#define SL_NAND(obj) OBJECT_CHECK(SLNANDState, (obj), TYPE_SL_NAND) +DECLARE_INSTANCE_CHECKER(SLNANDState, SL_NAND, + TYPE_SL_NAND) struct SLNANDState { SysBusDevice parent_obj; @@ -266,8 +263,8 @@ static const int spitz_gpiomap[5] = { #define TYPE_SPITZ_KEYBOARD "spitz-keyboard" typedef struct SpitzKeyboardState SpitzKeyboardState; -#define SPITZ_KEYBOARD(obj) \ - OBJECT_CHECK(SpitzKeyboardState, (obj), TYPE_SPITZ_KEYBOARD) +DECLARE_INSTANCE_CHECKER(SpitzKeyboardState, SPITZ_KEYBOARD, + TYPE_SPITZ_KEYBOARD) struct SpitzKeyboardState { SysBusDevice parent_obj; @@ -586,7 +583,8 @@ static void spitz_keyboard_realize(DeviceState *dev, Error **errp) #define TYPE_SPITZ_LCDTG "spitz-lcdtg" typedef struct SpitzLCDTG SpitzLCDTG; -#define SPITZ_LCDTG(obj) OBJECT_CHECK(SpitzLCDTG, (obj), TYPE_SPITZ_LCDTG) +DECLARE_INSTANCE_CHECKER(SpitzLCDTG, SPITZ_LCDTG, + TYPE_SPITZ_LCDTG) struct SpitzLCDTG { SSISlave ssidev; @@ -675,7 +673,8 @@ static void spitz_lcdtg_realize(SSISlave *ssi, Error **errp) #define TYPE_CORGI_SSP "corgi-ssp" typedef struct CorgiSSPState CorgiSSPState; -#define CORGI_SSP(obj) OBJECT_CHECK(CorgiSSPState, (obj), TYPE_CORGI_SSP) +DECLARE_INSTANCE_CHECKER(CorgiSSPState, CORGI_SSP, + TYPE_CORGI_SSP) /* "Demux" the signal based on current chipselect */ struct CorgiSSPState { @@ -827,8 +826,8 @@ static void spitz_akita_i2c_setup(PXA2xxState *cpu) */ #define TYPE_SPITZ_MISC_GPIO "spitz-misc-gpio" typedef struct SpitzMiscGPIOState SpitzMiscGPIOState; -#define SPITZ_MISC_GPIO(obj) \ - OBJECT_CHECK(SpitzMiscGPIOState, (obj), TYPE_SPITZ_MISC_GPIO) +DECLARE_INSTANCE_CHECKER(SpitzMiscGPIOState, SPITZ_MISC_GPIO, + TYPE_SPITZ_MISC_GPIO) struct SpitzMiscGPIOState { SysBusDevice parent_obj; diff --git a/hw/arm/stellaris.c b/hw/arm/stellaris.c index d8d7d3a..d6fc4a4 100644 --- a/hw/arm/stellaris.c +++ b/hw/arm/stellaris.c @@ -59,8 +59,8 @@ typedef const struct { #define TYPE_STELLARIS_GPTM "stellaris-gptm" typedef struct gptm_state gptm_state; -#define STELLARIS_GPTM(obj) \ - OBJECT_CHECK(gptm_state, (obj), TYPE_STELLARIS_GPTM) +DECLARE_INSTANCE_CHECKER(gptm_state, STELLARIS_GPTM, + TYPE_STELLARIS_GPTM) struct gptm_state { SysBusDevice parent_obj; @@ -722,8 +722,8 @@ static int stellaris_sys_init(uint32_t base, qemu_irq irq, #define TYPE_STELLARIS_I2C "stellaris-i2c" typedef struct stellaris_i2c_state stellaris_i2c_state; -#define STELLARIS_I2C(obj) \ - OBJECT_CHECK(stellaris_i2c_state, (obj), TYPE_STELLARIS_I2C) +DECLARE_INSTANCE_CHECKER(stellaris_i2c_state, STELLARIS_I2C, + TYPE_STELLARIS_I2C) struct stellaris_i2c_state { SysBusDevice parent_obj; @@ -936,8 +936,8 @@ static void stellaris_i2c_init(Object *obj) #define TYPE_STELLARIS_ADC "stellaris-adc" typedef struct StellarisADCState stellaris_adc_state; -#define STELLARIS_ADC(obj) \ - OBJECT_CHECK(stellaris_adc_state, (obj), TYPE_STELLARIS_ADC) +DECLARE_INSTANCE_CHECKER(stellaris_adc_state, STELLARIS_ADC, + TYPE_STELLARIS_ADC) struct StellarisADCState { SysBusDevice parent_obj; diff --git a/hw/arm/strongarm.c b/hw/arm/strongarm.c index 8faeaf8..0fe829b 100644 --- a/hw/arm/strongarm.c +++ b/hw/arm/strongarm.c @@ -86,8 +86,8 @@ static struct { #define TYPE_STRONGARM_PIC "strongarm_pic" typedef struct StrongARMPICState StrongARMPICState; -#define STRONGARM_PIC(obj) \ - OBJECT_CHECK(StrongARMPICState, (obj), TYPE_STRONGARM_PIC) +DECLARE_INSTANCE_CHECKER(StrongARMPICState, STRONGARM_PIC, + TYPE_STRONGARM_PIC) struct StrongARMPICState { SysBusDevice parent_obj; @@ -255,8 +255,8 @@ static const TypeInfo strongarm_pic_info = { #define TYPE_STRONGARM_RTC "strongarm-rtc" typedef struct StrongARMRTCState StrongARMRTCState; -#define STRONGARM_RTC(obj) \ - OBJECT_CHECK(StrongARMRTCState, (obj), TYPE_STRONGARM_RTC) +DECLARE_INSTANCE_CHECKER(StrongARMRTCState, STRONGARM_RTC, + TYPE_STRONGARM_RTC) struct StrongARMRTCState { SysBusDevice parent_obj; @@ -482,8 +482,8 @@ static const TypeInfo strongarm_rtc_sysbus_info = { #define TYPE_STRONGARM_GPIO "strongarm-gpio" typedef struct StrongARMGPIOInfo StrongARMGPIOInfo; -#define STRONGARM_GPIO(obj) \ - OBJECT_CHECK(StrongARMGPIOInfo, (obj), TYPE_STRONGARM_GPIO) +DECLARE_INSTANCE_CHECKER(StrongARMGPIOInfo, STRONGARM_GPIO, + TYPE_STRONGARM_GPIO) struct StrongARMGPIOInfo { SysBusDevice busdev; @@ -721,8 +721,8 @@ static const TypeInfo strongarm_gpio_info = { #define TYPE_STRONGARM_PPC "strongarm-ppc" typedef struct StrongARMPPCInfo StrongARMPPCInfo; -#define STRONGARM_PPC(obj) \ - OBJECT_CHECK(StrongARMPPCInfo, (obj), TYPE_STRONGARM_PPC) +DECLARE_INSTANCE_CHECKER(StrongARMPPCInfo, STRONGARM_PPC, + TYPE_STRONGARM_PPC) struct StrongARMPPCInfo { SysBusDevice parent_obj; @@ -922,8 +922,8 @@ static const TypeInfo strongarm_ppc_info = { #define TYPE_STRONGARM_UART "strongarm-uart" typedef struct StrongARMUARTState StrongARMUARTState; -#define STRONGARM_UART(obj) \ - OBJECT_CHECK(StrongARMUARTState, (obj), TYPE_STRONGARM_UART) +DECLARE_INSTANCE_CHECKER(StrongARMUARTState, STRONGARM_UART, + TYPE_STRONGARM_UART) struct StrongARMUARTState { SysBusDevice parent_obj; @@ -1354,8 +1354,8 @@ static const TypeInfo strongarm_uart_info = { #define TYPE_STRONGARM_SSP "strongarm-ssp" typedef struct StrongARMSSPState StrongARMSSPState; -#define STRONGARM_SSP(obj) \ - OBJECT_CHECK(StrongARMSSPState, (obj), TYPE_STRONGARM_SSP) +DECLARE_INSTANCE_CHECKER(StrongARMSSPState, STRONGARM_SSP, + TYPE_STRONGARM_SSP) struct StrongARMSSPState { SysBusDevice parent_obj; diff --git a/hw/arm/tosa.c b/hw/arm/tosa.c index 6ec83a2..2ef6c7b 100644 --- a/hw/arm/tosa.c +++ b/hw/arm/tosa.c @@ -76,8 +76,8 @@ static void tosa_microdrive_attach(PXA2xxState *cpu) #define TYPE_TOSA_MISC_GPIO "tosa-misc-gpio" typedef struct TosaMiscGPIOState TosaMiscGPIOState; -#define TOSA_MISC_GPIO(obj) \ - OBJECT_CHECK(TosaMiscGPIOState, (obj), TYPE_TOSA_MISC_GPIO) +DECLARE_INSTANCE_CHECKER(TosaMiscGPIOState, TOSA_MISC_GPIO, + TYPE_TOSA_MISC_GPIO) struct TosaMiscGPIOState { SysBusDevice parent_obj; @@ -173,7 +173,8 @@ static void tosa_ssp_realize(SSISlave *dev, Error **errp) #define TYPE_TOSA_DAC "tosa_dac" typedef struct TosaDACState TosaDACState; -#define TOSA_DAC(obj) OBJECT_CHECK(TosaDACState, (obj), TYPE_TOSA_DAC) +DECLARE_INSTANCE_CHECKER(TosaDACState, TOSA_DAC, + TYPE_TOSA_DAC) struct TosaDACState { I2CSlave parent_obj; diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c index 0e2d74c..2ba69f2 100644 --- a/hw/arm/versatilepb.c +++ b/hw/arm/versatilepb.c @@ -36,8 +36,8 @@ #define TYPE_VERSATILE_PB_SIC "versatilepb_sic" typedef struct vpb_sic_state vpb_sic_state; -#define VERSATILE_PB_SIC(obj) \ - OBJECT_CHECK(vpb_sic_state, (obj), TYPE_VERSATILE_PB_SIC) +DECLARE_INSTANCE_CHECKER(vpb_sic_state, VERSATILE_PB_SIC, + TYPE_VERSATILE_PB_SIC) struct vpb_sic_state { SysBusDevice parent_obj; diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c index 4c2c377..01bb4bb 100644 --- a/hw/arm/vexpress.c +++ b/hw/arm/vexpress.c @@ -183,12 +183,8 @@ typedef struct VexpressMachineState VexpressMachineState; #define TYPE_VEXPRESS_MACHINE "vexpress" #define TYPE_VEXPRESS_A9_MACHINE MACHINE_TYPE_NAME("vexpress-a9") #define TYPE_VEXPRESS_A15_MACHINE MACHINE_TYPE_NAME("vexpress-a15") -#define VEXPRESS_MACHINE(obj) \ - OBJECT_CHECK(VexpressMachineState, (obj), TYPE_VEXPRESS_MACHINE) -#define VEXPRESS_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(VexpressMachineClass, obj, TYPE_VEXPRESS_MACHINE) -#define VEXPRESS_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(VexpressMachineClass, klass, TYPE_VEXPRESS_MACHINE) +DECLARE_OBJ_CHECKERS(VexpressMachineState, VexpressMachineClass, + VEXPRESS_MACHINE, TYPE_VEXPRESS_MACHINE) typedef void DBoardInitFn(const VexpressMachineState *machine, ram_addr_t ram_size, diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c index bce99ef..9eb9cea 100644 --- a/hw/arm/xilinx_zynq.c +++ b/hw/arm/xilinx_zynq.c @@ -41,8 +41,8 @@ #define TYPE_ZYNQ_MACHINE MACHINE_TYPE_NAME("xilinx-zynq-a9") typedef struct ZynqMachineState ZynqMachineState; -#define ZYNQ_MACHINE(obj) \ - OBJECT_CHECK(ZynqMachineState, (obj), TYPE_ZYNQ_MACHINE) +DECLARE_INSTANCE_CHECKER(ZynqMachineState, ZYNQ_MACHINE, + TYPE_ZYNQ_MACHINE) /* board base frequency: 33.333333 MHz */ #define PS_CLK_FREQUENCY (100 * 1000 * 1000 / 3) diff --git a/hw/arm/xlnx-versal-virt.c b/hw/arm/xlnx-versal-virt.c index ffa9dd4..5a01e85 100644 --- a/hw/arm/xlnx-versal-virt.c +++ b/hw/arm/xlnx-versal-virt.c @@ -26,8 +26,8 @@ #define TYPE_XLNX_VERSAL_VIRT_MACHINE MACHINE_TYPE_NAME("xlnx-versal-virt") typedef struct VersalVirt VersalVirt; -#define XLNX_VERSAL_VIRT_MACHINE(obj) \ - OBJECT_CHECK(VersalVirt, (obj), TYPE_XLNX_VERSAL_VIRT_MACHINE) +DECLARE_INSTANCE_CHECKER(VersalVirt, XLNX_VERSAL_VIRT_MACHINE, + TYPE_XLNX_VERSAL_VIRT_MACHINE) struct VersalVirt { MachineState parent_obj; diff --git a/hw/arm/xlnx-zcu102.c b/hw/arm/xlnx-zcu102.c index 74f4832..19d5a4d 100644 --- a/hw/arm/xlnx-zcu102.c +++ b/hw/arm/xlnx-zcu102.c @@ -39,8 +39,8 @@ struct XlnxZCU102 { typedef struct XlnxZCU102 XlnxZCU102; #define TYPE_ZCU102_MACHINE MACHINE_TYPE_NAME("xlnx-zcu102") -#define ZCU102_MACHINE(obj) \ - OBJECT_CHECK(XlnxZCU102, (obj), TYPE_ZCU102_MACHINE) +DECLARE_INSTANCE_CHECKER(XlnxZCU102, ZCU102_MACHINE, + TYPE_ZCU102_MACHINE) static bool zcu102_get_secure(Object *obj, Error **errp) diff --git a/hw/arm/z2.c b/hw/arm/z2.c index 9c69481..72ecb6d 100644 --- a/hw/arm/z2.c +++ b/hw/arm/z2.c @@ -114,7 +114,8 @@ struct ZipitLCD { typedef struct ZipitLCD ZipitLCD; #define TYPE_ZIPIT_LCD "zipit-lcd" -#define ZIPIT_LCD(obj) OBJECT_CHECK(ZipitLCD, (obj), TYPE_ZIPIT_LCD) +DECLARE_INSTANCE_CHECKER(ZipitLCD, ZIPIT_LCD, + TYPE_ZIPIT_LCD) static uint32_t zipit_lcd_transfer(SSISlave *dev, uint32_t value) { @@ -198,7 +199,8 @@ static const TypeInfo zipit_lcd_info = { #define TYPE_AER915 "aer915" typedef struct AER915State AER915State; -#define AER915(obj) OBJECT_CHECK(AER915State, (obj), TYPE_AER915) +DECLARE_INSTANCE_CHECKER(AER915State, AER915, + TYPE_AER915) struct AER915State { I2CSlave parent_obj; diff --git a/hw/audio/ac97.c b/hw/audio/ac97.c index 9614419..eb8a7f0 100644 --- a/hw/audio/ac97.c +++ b/hw/audio/ac97.c @@ -128,8 +128,8 @@ enum { #define TYPE_AC97 "AC97" typedef struct AC97LinkState AC97LinkState; -#define AC97(obj) \ - OBJECT_CHECK(AC97LinkState, (obj), TYPE_AC97) +DECLARE_INSTANCE_CHECKER(AC97LinkState, AC97, + TYPE_AC97) #define REC_MASK 7 enum { diff --git a/hw/audio/adlib.c b/hw/audio/adlib.c index a216fe1..870116e 100644 --- a/hw/audio/adlib.c +++ b/hw/audio/adlib.c @@ -53,7 +53,8 @@ #define TYPE_ADLIB "adlib" typedef struct AdlibState AdlibState; -#define ADLIB(obj) OBJECT_CHECK(AdlibState, (obj), TYPE_ADLIB) +DECLARE_INSTANCE_CHECKER(AdlibState, ADLIB, + TYPE_ADLIB) struct AdlibState { ISADevice parent_obj; diff --git a/hw/audio/cs4231.c b/hw/audio/cs4231.c index 2b86805..8e9554c 100644 --- a/hw/audio/cs4231.c +++ b/hw/audio/cs4231.c @@ -39,8 +39,8 @@ #define TYPE_CS4231 "SUNW,CS4231" typedef struct CSState CSState; -#define CS4231(obj) \ - OBJECT_CHECK(CSState, (obj), TYPE_CS4231) +DECLARE_INSTANCE_CHECKER(CSState, CS4231, + TYPE_CS4231) struct CSState { SysBusDevice parent_obj; diff --git a/hw/audio/cs4231a.c b/hw/audio/cs4231a.c index fc064a9..7d60ce6 100644 --- a/hw/audio/cs4231a.c +++ b/hw/audio/cs4231a.c @@ -64,7 +64,8 @@ static struct { #define TYPE_CS4231A "cs4231a" typedef struct CSState CSState; -#define CS4231A(obj) OBJECT_CHECK (CSState, (obj), TYPE_CS4231A) +DECLARE_INSTANCE_CHECKER(CSState, CS4231A, + TYPE_CS4231A) struct CSState { ISADevice dev; diff --git a/hw/audio/es1370.c b/hw/audio/es1370.c index bd620d5..a824f89 100644 --- a/hw/audio/es1370.c +++ b/hw/audio/es1370.c @@ -293,8 +293,8 @@ struct chan_bits { }; #define TYPE_ES1370 "ES1370" -#define ES1370(obj) \ - OBJECT_CHECK(ES1370State, (obj), TYPE_ES1370) +DECLARE_INSTANCE_CHECKER(ES1370State, ES1370, + TYPE_ES1370) static void es1370_dac1_calc_freq (ES1370State *s, uint32_t ctl, uint32_t *old_freq, uint32_t *new_freq); diff --git a/hw/audio/gus.c b/hw/audio/gus.c index 3cd62d4..307fd48 100644 --- a/hw/audio/gus.c +++ b/hw/audio/gus.c @@ -44,7 +44,8 @@ #define TYPE_GUS "gus" typedef struct GUSState GUSState; -#define GUS(obj) OBJECT_CHECK (GUSState, (obj), TYPE_GUS) +DECLARE_INSTANCE_CHECKER(GUSState, GUS, + TYPE_GUS) struct GUSState { ISADevice dev; diff --git a/hw/audio/hda-codec.c b/hw/audio/hda-codec.c index 8dee291..77d31b9 100644 --- a/hw/audio/hda-codec.c +++ b/hw/audio/hda-codec.c @@ -172,7 +172,8 @@ struct HDAAudioStream { }; #define TYPE_HDA_AUDIO "hda-audio" -#define HDA_AUDIO(obj) OBJECT_CHECK(HDAAudioState, (obj), TYPE_HDA_AUDIO) +DECLARE_INSTANCE_CHECKER(HDAAudioState, HDA_AUDIO, + TYPE_HDA_AUDIO) struct HDAAudioState { HDACodecDevice hda; diff --git a/hw/audio/intel-hda.c b/hw/audio/intel-hda.c index de30443..4330213 100644 --- a/hw/audio/intel-hda.c +++ b/hw/audio/intel-hda.c @@ -204,8 +204,8 @@ struct IntelHDAState { #define TYPE_INTEL_HDA_GENERIC "intel-hda-generic" -#define INTEL_HDA(obj) \ - OBJECT_CHECK(IntelHDAState, (obj), TYPE_INTEL_HDA_GENERIC) +DECLARE_INSTANCE_CHECKER(IntelHDAState, INTEL_HDA, + TYPE_INTEL_HDA_GENERIC) struct IntelHDAReg { const char *name; /* register name */ diff --git a/hw/audio/intel-hda.h b/hw/audio/intel-hda.h index 44a2897..813a7a3 100644 --- a/hw/audio/intel-hda.h +++ b/hw/audio/intel-hda.h @@ -10,16 +10,13 @@ #define TYPE_HDA_CODEC_DEVICE "hda-codec" typedef struct HDACodecDevice HDACodecDevice; typedef struct HDACodecDeviceClass HDACodecDeviceClass; -#define HDA_CODEC_DEVICE(obj) \ - OBJECT_CHECK(HDACodecDevice, (obj), TYPE_HDA_CODEC_DEVICE) -#define HDA_CODEC_DEVICE_CLASS(klass) \ - OBJECT_CLASS_CHECK(HDACodecDeviceClass, (klass), TYPE_HDA_CODEC_DEVICE) -#define HDA_CODEC_DEVICE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(HDACodecDeviceClass, (obj), TYPE_HDA_CODEC_DEVICE) +DECLARE_OBJ_CHECKERS(HDACodecDevice, HDACodecDeviceClass, + HDA_CODEC_DEVICE, TYPE_HDA_CODEC_DEVICE) #define TYPE_HDA_BUS "HDA" typedef struct HDACodecBus HDACodecBus; -#define HDA_BUS(obj) OBJECT_CHECK(HDACodecBus, (obj), TYPE_HDA_BUS) +DECLARE_INSTANCE_CHECKER(HDACodecBus, HDA_BUS, + TYPE_HDA_BUS) typedef void (*hda_codec_response_func)(HDACodecDevice *dev, diff --git a/hw/audio/marvell_88w8618.c b/hw/audio/marvell_88w8618.c index 5f2e7f3..c864156 100644 --- a/hw/audio/marvell_88w8618.c +++ b/hw/audio/marvell_88w8618.c @@ -44,8 +44,8 @@ #define MP_AUDIO_MONO (1 << 14) typedef struct mv88w8618_audio_state mv88w8618_audio_state; -#define MV88W8618_AUDIO(obj) \ - OBJECT_CHECK(mv88w8618_audio_state, (obj), TYPE_MV88W8618_AUDIO) +DECLARE_INSTANCE_CHECKER(mv88w8618_audio_state, MV88W8618_AUDIO, + TYPE_MV88W8618_AUDIO) struct mv88w8618_audio_state { SysBusDevice parent_obj; diff --git a/hw/audio/milkymist-ac97.c b/hw/audio/milkymist-ac97.c index 4eacd40..7893539 100644 --- a/hw/audio/milkymist-ac97.c +++ b/hw/audio/milkymist-ac97.c @@ -57,8 +57,8 @@ enum { #define TYPE_MILKYMIST_AC97 "milkymist-ac97" typedef struct MilkymistAC97State MilkymistAC97State; -#define MILKYMIST_AC97(obj) \ - OBJECT_CHECK(MilkymistAC97State, (obj), TYPE_MILKYMIST_AC97) +DECLARE_INSTANCE_CHECKER(MilkymistAC97State, MILKYMIST_AC97, + TYPE_MILKYMIST_AC97) struct MilkymistAC97State { SysBusDevice parent_obj; diff --git a/hw/audio/pcspk.c b/hw/audio/pcspk.c index 57edbe6..cbee885 100644 --- a/hw/audio/pcspk.c +++ b/hw/audio/pcspk.c @@ -41,7 +41,8 @@ #define PCSPK_MIN_COUNT DIV_ROUND_UP(PIT_FREQ, PCSPK_MAX_FREQ) typedef struct PCSpkState PCSpkState; -#define PC_SPEAKER(obj) OBJECT_CHECK(PCSpkState, (obj), TYPE_PC_SPEAKER) +DECLARE_INSTANCE_CHECKER(PCSpkState, PC_SPEAKER, + TYPE_PC_SPEAKER) struct PCSpkState { ISADevice parent_obj; diff --git a/hw/audio/pl041.c b/hw/audio/pl041.c index e514a8c..570a234 100644 --- a/hw/audio/pl041.c +++ b/hw/audio/pl041.c @@ -79,7 +79,8 @@ typedef struct { #define TYPE_PL041 "pl041" typedef struct PL041State PL041State; -#define PL041(obj) OBJECT_CHECK(PL041State, (obj), TYPE_PL041) +DECLARE_INSTANCE_CHECKER(PL041State, PL041, + TYPE_PL041) struct PL041State { SysBusDevice parent_obj; diff --git a/hw/audio/sb16.c b/hw/audio/sb16.c index 840f743..6aa2c0f 100644 --- a/hw/audio/sb16.c +++ b/hw/audio/sb16.c @@ -51,7 +51,8 @@ static const char e3[] = "COPYRIGHT (C) CREATIVE TECHNOLOGY LTD, 1992."; #define TYPE_SB16 "sb16" typedef struct SB16State SB16State; -#define SB16(obj) OBJECT_CHECK (SB16State, (obj), TYPE_SB16) +DECLARE_INSTANCE_CHECKER(SB16State, SB16, + TYPE_SB16) struct SB16State { ISADevice parent_obj; diff --git a/hw/audio/wm8750.c b/hw/audio/wm8750.c index dae23f4..7d6fcfe 100644 --- a/hw/audio/wm8750.c +++ b/hw/audio/wm8750.c @@ -28,7 +28,8 @@ typedef struct { } WMRate; typedef struct WM8750State WM8750State; -#define WM8750(obj) OBJECT_CHECK(WM8750State, (obj), TYPE_WM8750) +DECLARE_INSTANCE_CHECKER(WM8750State, WM8750, + TYPE_WM8750) struct WM8750State { I2CSlave parent_obj; diff --git a/hw/avr/arduino.c b/hw/avr/arduino.c index c24183c..3c83884 100644 --- a/hw/avr/arduino.c +++ b/hw/avr/arduino.c @@ -36,12 +36,8 @@ typedef struct ArduinoMachineClass ArduinoMachineClass; #define TYPE_ARDUINO_MACHINE \ MACHINE_TYPE_NAME("arduino") -#define ARDUINO_MACHINE(obj) \ - OBJECT_CHECK(ArduinoMachineState, (obj), TYPE_ARDUINO_MACHINE) -#define ARDUINO_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(ArduinoMachineClass, (klass), TYPE_ARDUINO_MACHINE) -#define ARDUINO_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(ArduinoMachineClass, (obj), TYPE_ARDUINO_MACHINE) +DECLARE_OBJ_CHECKERS(ArduinoMachineState, ArduinoMachineClass, + ARDUINO_MACHINE, TYPE_ARDUINO_MACHINE) static void arduino_machine_init(MachineState *machine) { diff --git a/hw/avr/atmega.c b/hw/avr/atmega.c index c3b8e05..44c6afe 100644 --- a/hw/avr/atmega.c +++ b/hw/avr/atmega.c @@ -63,10 +63,8 @@ struct AtmegaMcuClass { }; typedef struct AtmegaMcuClass AtmegaMcuClass; -#define ATMEGA_MCU_CLASS(klass) \ - OBJECT_CLASS_CHECK(AtmegaMcuClass, (klass), TYPE_ATMEGA_MCU) -#define ATMEGA_MCU_GET_CLASS(obj) \ - OBJECT_GET_CLASS(AtmegaMcuClass, (obj), TYPE_ATMEGA_MCU) +DECLARE_CLASS_CHECKERS(AtmegaMcuClass, ATMEGA_MCU, + TYPE_ATMEGA_MCU) static const peripheral_cfg dev168_328[PERIFMAX] = { [USART0] = { 0xc0, POWER0, 1 }, diff --git a/hw/avr/atmega.h b/hw/avr/atmega.h index 2c46ecb..a99ee15 100644 --- a/hw/avr/atmega.h +++ b/hw/avr/atmega.h @@ -24,7 +24,8 @@ #define TYPE_ATMEGA2560_MCU "ATmega2560" typedef struct AtmegaMcuState AtmegaMcuState; -#define ATMEGA_MCU(obj) OBJECT_CHECK(AtmegaMcuState, (obj), TYPE_ATMEGA_MCU) +DECLARE_INSTANCE_CHECKER(AtmegaMcuState, ATMEGA_MCU, + TYPE_ATMEGA_MCU) #define POWER_MAX 2 #define USART_MAX 4 diff --git a/hw/block/fdc.c b/hw/block/fdc.c index 70bfb13..224bac5 100644 --- a/hw/block/fdc.c +++ b/hw/block/fdc.c @@ -66,7 +66,8 @@ #define TYPE_FLOPPY_BUS "floppy-bus" typedef struct FloppyBus FloppyBus; -#define FLOPPY_BUS(obj) OBJECT_CHECK(FloppyBus, (obj), TYPE_FLOPPY_BUS) +DECLARE_INSTANCE_CHECKER(FloppyBus, FLOPPY_BUS, + TYPE_FLOPPY_BUS) typedef struct FDCtrl FDCtrl; typedef struct FDrive FDrive; @@ -497,8 +498,8 @@ static const BlockDevOps fd_block_ops = { #define TYPE_FLOPPY_DRIVE "floppy" typedef struct FloppyDrive FloppyDrive; -#define FLOPPY_DRIVE(obj) \ - OBJECT_CHECK(FloppyDrive, (obj), TYPE_FLOPPY_DRIVE) +DECLARE_INSTANCE_CHECKER(FloppyDrive, FLOPPY_DRIVE, + TYPE_FLOPPY_DRIVE) struct FloppyDrive { DeviceState qdev; @@ -890,7 +891,8 @@ static FloppyDriveType get_fallback_drive_type(FDrive *drv) #define TYPE_SYSBUS_FDC "base-sysbus-fdc" typedef struct FDCtrlSysBus FDCtrlSysBus; -#define SYSBUS_FDC(obj) OBJECT_CHECK(FDCtrlSysBus, (obj), TYPE_SYSBUS_FDC) +DECLARE_INSTANCE_CHECKER(FDCtrlSysBus, SYSBUS_FDC, + TYPE_SYSBUS_FDC) struct FDCtrlSysBus { /*< private >*/ @@ -901,7 +903,8 @@ struct FDCtrlSysBus { }; typedef struct FDCtrlISABus FDCtrlISABus; -#define ISA_FDC(obj) OBJECT_CHECK(FDCtrlISABus, (obj), TYPE_ISA_FDC) +DECLARE_INSTANCE_CHECKER(FDCtrlISABus, ISA_FDC, + TYPE_ISA_FDC) struct FDCtrlISABus { ISADevice parent_obj; diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c index 9de4f9b..8dae779 100644 --- a/hw/block/m25p80.c +++ b/hw/block/m25p80.c @@ -465,12 +465,8 @@ struct M25P80Class { typedef struct M25P80Class M25P80Class; #define TYPE_M25P80 "m25p80-generic" -#define M25P80(obj) \ - OBJECT_CHECK(Flash, (obj), TYPE_M25P80) -#define M25P80_CLASS(klass) \ - OBJECT_CLASS_CHECK(M25P80Class, (klass), TYPE_M25P80) -#define M25P80_GET_CLASS(obj) \ - OBJECT_GET_CLASS(M25P80Class, (obj), TYPE_M25P80) +DECLARE_OBJ_CHECKERS(Flash, M25P80Class, + M25P80, TYPE_M25P80) static inline Manufacturer get_man(Flash *s) { diff --git a/hw/block/nand.c b/hw/block/nand.c index 7c7a08b..5c8112e 100644 --- a/hw/block/nand.c +++ b/hw/block/nand.c @@ -90,8 +90,8 @@ struct NANDFlashState { #define TYPE_NAND "nand" -#define NAND(obj) \ - OBJECT_CHECK(NANDFlashState, (obj), TYPE_NAND) +DECLARE_INSTANCE_CHECKER(NANDFlashState, NAND, + TYPE_NAND) static void mem_and(uint8_t *dest, const uint8_t *src, size_t n) { diff --git a/hw/block/onenand.c b/hw/block/onenand.c index 5fe235d..19f55ab 100644 --- a/hw/block/onenand.c +++ b/hw/block/onenand.c @@ -41,7 +41,8 @@ #define TYPE_ONE_NAND "onenand" typedef struct OneNANDState OneNANDState; -#define ONE_NAND(obj) OBJECT_CHECK(OneNANDState, (obj), TYPE_ONE_NAND) +DECLARE_INSTANCE_CHECKER(OneNANDState, ONE_NAND, + TYPE_ONE_NAND) struct OneNANDState { SysBusDevice parent_obj; diff --git a/hw/char/debugcon.c b/hw/char/debugcon.c index 219e88e..daaaca0 100644 --- a/hw/char/debugcon.c +++ b/hw/char/debugcon.c @@ -34,8 +34,8 @@ #define TYPE_ISA_DEBUGCON_DEVICE "isa-debugcon" typedef struct ISADebugconState ISADebugconState; -#define ISA_DEBUGCON_DEVICE(obj) \ - OBJECT_CHECK(ISADebugconState, (obj), TYPE_ISA_DEBUGCON_DEVICE) +DECLARE_INSTANCE_CHECKER(ISADebugconState, ISA_DEBUGCON_DEVICE, + TYPE_ISA_DEBUGCON_DEVICE) //#define DEBUG_DEBUGCON diff --git a/hw/char/etraxfs_ser.c b/hw/char/etraxfs_ser.c index 9ca9f21..d9fba2a 100644 --- a/hw/char/etraxfs_ser.c +++ b/hw/char/etraxfs_ser.c @@ -51,8 +51,8 @@ #define TYPE_ETRAX_FS_SERIAL "etraxfs,serial" typedef struct ETRAXSerial ETRAXSerial; -#define ETRAX_SERIAL(obj) \ - OBJECT_CHECK(ETRAXSerial, (obj), TYPE_ETRAX_FS_SERIAL) +DECLARE_INSTANCE_CHECKER(ETRAXSerial, ETRAX_SERIAL, + TYPE_ETRAX_FS_SERIAL) struct ETRAXSerial { SysBusDevice parent_obj; diff --git a/hw/char/exynos4210_uart.c b/hw/char/exynos4210_uart.c index e3a21df..b8ea34e 100644 --- a/hw/char/exynos4210_uart.c +++ b/hw/char/exynos4210_uart.c @@ -140,8 +140,8 @@ typedef struct { #define TYPE_EXYNOS4210_UART "exynos4210.uart" typedef struct Exynos4210UartState Exynos4210UartState; -#define EXYNOS4210_UART(obj) \ - OBJECT_CHECK(Exynos4210UartState, (obj), TYPE_EXYNOS4210_UART) +DECLARE_INSTANCE_CHECKER(Exynos4210UartState, EXYNOS4210_UART, + TYPE_EXYNOS4210_UART) struct Exynos4210UartState { SysBusDevice parent_obj; diff --git a/hw/char/grlib_apbuart.c b/hw/char/grlib_apbuart.c index f48ad21..6fd88d8 100644 --- a/hw/char/grlib_apbuart.c +++ b/hw/char/grlib_apbuart.c @@ -74,8 +74,8 @@ #define FIFO_LENGTH 1024 typedef struct UART UART; -#define GRLIB_APB_UART(obj) \ - OBJECT_CHECK(UART, (obj), TYPE_GRLIB_APB_UART) +DECLARE_INSTANCE_CHECKER(UART, GRLIB_APB_UART, + TYPE_GRLIB_APB_UART) struct UART { SysBusDevice parent_obj; diff --git a/hw/char/ipoctal232.c b/hw/char/ipoctal232.c index c7ea7f8..2c987df 100644 --- a/hw/char/ipoctal232.c +++ b/hw/char/ipoctal232.c @@ -123,8 +123,8 @@ struct IPOctalState { #define TYPE_IPOCTAL "ipoctal232" -#define IPOCTAL(obj) \ - OBJECT_CHECK(IPOctalState, (obj), TYPE_IPOCTAL) +DECLARE_INSTANCE_CHECKER(IPOctalState, IPOCTAL, + TYPE_IPOCTAL) static const VMStateDescription vmstate_scc2698_channel = { .name = "scc2698_channel", diff --git a/hw/char/lm32_juart.c b/hw/char/lm32_juart.c index e7af76a..5723f2e 100644 --- a/hw/char/lm32_juart.c +++ b/hw/char/lm32_juart.c @@ -43,7 +43,8 @@ enum { }; typedef struct LM32JuartState LM32JuartState; -#define LM32_JUART(obj) OBJECT_CHECK(LM32JuartState, (obj), TYPE_LM32_JUART) +DECLARE_INSTANCE_CHECKER(LM32JuartState, LM32_JUART, + TYPE_LM32_JUART) struct LM32JuartState { SysBusDevice parent_obj; diff --git a/hw/char/lm32_uart.c b/hw/char/lm32_uart.c index 8aff785..624bc83 100644 --- a/hw/char/lm32_uart.c +++ b/hw/char/lm32_uart.c @@ -96,7 +96,8 @@ enum { #define TYPE_LM32_UART "lm32-uart" typedef struct LM32UartState LM32UartState; -#define LM32_UART(obj) OBJECT_CHECK(LM32UartState, (obj), TYPE_LM32_UART) +DECLARE_INSTANCE_CHECKER(LM32UartState, LM32_UART, + TYPE_LM32_UART) struct LM32UartState { SysBusDevice parent_obj; diff --git a/hw/char/mcf_uart.c b/hw/char/mcf_uart.c index d6745da..f6baa3c 100644 --- a/hw/char/mcf_uart.c +++ b/hw/char/mcf_uart.c @@ -38,7 +38,8 @@ struct mcf_uart_state { typedef struct mcf_uart_state mcf_uart_state; #define TYPE_MCF_UART "mcf-uart" -#define MCF_UART(obj) OBJECT_CHECK(mcf_uart_state, (obj), TYPE_MCF_UART) +DECLARE_INSTANCE_CHECKER(mcf_uart_state, MCF_UART, + TYPE_MCF_UART) /* UART Status Register bits. */ #define MCF_UART_RxRDY 0x01 diff --git a/hw/char/milkymist-uart.c b/hw/char/milkymist-uart.c index 300a915..41204a0 100644 --- a/hw/char/milkymist-uart.c +++ b/hw/char/milkymist-uart.c @@ -59,8 +59,8 @@ enum { #define TYPE_MILKYMIST_UART "milkymist-uart" typedef struct MilkymistUartState MilkymistUartState; -#define MILKYMIST_UART(obj) \ - OBJECT_CHECK(MilkymistUartState, (obj), TYPE_MILKYMIST_UART) +DECLARE_INSTANCE_CHECKER(MilkymistUartState, MILKYMIST_UART, + TYPE_MILKYMIST_UART) struct MilkymistUartState { SysBusDevice parent_obj; diff --git a/hw/char/parallel.c b/hw/char/parallel.c index 73ac5ee..ddb14f3 100644 --- a/hw/char/parallel.c +++ b/hw/char/parallel.c @@ -94,8 +94,8 @@ typedef struct ParallelState { #define TYPE_ISA_PARALLEL "isa-parallel" typedef struct ISAParallelState ISAParallelState; -#define ISA_PARALLEL(obj) \ - OBJECT_CHECK(ISAParallelState, (obj), TYPE_ISA_PARALLEL) +DECLARE_INSTANCE_CHECKER(ISAParallelState, ISA_PARALLEL, + TYPE_ISA_PARALLEL) struct ISAParallelState { ISADevice parent_obj; diff --git a/hw/char/sclpconsole-lm.c b/hw/char/sclpconsole-lm.c index 0b77af6..81f6d0e 100644 --- a/hw/char/sclpconsole-lm.c +++ b/hw/char/sclpconsole-lm.c @@ -49,8 +49,8 @@ struct SCLPConsoleLM { typedef struct SCLPConsoleLM SCLPConsoleLM; #define TYPE_SCLPLM_CONSOLE "sclplmconsole" -#define SCLPLM_CONSOLE(obj) \ - OBJECT_CHECK(SCLPConsoleLM, (obj), TYPE_SCLPLM_CONSOLE) +DECLARE_INSTANCE_CHECKER(SCLPConsoleLM, SCLPLM_CONSOLE, + TYPE_SCLPLM_CONSOLE) /* * Character layer call-back functions diff --git a/hw/char/sclpconsole.c b/hw/char/sclpconsole.c index 3919368..aa72ab4 100644 --- a/hw/char/sclpconsole.c +++ b/hw/char/sclpconsole.c @@ -45,8 +45,8 @@ struct SCLPConsole { typedef struct SCLPConsole SCLPConsole; #define TYPE_SCLP_CONSOLE "sclpconsole" -#define SCLP_CONSOLE(obj) \ - OBJECT_CHECK(SCLPConsole, (obj), TYPE_SCLP_CONSOLE) +DECLARE_INSTANCE_CHECKER(SCLPConsole, SCLP_CONSOLE, + TYPE_SCLP_CONSOLE) /* character layer call-back functions */ diff --git a/hw/char/serial-isa.c b/hw/char/serial-isa.c index 3d1c9a2..d4aad81 100644 --- a/hw/char/serial-isa.c +++ b/hw/char/serial-isa.c @@ -35,7 +35,8 @@ #include "qom/object.h" typedef struct ISASerialState ISASerialState; -#define ISA_SERIAL(obj) OBJECT_CHECK(ISASerialState, (obj), TYPE_ISA_SERIAL) +DECLARE_INSTANCE_CHECKER(ISASerialState, ISA_SERIAL, + TYPE_ISA_SERIAL) struct ISASerialState { ISADevice parent_obj; diff --git a/hw/char/serial-pci.c b/hw/char/serial-pci.c index 649f08c..f689481 100644 --- a/hw/char/serial-pci.c +++ b/hw/char/serial-pci.c @@ -43,7 +43,8 @@ struct PCISerialState { typedef struct PCISerialState PCISerialState; #define TYPE_PCI_SERIAL "pci-serial" -#define PCI_SERIAL(s) OBJECT_CHECK(PCISerialState, (s), TYPE_PCI_SERIAL) +DECLARE_INSTANCE_CHECKER(PCISerialState, PCI_SERIAL, + TYPE_PCI_SERIAL) static void serial_pci_realize(PCIDevice *dev, Error **errp) { diff --git a/hw/char/spapr_vty.c b/hw/char/spapr_vty.c index 9944933..dd6dd2d 100644 --- a/hw/char/spapr_vty.c +++ b/hw/char/spapr_vty.c @@ -21,8 +21,8 @@ struct SpaprVioVty { typedef struct SpaprVioVty SpaprVioVty; #define TYPE_VIO_SPAPR_VTY_DEVICE "spapr-vty" -#define VIO_SPAPR_VTY_DEVICE(obj) \ - OBJECT_CHECK(SpaprVioVty, (obj), TYPE_VIO_SPAPR_VTY_DEVICE) +DECLARE_INSTANCE_CHECKER(SpaprVioVty, VIO_SPAPR_VTY_DEVICE, + TYPE_VIO_SPAPR_VTY_DEVICE) static int vty_can_receive(void *opaque) { diff --git a/hw/char/terminal3270.c b/hw/char/terminal3270.c index 4efd6a9..d77981b 100644 --- a/hw/char/terminal3270.c +++ b/hw/char/terminal3270.c @@ -39,8 +39,8 @@ struct Terminal3270 { typedef struct Terminal3270 Terminal3270; #define TYPE_TERMINAL_3270 "x-terminal3270" -#define TERMINAL_3270(obj) \ - OBJECT_CHECK(Terminal3270, (obj), TYPE_TERMINAL_3270) +DECLARE_INSTANCE_CHECKER(Terminal3270, TERMINAL_3270, + TYPE_TERMINAL_3270) static int terminal_can_read(void *opaque) { diff --git a/hw/char/virtio-console.c b/hw/char/virtio-console.c index 31144c6..bc752cf 100644 --- a/hw/char/virtio-console.c +++ b/hw/char/virtio-console.c @@ -23,8 +23,8 @@ #define TYPE_VIRTIO_CONSOLE_SERIAL_PORT "virtserialport" typedef struct VirtConsole VirtConsole; -#define VIRTIO_CONSOLE(obj) \ - OBJECT_CHECK(VirtConsole, (obj), TYPE_VIRTIO_CONSOLE_SERIAL_PORT) +DECLARE_INSTANCE_CHECKER(VirtConsole, VIRTIO_CONSOLE, + TYPE_VIRTIO_CONSOLE_SERIAL_PORT) struct VirtConsole { VirtIOSerialPort parent_obj; diff --git a/hw/char/xilinx_uartlite.c b/hw/char/xilinx_uartlite.c index e7ab97d..8e9f9cd 100644 --- a/hw/char/xilinx_uartlite.c +++ b/hw/char/xilinx_uartlite.c @@ -54,8 +54,8 @@ #define TYPE_XILINX_UARTLITE "xlnx.xps-uartlite" typedef struct XilinxUARTLite XilinxUARTLite; -#define XILINX_UARTLITE(obj) \ - OBJECT_CHECK(XilinxUARTLite, (obj), TYPE_XILINX_UARTLITE) +DECLARE_INSTANCE_CHECKER(XilinxUARTLite, XILINX_UARTLITE, + TYPE_XILINX_UARTLITE) struct XilinxUARTLite { SysBusDevice parent_obj; diff --git a/hw/core/irq.c b/hw/core/irq.c index fb3045b..8a9cbdd 100644 --- a/hw/core/irq.c +++ b/hw/core/irq.c @@ -26,7 +26,8 @@ #include "hw/irq.h" #include "qom/object.h" -#define IRQ(obj) OBJECT_CHECK(struct IRQState, (obj), TYPE_IRQ) +DECLARE_INSTANCE_CHECKER(struct IRQState, IRQ, + TYPE_IRQ) struct IRQState { Object parent_obj; diff --git a/hw/cpu/realview_mpcore.c b/hw/cpu/realview_mpcore.c index 1f1df08..fb547ac 100644 --- a/hw/cpu/realview_mpcore.c +++ b/hw/cpu/realview_mpcore.c @@ -19,8 +19,8 @@ #define TYPE_REALVIEW_MPCORE_RIRQ "realview_mpcore" typedef struct mpcore_rirq_state mpcore_rirq_state; -#define REALVIEW_MPCORE_RIRQ(obj) \ - OBJECT_CHECK(mpcore_rirq_state, (obj), TYPE_REALVIEW_MPCORE_RIRQ) +DECLARE_INSTANCE_CHECKER(mpcore_rirq_state, REALVIEW_MPCORE_RIRQ, + TYPE_REALVIEW_MPCORE_RIRQ) /* Dummy PIC to route IRQ lines. The baseboard has 4 independent IRQ controllers. The output of these, plus some of the raw input lines diff --git a/hw/display/ads7846.c b/hw/display/ads7846.c index 59bbce3..4b87ee7 100644 --- a/hw/display/ads7846.c +++ b/hw/display/ads7846.c @@ -32,7 +32,8 @@ struct ADS7846State { typedef struct ADS7846State ADS7846State; #define TYPE_ADS7846 "ads7846" -#define ADS7846(obj) OBJECT_CHECK(ADS7846State, (obj), TYPE_ADS7846) +DECLARE_INSTANCE_CHECKER(ADS7846State, ADS7846, + TYPE_ADS7846) /* Control-byte bitfields */ #define CB_PD0 (1 << 0) diff --git a/hw/display/artist.c b/hw/display/artist.c index c030894..80cd66e 100644 --- a/hw/display/artist.c +++ b/hw/display/artist.c @@ -26,7 +26,8 @@ #define TYPE_ARTIST "artist" typedef struct ARTISTState ARTISTState; -#define ARTIST(obj) OBJECT_CHECK(ARTISTState, (obj), TYPE_ARTIST) +DECLARE_INSTANCE_CHECKER(ARTISTState, ARTIST, + TYPE_ARTIST) #ifdef HOST_WORDS_BIGENDIAN #define ROP8OFF(_i) (3 - (_i)) diff --git a/hw/display/ati_int.h b/hw/display/ati_int.h index 2a8a330..7140054 100644 --- a/hw/display/ati_int.h +++ b/hw/display/ati_int.h @@ -31,7 +31,8 @@ #define TYPE_ATI_VGA "ati-vga" typedef struct ATIVGAState ATIVGAState; -#define ATI_VGA(obj) OBJECT_CHECK(ATIVGAState, (obj), TYPE_ATI_VGA) +DECLARE_INSTANCE_CHECKER(ATIVGAState, ATI_VGA, + TYPE_ATI_VGA) typedef struct ATIVGARegs { uint32_t mm_index; diff --git a/hw/display/bochs-display.c b/hw/display/bochs-display.c index ef92f3a..4158738 100644 --- a/hw/display/bochs-display.c +++ b/hw/display/bochs-display.c @@ -58,8 +58,8 @@ struct BochsDisplayState { typedef struct BochsDisplayState BochsDisplayState; #define TYPE_BOCHS_DISPLAY "bochs-display" -#define BOCHS_DISPLAY(obj) OBJECT_CHECK(BochsDisplayState, (obj), \ - TYPE_BOCHS_DISPLAY) +DECLARE_INSTANCE_CHECKER(BochsDisplayState, BOCHS_DISPLAY, + TYPE_BOCHS_DISPLAY) static const VMStateDescription vmstate_bochs_display = { .name = "bochs-display", diff --git a/hw/display/cg3.c b/hw/display/cg3.c index 49d7e77..d66ba9a 100644 --- a/hw/display/cg3.c +++ b/hw/display/cg3.c @@ -67,7 +67,8 @@ #define TYPE_CG3 "cgthree" typedef struct CG3State CG3State; -#define CG3(obj) OBJECT_CHECK(CG3State, (obj), TYPE_CG3) +DECLARE_INSTANCE_CHECKER(CG3State, CG3, + TYPE_CG3) struct CG3State { SysBusDevice parent_obj; diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c index 9602cea..c088f38 100644 --- a/hw/display/cirrus_vga.c +++ b/hw/display/cirrus_vga.c @@ -186,8 +186,8 @@ struct PCICirrusVGAState { typedef struct PCICirrusVGAState PCICirrusVGAState; #define TYPE_PCI_CIRRUS_VGA "cirrus-vga" -#define PCI_CIRRUS_VGA(obj) \ - OBJECT_CHECK(PCICirrusVGAState, (obj), TYPE_PCI_CIRRUS_VGA) +DECLARE_INSTANCE_CHECKER(PCICirrusVGAState, PCI_CIRRUS_VGA, + TYPE_PCI_CIRRUS_VGA) static uint8_t rop_to_index[256]; diff --git a/hw/display/cirrus_vga_isa.c b/hw/display/cirrus_vga_isa.c index 28d1fa4..e6adee1 100644 --- a/hw/display/cirrus_vga_isa.c +++ b/hw/display/cirrus_vga_isa.c @@ -34,8 +34,8 @@ #define TYPE_ISA_CIRRUS_VGA "isa-cirrus-vga" typedef struct ISACirrusVGAState ISACirrusVGAState; -#define ISA_CIRRUS_VGA(obj) \ - OBJECT_CHECK(ISACirrusVGAState, (obj), TYPE_ISA_CIRRUS_VGA) +DECLARE_INSTANCE_CHECKER(ISACirrusVGAState, ISA_CIRRUS_VGA, + TYPE_ISA_CIRRUS_VGA) struct ISACirrusVGAState { ISADevice parent_obj; diff --git a/hw/display/exynos4210_fimd.c b/hw/display/exynos4210_fimd.c index 993b7e9..3ef8698 100644 --- a/hw/display/exynos4210_fimd.c +++ b/hw/display/exynos4210_fimd.c @@ -295,8 +295,8 @@ struct Exynos4210fimdWindow { #define TYPE_EXYNOS4210_FIMD "exynos4210.fimd" typedef struct Exynos4210fimdState Exynos4210fimdState; -#define EXYNOS4210_FIMD(obj) \ - OBJECT_CHECK(Exynos4210fimdState, (obj), TYPE_EXYNOS4210_FIMD) +DECLARE_INSTANCE_CHECKER(Exynos4210fimdState, EXYNOS4210_FIMD, + TYPE_EXYNOS4210_FIMD) struct Exynos4210fimdState { SysBusDevice parent_obj; diff --git a/hw/display/g364fb.c b/hw/display/g364fb.c index df674c3..4a32fe4 100644 --- a/hw/display/g364fb.c +++ b/hw/display/g364fb.c @@ -488,7 +488,8 @@ static void g364fb_init(DeviceState *dev, G364State *s) #define TYPE_G364 "sysbus-g364" typedef struct G364SysBusState G364SysBusState; -#define G364(obj) OBJECT_CHECK(G364SysBusState, (obj), TYPE_G364) +DECLARE_INSTANCE_CHECKER(G364SysBusState, G364, + TYPE_G364) struct G364SysBusState { SysBusDevice parent_obj; diff --git a/hw/display/jazz_led.c b/hw/display/jazz_led.c index 97ec368..647d05f 100644 --- a/hw/display/jazz_led.c +++ b/hw/display/jazz_led.c @@ -37,7 +37,8 @@ typedef enum { #define TYPE_JAZZ_LED "jazz-led" typedef struct LedState LedState; -#define JAZZ_LED(obj) OBJECT_CHECK(LedState, (obj), TYPE_JAZZ_LED) +DECLARE_INSTANCE_CHECKER(LedState, JAZZ_LED, + TYPE_JAZZ_LED) struct LedState { SysBusDevice parent_obj; diff --git a/hw/display/milkymist-tmu2.c b/hw/display/milkymist-tmu2.c index 66cb8e6..8a9e7c2 100644 --- a/hw/display/milkymist-tmu2.c +++ b/hw/display/milkymist-tmu2.c @@ -84,8 +84,8 @@ struct vertex { #define TYPE_MILKYMIST_TMU2 "milkymist-tmu2" typedef struct MilkymistTMU2State MilkymistTMU2State; -#define MILKYMIST_TMU2(obj) \ - OBJECT_CHECK(MilkymistTMU2State, (obj), TYPE_MILKYMIST_TMU2) +DECLARE_INSTANCE_CHECKER(MilkymistTMU2State, MILKYMIST_TMU2, + TYPE_MILKYMIST_TMU2) struct MilkymistTMU2State { SysBusDevice parent_obj; diff --git a/hw/display/milkymist-vgafb.c b/hw/display/milkymist-vgafb.c index bbf412d..2c87912 100644 --- a/hw/display/milkymist-vgafb.c +++ b/hw/display/milkymist-vgafb.c @@ -70,8 +70,8 @@ enum { #define TYPE_MILKYMIST_VGAFB "milkymist-vgafb" typedef struct MilkymistVgafbState MilkymistVgafbState; -#define MILKYMIST_VGAFB(obj) \ - OBJECT_CHECK(MilkymistVgafbState, (obj), TYPE_MILKYMIST_VGAFB) +DECLARE_INSTANCE_CHECKER(MilkymistVgafbState, MILKYMIST_VGAFB, + TYPE_MILKYMIST_VGAFB) struct MilkymistVgafbState { SysBusDevice parent_obj; diff --git a/hw/display/next-fb.c b/hw/display/next-fb.c index 068dc06..94db020 100644 --- a/hw/display/next-fb.c +++ b/hw/display/next-fb.c @@ -33,7 +33,8 @@ #include "qom/object.h" typedef struct NeXTFbState NeXTFbState; -#define NEXTFB(obj) OBJECT_CHECK(NeXTFbState, (obj), TYPE_NEXTFB) +DECLARE_INSTANCE_CHECKER(NeXTFbState, NEXTFB, + TYPE_NEXTFB) struct NeXTFbState { SysBusDevice parent_obj; diff --git a/hw/display/pl110.c b/hw/display/pl110.c index 4cf953c..af51a2b 100644 --- a/hw/display/pl110.c +++ b/hw/display/pl110.c @@ -50,7 +50,8 @@ enum pl110_version #define TYPE_PL110 "pl110" typedef struct PL110State PL110State; -#define PL110(obj) OBJECT_CHECK(PL110State, (obj), TYPE_PL110) +DECLARE_INSTANCE_CHECKER(PL110State, PL110, + TYPE_PL110) struct PL110State { SysBusDevice parent_obj; diff --git a/hw/display/qxl.h b/hw/display/qxl.h index 4ecb6b2..714cd01 100644 --- a/hw/display/qxl.h +++ b/hw/display/qxl.h @@ -131,7 +131,8 @@ struct PCIQXLDevice { typedef struct PCIQXLDevice PCIQXLDevice; #define TYPE_PCI_QXL "pci-qxl" -#define PCI_QXL(obj) OBJECT_CHECK(PCIQXLDevice, (obj), TYPE_PCI_QXL) +DECLARE_INSTANCE_CHECKER(PCIQXLDevice, PCI_QXL, + TYPE_PCI_QXL) #define PANIC_ON(x) if ((x)) { \ printf("%s: PANIC %s failed\n", __func__, #x); \ diff --git a/hw/display/ramfb-standalone.c b/hw/display/ramfb-standalone.c index dae32b9..8c00943 100644 --- a/hw/display/ramfb-standalone.c +++ b/hw/display/ramfb-standalone.c @@ -8,7 +8,8 @@ #include "qom/object.h" typedef struct RAMFBStandaloneState RAMFBStandaloneState; -#define RAMFB(obj) OBJECT_CHECK(RAMFBStandaloneState, (obj), TYPE_RAMFB_DEVICE) +DECLARE_INSTANCE_CHECKER(RAMFBStandaloneState, RAMFB, + TYPE_RAMFB_DEVICE) struct RAMFBStandaloneState { SysBusDevice parent_obj; diff --git a/hw/display/sii9022.c b/hw/display/sii9022.c index 4bf2c55..d88166f 100644 --- a/hw/display/sii9022.c +++ b/hw/display/sii9022.c @@ -37,7 +37,8 @@ #define TYPE_SII9022 "sii9022" typedef struct sii9022_state sii9022_state; -#define SII9022(obj) OBJECT_CHECK(sii9022_state, (obj), TYPE_SII9022) +DECLARE_INSTANCE_CHECKER(sii9022_state, SII9022, + TYPE_SII9022) struct sii9022_state { I2CSlave parent_obj; diff --git a/hw/display/sm501.c b/hw/display/sm501.c index f886c1e..51120c6 100644 --- a/hw/display/sm501.c +++ b/hw/display/sm501.c @@ -1933,8 +1933,8 @@ static const VMStateDescription vmstate_sm501_state = { #define TYPE_SYSBUS_SM501 "sysbus-sm501" typedef struct SM501SysBusState SM501SysBusState; -#define SYSBUS_SM501(obj) \ - OBJECT_CHECK(SM501SysBusState, (obj), TYPE_SYSBUS_SM501) +DECLARE_INSTANCE_CHECKER(SM501SysBusState, SYSBUS_SM501, + TYPE_SYSBUS_SM501) struct SM501SysBusState { /*< private >*/ @@ -2037,7 +2037,8 @@ static const TypeInfo sm501_sysbus_info = { #define TYPE_PCI_SM501 "sm501" typedef struct SM501PCIState SM501PCIState; -#define PCI_SM501(obj) OBJECT_CHECK(SM501PCIState, (obj), TYPE_PCI_SM501) +DECLARE_INSTANCE_CHECKER(SM501PCIState, PCI_SM501, + TYPE_PCI_SM501) struct SM501PCIState { /*< private >*/ diff --git a/hw/display/ssd0303.c b/hw/display/ssd0303.c index 8804567..0378573 100644 --- a/hw/display/ssd0303.c +++ b/hw/display/ssd0303.c @@ -48,7 +48,8 @@ enum ssd0303_cmd { #define TYPE_SSD0303 "ssd0303" typedef struct ssd0303_state ssd0303_state; -#define SSD0303(obj) OBJECT_CHECK(ssd0303_state, (obj), TYPE_SSD0303) +DECLARE_INSTANCE_CHECKER(ssd0303_state, SSD0303, + TYPE_SSD0303) struct ssd0303_state { I2CSlave parent_obj; diff --git a/hw/display/ssd0323.c b/hw/display/ssd0323.c index c9d79cf..037da81 100644 --- a/hw/display/ssd0323.c +++ b/hw/display/ssd0323.c @@ -69,7 +69,8 @@ struct ssd0323_state { typedef struct ssd0323_state ssd0323_state; #define TYPE_SSD0323 "ssd0323" -#define SSD0323(obj) OBJECT_CHECK(ssd0323_state, (obj), TYPE_SSD0323) +DECLARE_INSTANCE_CHECKER(ssd0323_state, SSD0323, + TYPE_SSD0323) static uint32_t ssd0323_transfer(SSISlave *dev, uint32_t data) diff --git a/hw/display/tcx.c b/hw/display/tcx.c index 5c75589..69e901a 100644 --- a/hw/display/tcx.c +++ b/hw/display/tcx.c @@ -57,7 +57,8 @@ #define TYPE_TCX "SUNW,tcx" typedef struct TCXState TCXState; -#define TCX(obj) OBJECT_CHECK(TCXState, (obj), TYPE_TCX) +DECLARE_INSTANCE_CHECKER(TCXState, TCX, + TYPE_TCX) struct TCXState { SysBusDevice parent_obj; diff --git a/hw/display/vga-isa.c b/hw/display/vga-isa.c index 50efc37..0ebfcca 100644 --- a/hw/display/vga-isa.c +++ b/hw/display/vga-isa.c @@ -36,7 +36,8 @@ #define TYPE_ISA_VGA "isa-vga" typedef struct ISAVGAState ISAVGAState; -#define ISA_VGA(obj) OBJECT_CHECK(ISAVGAState, (obj), TYPE_ISA_VGA) +DECLARE_INSTANCE_CHECKER(ISAVGAState, ISA_VGA, + TYPE_ISA_VGA) struct ISAVGAState { ISADevice parent_obj; diff --git a/hw/display/vga-pci.c b/hw/display/vga-pci.c index 852cbf3..3b45fa3 100644 --- a/hw/display/vga-pci.c +++ b/hw/display/vga-pci.c @@ -54,7 +54,8 @@ struct PCIVGAState { typedef struct PCIVGAState PCIVGAState; #define TYPE_PCI_VGA "pci-vga" -#define PCI_VGA(obj) OBJECT_CHECK(PCIVGAState, (obj), TYPE_PCI_VGA) +DECLARE_INSTANCE_CHECKER(PCIVGAState, PCI_VGA, + TYPE_PCI_VGA) static const VMStateDescription vmstate_vga_pci = { .name = "vga", diff --git a/hw/display/vhost-user-gpu-pci.c b/hw/display/vhost-user-gpu-pci.c index 678b762..a02b23e 100644 --- a/hw/display/vhost-user-gpu-pci.c +++ b/hw/display/vhost-user-gpu-pci.c @@ -15,8 +15,8 @@ #define TYPE_VHOST_USER_GPU_PCI "vhost-user-gpu-pci" typedef struct VhostUserGPUPCI VhostUserGPUPCI; -#define VHOST_USER_GPU_PCI(obj) \ - OBJECT_CHECK(VhostUserGPUPCI, (obj), TYPE_VHOST_USER_GPU_PCI) +DECLARE_INSTANCE_CHECKER(VhostUserGPUPCI, VHOST_USER_GPU_PCI, + TYPE_VHOST_USER_GPU_PCI) struct VhostUserGPUPCI { VirtIOGPUPCIBase parent_obj; diff --git a/hw/display/vhost-user-vga.c b/hw/display/vhost-user-vga.c index 2cc9616..7110ea6 100644 --- a/hw/display/vhost-user-vga.c +++ b/hw/display/vhost-user-vga.c @@ -16,8 +16,8 @@ #define TYPE_VHOST_USER_VGA "vhost-user-vga" typedef struct VhostUserVGA VhostUserVGA; -#define VHOST_USER_VGA(obj) \ - OBJECT_CHECK(VhostUserVGA, (obj), TYPE_VHOST_USER_VGA) +DECLARE_INSTANCE_CHECKER(VhostUserVGA, VHOST_USER_VGA, + TYPE_VHOST_USER_VGA) struct VhostUserVGA { VirtIOVGABase parent_obj; diff --git a/hw/display/virtio-gpu-pci.c b/hw/display/virtio-gpu-pci.c index 7248ec3..d742a30 100644 --- a/hw/display/virtio-gpu-pci.c +++ b/hw/display/virtio-gpu-pci.c @@ -67,8 +67,8 @@ static const TypeInfo virtio_gpu_pci_base_info = { #define TYPE_VIRTIO_GPU_PCI "virtio-gpu-pci" typedef struct VirtIOGPUPCI VirtIOGPUPCI; -#define VIRTIO_GPU_PCI(obj) \ - OBJECT_CHECK(VirtIOGPUPCI, (obj), TYPE_VIRTIO_GPU_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOGPUPCI, VIRTIO_GPU_PCI, + TYPE_VIRTIO_GPU_PCI) struct VirtIOGPUPCI { VirtIOGPUPCIBase parent_obj; diff --git a/hw/display/virtio-vga.c b/hw/display/virtio-vga.c index 0bb98ed..17e5658 100644 --- a/hw/display/virtio-vga.c +++ b/hw/display/virtio-vga.c @@ -204,8 +204,8 @@ static TypeInfo virtio_vga_base_info = { #define TYPE_VIRTIO_VGA "virtio-vga" typedef struct VirtIOVGA VirtIOVGA; -#define VIRTIO_VGA(obj) \ - OBJECT_CHECK(VirtIOVGA, (obj), TYPE_VIRTIO_VGA) +DECLARE_INSTANCE_CHECKER(VirtIOVGA, VIRTIO_VGA, + TYPE_VIRTIO_VGA) struct VirtIOVGA { VirtIOVGABase parent_obj; diff --git a/hw/display/virtio-vga.h b/hw/display/virtio-vga.h index 2d3b765..19f8af7 100644 --- a/hw/display/virtio-vga.h +++ b/hw/display/virtio-vga.h @@ -11,12 +11,8 @@ #define TYPE_VIRTIO_VGA_BASE "virtio-vga-base" typedef struct VirtIOVGABase VirtIOVGABase; typedef struct VirtIOVGABaseClass VirtIOVGABaseClass; -#define VIRTIO_VGA_BASE(obj) \ - OBJECT_CHECK(VirtIOVGABase, (obj), TYPE_VIRTIO_VGA_BASE) -#define VIRTIO_VGA_BASE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(VirtIOVGABaseClass, obj, TYPE_VIRTIO_VGA_BASE) -#define VIRTIO_VGA_BASE_CLASS(klass) \ - OBJECT_CLASS_CHECK(VirtIOVGABaseClass, klass, TYPE_VIRTIO_VGA_BASE) +DECLARE_OBJ_CHECKERS(VirtIOVGABase, VirtIOVGABaseClass, + VIRTIO_VGA_BASE, TYPE_VIRTIO_VGA_BASE) struct VirtIOVGABase { VirtIOPCIProxy parent_obj; diff --git a/hw/display/vmware_vga.c b/hw/display/vmware_vga.c index 076dfce..bef0d7d 100644 --- a/hw/display/vmware_vga.c +++ b/hw/display/vmware_vga.c @@ -86,8 +86,8 @@ struct vmsvga_state_s { #define TYPE_VMWARE_SVGA "vmware-svga" -#define VMWARE_SVGA(obj) \ - OBJECT_CHECK(struct pci_vmsvga_state_s, (obj), TYPE_VMWARE_SVGA) +DECLARE_INSTANCE_CHECKER(struct pci_vmsvga_state_s, VMWARE_SVGA, + TYPE_VMWARE_SVGA) struct pci_vmsvga_state_s { /*< private >*/ diff --git a/hw/dma/i82374.c b/hw/dma/i82374.c index c12946a..5b7ff63 100644 --- a/hw/dma/i82374.c +++ b/hw/dma/i82374.c @@ -33,7 +33,8 @@ #define TYPE_I82374 "i82374" typedef struct I82374State I82374State; -#define I82374(obj) OBJECT_CHECK(I82374State, (obj), TYPE_I82374) +DECLARE_INSTANCE_CHECKER(I82374State, I82374, + TYPE_I82374) //#define DEBUG_I82374 diff --git a/hw/dma/pl330.c b/hw/dma/pl330.c index 380d45d..859586f 100644 --- a/hw/dma/pl330.c +++ b/hw/dma/pl330.c @@ -272,7 +272,8 @@ struct PL330State { }; #define TYPE_PL330 "pl330" -#define PL330(obj) OBJECT_CHECK(PL330State, (obj), TYPE_PL330) +DECLARE_INSTANCE_CHECKER(PL330State, PL330, + TYPE_PL330) static const VMStateDescription vmstate_pl330 = { .name = "pl330", diff --git a/hw/dma/puv3_dma.c b/hw/dma/puv3_dma.c index 72e7b39..825e3dc 100644 --- a/hw/dma/puv3_dma.c +++ b/hw/dma/puv3_dma.c @@ -24,7 +24,8 @@ #define TYPE_PUV3_DMA "puv3_dma" typedef struct PUV3DMAState PUV3DMAState; -#define PUV3_DMA(obj) OBJECT_CHECK(PUV3DMAState, (obj), TYPE_PUV3_DMA) +DECLARE_INSTANCE_CHECKER(PUV3DMAState, PUV3_DMA, + TYPE_PUV3_DMA) struct PUV3DMAState { SysBusDevice parent_obj; diff --git a/hw/dma/pxa2xx_dma.c b/hw/dma/pxa2xx_dma.c index 6ae8035..4f6c0e5 100644 --- a/hw/dma/pxa2xx_dma.c +++ b/hw/dma/pxa2xx_dma.c @@ -36,7 +36,8 @@ typedef struct { #define TYPE_PXA2XX_DMA "pxa2xx-dma" typedef struct PXA2xxDMAState PXA2xxDMAState; -#define PXA2XX_DMA(obj) OBJECT_CHECK(PXA2xxDMAState, (obj), TYPE_PXA2XX_DMA) +DECLARE_INSTANCE_CHECKER(PXA2xxDMAState, PXA2XX_DMA, + TYPE_PXA2XX_DMA) struct PXA2xxDMAState { SysBusDevice parent_obj; diff --git a/hw/dma/rc4030.c b/hw/dma/rc4030.c index 7d6eaf5..c584815 100644 --- a/hw/dma/rc4030.c +++ b/hw/dma/rc4030.c @@ -57,8 +57,8 @@ typedef struct dma_pagetable_entry { #define TYPE_RC4030 "rc4030" typedef struct rc4030State rc4030State; -#define RC4030(obj) \ - OBJECT_CHECK(rc4030State, (obj), TYPE_RC4030) +DECLARE_INSTANCE_CHECKER(rc4030State, RC4030, + TYPE_RC4030) #define TYPE_RC4030_IOMMU_MEMORY_REGION "rc4030-iommu-memory-region" diff --git a/hw/dma/xilinx_axidma.c b/hw/dma/xilinx_axidma.c index 6d48fea..f313453 100644 --- a/hw/dma/xilinx_axidma.c +++ b/hw/dma/xilinx_axidma.c @@ -44,17 +44,15 @@ #define TYPE_XILINX_AXI_DMA_CONTROL_STREAM "xilinx-axi-dma-control-stream" typedef struct XilinxAXIDMA XilinxAXIDMA; -#define XILINX_AXI_DMA(obj) \ - OBJECT_CHECK(XilinxAXIDMA, (obj), TYPE_XILINX_AXI_DMA) +DECLARE_INSTANCE_CHECKER(XilinxAXIDMA, XILINX_AXI_DMA, + TYPE_XILINX_AXI_DMA) typedef struct XilinxAXIDMAStreamSlave XilinxAXIDMAStreamSlave; -#define XILINX_AXI_DMA_DATA_STREAM(obj) \ - OBJECT_CHECK(XilinxAXIDMAStreamSlave, (obj),\ - TYPE_XILINX_AXI_DMA_DATA_STREAM) +DECLARE_INSTANCE_CHECKER(XilinxAXIDMAStreamSlave, XILINX_AXI_DMA_DATA_STREAM, + TYPE_XILINX_AXI_DMA_DATA_STREAM) -#define XILINX_AXI_DMA_CONTROL_STREAM(obj) \ - OBJECT_CHECK(XilinxAXIDMAStreamSlave, (obj),\ - TYPE_XILINX_AXI_DMA_CONTROL_STREAM) +DECLARE_INSTANCE_CHECKER(XilinxAXIDMAStreamSlave, XILINX_AXI_DMA_CONTROL_STREAM, + TYPE_XILINX_AXI_DMA_CONTROL_STREAM) #define R_DMACR (0x00 / 4) #define R_DMASR (0x04 / 4) diff --git a/hw/gpio/gpio_key.c b/hw/gpio/gpio_key.c index 2500a23..86aa78a 100644 --- a/hw/gpio/gpio_key.c +++ b/hw/gpio/gpio_key.c @@ -32,7 +32,8 @@ #define TYPE_GPIOKEY "gpio-key" typedef struct GPIOKEYState GPIOKEYState; -#define GPIOKEY(obj) OBJECT_CHECK(GPIOKEYState, (obj), TYPE_GPIOKEY) +DECLARE_INSTANCE_CHECKER(GPIOKEYState, GPIOKEY, + TYPE_GPIOKEY) #define GPIO_KEY_LATENCY 100 /* 100ms */ struct GPIOKEYState { diff --git a/hw/gpio/max7310.c b/hw/gpio/max7310.c index dd7e7f2..5511047 100644 --- a/hw/gpio/max7310.c +++ b/hw/gpio/max7310.c @@ -18,7 +18,8 @@ #define TYPE_MAX7310 "max7310" typedef struct MAX7310State MAX7310State; -#define MAX7310(obj) OBJECT_CHECK(MAX7310State, (obj), TYPE_MAX7310) +DECLARE_INSTANCE_CHECKER(MAX7310State, MAX7310, + TYPE_MAX7310) struct MAX7310State { I2CSlave parent_obj; diff --git a/hw/gpio/mpc8xxx.c b/hw/gpio/mpc8xxx.c index b33462e..dac8b1b 100644 --- a/hw/gpio/mpc8xxx.c +++ b/hw/gpio/mpc8xxx.c @@ -28,7 +28,8 @@ #define TYPE_MPC8XXX_GPIO "mpc8xxx_gpio" typedef struct MPC8XXXGPIOState MPC8XXXGPIOState; -#define MPC8XXX_GPIO(obj) OBJECT_CHECK(MPC8XXXGPIOState, (obj), TYPE_MPC8XXX_GPIO) +DECLARE_INSTANCE_CHECKER(MPC8XXXGPIOState, MPC8XXX_GPIO, + TYPE_MPC8XXX_GPIO) struct MPC8XXXGPIOState { SysBusDevice parent_obj; diff --git a/hw/gpio/pl061.c b/hw/gpio/pl061.c index 6c36407..3420df0 100644 --- a/hw/gpio/pl061.c +++ b/hw/gpio/pl061.c @@ -36,7 +36,8 @@ static const uint8_t pl061_id_luminary[12] = #define TYPE_PL061 "pl061" typedef struct PL061State PL061State; -#define PL061(obj) OBJECT_CHECK(PL061State, (obj), TYPE_PL061) +DECLARE_INSTANCE_CHECKER(PL061State, PL061, + TYPE_PL061) #define N_GPIOS 8 diff --git a/hw/gpio/puv3_gpio.c b/hw/gpio/puv3_gpio.c index 5e0ee78..98ea2b4 100644 --- a/hw/gpio/puv3_gpio.c +++ b/hw/gpio/puv3_gpio.c @@ -20,7 +20,8 @@ #define TYPE_PUV3_GPIO "puv3_gpio" typedef struct PUV3GPIOState PUV3GPIOState; -#define PUV3_GPIO(obj) OBJECT_CHECK(PUV3GPIOState, (obj), TYPE_PUV3_GPIO) +DECLARE_INSTANCE_CHECKER(PUV3GPIOState, PUV3_GPIO, + TYPE_PUV3_GPIO) struct PUV3GPIOState { SysBusDevice parent_obj; diff --git a/hw/gpio/zaurus.c b/hw/gpio/zaurus.c index 048e40c..3d25c55 100644 --- a/hw/gpio/zaurus.c +++ b/hw/gpio/zaurus.c @@ -29,7 +29,8 @@ #define TYPE_SCOOP "scoop" typedef struct ScoopInfo ScoopInfo; -#define SCOOP(obj) OBJECT_CHECK(ScoopInfo, (obj), TYPE_SCOOP) +DECLARE_INSTANCE_CHECKER(ScoopInfo, SCOOP, + TYPE_SCOOP) struct ScoopInfo { SysBusDevice parent_obj; diff --git a/hw/hppa/dino.c b/hw/hppa/dino.c index fa739ad..c0c9b8a 100644 --- a/hw/hppa/dino.c +++ b/hw/hppa/dino.c @@ -82,8 +82,8 @@ #define DINO_MEM_CHUNK_SIZE (8 * MiB) typedef struct DinoState DinoState; -#define DINO_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(DinoState, (obj), TYPE_DINO_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(DinoState, DINO_PCI_HOST_BRIDGE, + TYPE_DINO_PCI_HOST_BRIDGE) #define DINO800_REGS (1 + (DINO_TLTIM - DINO_GMASK) / 4) static const uint32_t reg800_keep_bits[DINO800_REGS] = { diff --git a/hw/hppa/lasi.c b/hw/hppa/lasi.c index 1acb9ce..c0b970f 100644 --- a/hw/hppa/lasi.c +++ b/hw/hppa/lasi.c @@ -54,8 +54,8 @@ #define ICR_TOC_BIT LASI_BIT(1) /* bit 1 in ICR */ typedef struct LasiState LasiState; -#define LASI_CHIP(obj) \ - OBJECT_CHECK(LasiState, (obj), TYPE_LASI_CHIP) +DECLARE_INSTANCE_CHECKER(LasiState, LASI_CHIP, + TYPE_LASI_CHIP) struct LasiState { PCIHostState parent_obj; diff --git a/hw/hyperv/hyperv.c b/hw/hyperv/hyperv.c index 5dfa9d7..aa5a2a9 100644 --- a/hw/hyperv/hyperv.c +++ b/hw/hyperv/hyperv.c @@ -38,7 +38,8 @@ struct SynICState { typedef struct SynICState SynICState; #define TYPE_SYNIC "hyperv-synic" -#define SYNIC(obj) OBJECT_CHECK(SynICState, (obj), TYPE_SYNIC) +DECLARE_INSTANCE_CHECKER(SynICState, SYNIC, + TYPE_SYNIC) static bool synic_enabled; diff --git a/hw/hyperv/hyperv_testdev.c b/hw/hyperv/hyperv_testdev.c index 8f78fce..f6ee98e 100644 --- a/hw/hyperv/hyperv_testdev.c +++ b/hw/hyperv/hyperv_testdev.c @@ -50,8 +50,8 @@ struct HypervTestDev { typedef struct HypervTestDev HypervTestDev; #define TYPE_HYPERV_TEST_DEV "hyperv-testdev" -#define HYPERV_TEST_DEV(obj) \ - OBJECT_CHECK(HypervTestDev, (obj), TYPE_HYPERV_TEST_DEV) +DECLARE_INSTANCE_CHECKER(HypervTestDev, HYPERV_TEST_DEV, + TYPE_HYPERV_TEST_DEV) enum { HV_TEST_DEV_SINT_ROUTE_CREATE = 1, diff --git a/hw/i2c/bitbang_i2c.c b/hw/i2c/bitbang_i2c.c index 4ff3c0b..c1b9f29 100644 --- a/hw/i2c/bitbang_i2c.c +++ b/hw/i2c/bitbang_i2c.c @@ -164,7 +164,8 @@ void bitbang_i2c_init(bitbang_i2c_interface *s, I2CBus *bus) #define TYPE_GPIO_I2C "gpio_i2c" typedef struct GPIOI2CState GPIOI2CState; -#define GPIO_I2C(obj) OBJECT_CHECK(GPIOI2CState, (obj), TYPE_GPIO_I2C) +DECLARE_INSTANCE_CHECKER(GPIOI2CState, GPIO_I2C, + TYPE_GPIO_I2C) struct GPIOI2CState { SysBusDevice parent_obj; diff --git a/hw/i2c/exynos4210_i2c.c b/hw/i2c/exynos4210_i2c.c index 9d2f780..ff82226 100644 --- a/hw/i2c/exynos4210_i2c.c +++ b/hw/i2c/exynos4210_i2c.c @@ -35,8 +35,8 @@ #define TYPE_EXYNOS4_I2C "exynos4210.i2c" typedef struct Exynos4210I2CState Exynos4210I2CState; -#define EXYNOS4_I2C(obj) \ - OBJECT_CHECK(Exynos4210I2CState, (obj), TYPE_EXYNOS4_I2C) +DECLARE_INSTANCE_CHECKER(Exynos4210I2CState, EXYNOS4_I2C, + TYPE_EXYNOS4_I2C) /* Exynos4210 I2C memory map */ #define EXYNOS4_I2C_MEM_SIZE 0x14 diff --git a/hw/i2c/mpc_i2c.c b/hw/i2c/mpc_i2c.c index 232a277..156a25a 100644 --- a/hw/i2c/mpc_i2c.c +++ b/hw/i2c/mpc_i2c.c @@ -38,8 +38,8 @@ #define TYPE_MPC_I2C "mpc-i2c" typedef struct MPCI2CState MPCI2CState; -#define MPC_I2C(obj) \ - OBJECT_CHECK(MPCI2CState, (obj), TYPE_MPC_I2C) +DECLARE_INSTANCE_CHECKER(MPCI2CState, MPC_I2C, + TYPE_MPC_I2C) #define MPC_I2C_ADR 0x00 #define MPC_I2C_FDR 0x04 diff --git a/hw/i2c/smbus_eeprom.c b/hw/i2c/smbus_eeprom.c index 4f98012..c677784 100644 --- a/hw/i2c/smbus_eeprom.c +++ b/hw/i2c/smbus_eeprom.c @@ -38,8 +38,8 @@ #define TYPE_SMBUS_EEPROM "smbus-eeprom" typedef struct SMBusEEPROMDevice SMBusEEPROMDevice; -#define SMBUS_EEPROM(obj) \ - OBJECT_CHECK(SMBusEEPROMDevice, (obj), TYPE_SMBUS_EEPROM) +DECLARE_INSTANCE_CHECKER(SMBusEEPROMDevice, SMBUS_EEPROM, + TYPE_SMBUS_EEPROM) #define SMBUS_EEPROM_SIZE 256 diff --git a/hw/i2c/smbus_ich9.c b/hw/i2c/smbus_ich9.c index 44d26fc..2d45785 100644 --- a/hw/i2c/smbus_ich9.c +++ b/hw/i2c/smbus_ich9.c @@ -31,8 +31,8 @@ #include "qom/object.h" typedef struct ICH9SMBState ICH9SMBState; -#define ICH9_SMB_DEVICE(obj) \ - OBJECT_CHECK(ICH9SMBState, (obj), TYPE_ICH9_SMB_DEVICE) +DECLARE_INSTANCE_CHECKER(ICH9SMBState, ICH9_SMB_DEVICE, + TYPE_ICH9_SMB_DEVICE) struct ICH9SMBState { PCIDevice dev; diff --git a/hw/i2c/versatile_i2c.c b/hw/i2c/versatile_i2c.c index 3ab386d..3a04ba3 100644 --- a/hw/i2c/versatile_i2c.c +++ b/hw/i2c/versatile_i2c.c @@ -30,8 +30,8 @@ #include "qom/object.h" typedef ArmSbconI2CState VersatileI2CState; -#define VERSATILE_I2C(obj) \ - OBJECT_CHECK(VersatileI2CState, (obj), TYPE_VERSATILE_I2C) +DECLARE_INSTANCE_CHECKER(VersatileI2CState, VERSATILE_I2C, + TYPE_VERSATILE_I2C) diff --git a/hw/i386/amd_iommu.h b/hw/i386/amd_iommu.h index 85860c3..fa5feb1 100644 --- a/hw/i386/amd_iommu.h +++ b/hw/i386/amd_iommu.h @@ -298,8 +298,8 @@ struct irte_ga { #define TYPE_AMD_IOMMU_DEVICE "amd-iommu" typedef struct AMDVIState AMDVIState; -#define AMD_IOMMU_DEVICE(obj)\ - OBJECT_CHECK(AMDVIState, (obj), TYPE_AMD_IOMMU_DEVICE) +DECLARE_INSTANCE_CHECKER(AMDVIState, AMD_IOMMU_DEVICE, + TYPE_AMD_IOMMU_DEVICE) #define TYPE_AMD_IOMMU_PCI "AMDVI-PCI" diff --git a/hw/i386/kvm/clock.c b/hw/i386/kvm/clock.c index 94ece44..37f4754 100644 --- a/hw/i386/kvm/clock.c +++ b/hw/i386/kvm/clock.c @@ -33,7 +33,8 @@ #define TYPE_KVM_CLOCK "kvmclock" typedef struct KVMClockState KVMClockState; -#define KVM_CLOCK(obj) OBJECT_CHECK(KVMClockState, (obj), TYPE_KVM_CLOCK) +DECLARE_INSTANCE_CHECKER(KVMClockState, KVM_CLOCK, + TYPE_KVM_CLOCK) struct KVMClockState { /*< private >*/ diff --git a/hw/i386/kvm/i8254.c b/hw/i386/kvm/i8254.c index d3e4142..e18fd33 100644 --- a/hw/i386/kvm/i8254.c +++ b/hw/i386/kvm/i8254.c @@ -41,11 +41,8 @@ typedef struct KVMPITClass KVMPITClass; typedef struct KVMPITState KVMPITState; -#define KVM_PIT(obj) OBJECT_CHECK(KVMPITState, (obj), TYPE_KVM_I8254) -#define KVM_PIT_CLASS(class) \ - OBJECT_CLASS_CHECK(KVMPITClass, (class), TYPE_KVM_I8254) -#define KVM_PIT_GET_CLASS(obj) \ - OBJECT_GET_CLASS(KVMPITClass, (obj), TYPE_KVM_I8254) +DECLARE_OBJ_CHECKERS(KVMPITState, KVMPITClass, + KVM_PIT, TYPE_KVM_I8254) struct KVMPITState { PITCommonState parent_obj; diff --git a/hw/i386/kvm/i8259.c b/hw/i386/kvm/i8259.c index b256f97..3f8bf69 100644 --- a/hw/i386/kvm/i8259.c +++ b/hw/i386/kvm/i8259.c @@ -21,10 +21,8 @@ #define TYPE_KVM_I8259 "kvm-i8259" typedef struct KVMPICClass KVMPICClass; -#define KVM_PIC_CLASS(class) \ - OBJECT_CLASS_CHECK(KVMPICClass, (class), TYPE_KVM_I8259) -#define KVM_PIC_GET_CLASS(obj) \ - OBJECT_GET_CLASS(KVMPICClass, (obj), TYPE_KVM_I8259) +DECLARE_CLASS_CHECKERS(KVMPICClass, KVM_PIC, + TYPE_KVM_I8259) /** * KVMPICClass: diff --git a/hw/i386/kvmvapic.c b/hw/i386/kvmvapic.c index 857d9f4..a4e05f0 100644 --- a/hw/i386/kvmvapic.c +++ b/hw/i386/kvmvapic.c @@ -74,7 +74,8 @@ struct VAPICROMState { typedef struct VAPICROMState VAPICROMState; #define TYPE_VAPIC "kvmvapic" -#define VAPIC(obj) OBJECT_CHECK(VAPICROMState, (obj), TYPE_VAPIC) +DECLARE_INSTANCE_CHECKER(VAPICROMState, VAPIC, + TYPE_VAPIC) #define TPR_INSTR_ABS_MODRM 0x1 #define TPR_INSTR_MATCH_MODRM_REG 0x2 diff --git a/hw/i386/port92.c b/hw/i386/port92.c index 48200de..c00dcb2 100644 --- a/hw/i386/port92.c +++ b/hw/i386/port92.c @@ -15,7 +15,8 @@ #include "qom/object.h" typedef struct Port92State Port92State; -#define PORT92(obj) OBJECT_CHECK(Port92State, (obj), TYPE_PORT92) +DECLARE_INSTANCE_CHECKER(Port92State, PORT92, + TYPE_PORT92) struct Port92State { ISADevice parent_obj; diff --git a/hw/i386/vmmouse.c b/hw/i386/vmmouse.c index d187de3..ae4cbc7 100644 --- a/hw/i386/vmmouse.c +++ b/hw/i386/vmmouse.c @@ -52,7 +52,8 @@ #define TYPE_VMMOUSE "vmmouse" typedef struct VMMouseState VMMouseState; -#define VMMOUSE(obj) OBJECT_CHECK(VMMouseState, (obj), TYPE_VMMOUSE) +DECLARE_INSTANCE_CHECKER(VMMouseState, VMMOUSE, + TYPE_VMMOUSE) struct VMMouseState { ISADevice parent_obj; diff --git a/hw/i386/vmport.c b/hw/i386/vmport.c index 3720834..df52b6f 100644 --- a/hw/i386/vmport.c +++ b/hw/i386/vmport.c @@ -64,7 +64,8 @@ #define VCPU_INFO_RESERVED_BIT 31 typedef struct VMPortState VMPortState; -#define VMPORT(obj) OBJECT_CHECK(VMPortState, (obj), TYPE_VMPORT) +DECLARE_INSTANCE_CHECKER(VMPortState, VMPORT, + TYPE_VMPORT) struct VMPortState { ISADevice parent_obj; diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c index e8dbd58..a8bbe8c 100644 --- a/hw/i386/xen/xen_platform.c +++ b/hw/i386/xen/xen_platform.c @@ -72,8 +72,8 @@ struct PCIXenPlatformState { typedef struct PCIXenPlatformState PCIXenPlatformState; #define TYPE_XEN_PLATFORM "xen-platform" -#define XEN_PLATFORM(obj) \ - OBJECT_CHECK(PCIXenPlatformState, (obj), TYPE_XEN_PLATFORM) +DECLARE_INSTANCE_CHECKER(PCIXenPlatformState, XEN_PLATFORM, + TYPE_XEN_PLATFORM) #define XEN_PLATFORM_IOPORT 0x10 diff --git a/hw/i386/xen/xen_pvdevice.c b/hw/i386/xen/xen_pvdevice.c index 518c66d..67f8361 100644 --- a/hw/i386/xen/xen_pvdevice.c +++ b/hw/i386/xen/xen_pvdevice.c @@ -41,8 +41,8 @@ #define TYPE_XEN_PV_DEVICE "xen-pvdevice" typedef struct XenPVDevice XenPVDevice; -#define XEN_PV_DEVICE(obj) \ - OBJECT_CHECK(XenPVDevice, (obj), TYPE_XEN_PV_DEVICE) +DECLARE_INSTANCE_CHECKER(XenPVDevice, XEN_PV_DEVICE, + TYPE_XEN_PV_DEVICE) struct XenPVDevice { /*< private >*/ diff --git a/hw/ide/isa.c b/hw/ide/isa.c index 438f74e..9a34896 100644 --- a/hw/ide/isa.c +++ b/hw/ide/isa.c @@ -39,7 +39,8 @@ #define TYPE_ISA_IDE "isa-ide" typedef struct ISAIDEState ISAIDEState; -#define ISA_IDE(obj) OBJECT_CHECK(ISAIDEState, (obj), TYPE_ISA_IDE) +DECLARE_INSTANCE_CHECKER(ISAIDEState, ISA_IDE, + TYPE_ISA_IDE) struct ISAIDEState { ISADevice parent_obj; diff --git a/hw/ide/microdrive.c b/hw/ide/microdrive.c index 28f171b..6e7f5df 100644 --- a/hw/ide/microdrive.c +++ b/hw/ide/microdrive.c @@ -35,7 +35,8 @@ #define TYPE_MICRODRIVE "microdrive" typedef struct MicroDriveState MicroDriveState; -#define MICRODRIVE(obj) OBJECT_CHECK(MicroDriveState, (obj), TYPE_MICRODRIVE) +DECLARE_INSTANCE_CHECKER(MicroDriveState, MICRODRIVE, + TYPE_MICRODRIVE) /***********************************************************/ /* CF-ATA Microdrive */ diff --git a/hw/ide/mmio.c b/hw/ide/mmio.c index 501afdf..4bf6e3a 100644 --- a/hw/ide/mmio.c +++ b/hw/ide/mmio.c @@ -41,7 +41,8 @@ #define TYPE_MMIO_IDE "mmio-ide" typedef struct MMIOIDEState MMIOState; -#define MMIO_IDE(obj) OBJECT_CHECK(MMIOState, (obj), TYPE_MMIO_IDE) +DECLARE_INSTANCE_CHECKER(MMIOState, MMIO_IDE, + TYPE_MMIO_IDE) struct MMIOIDEState { /*< private >*/ diff --git a/hw/ide/sii3112.c b/hw/ide/sii3112.c index 11c5b88..968c239 100644 --- a/hw/ide/sii3112.c +++ b/hw/ide/sii3112.c @@ -20,7 +20,7 @@ #define TYPE_SII3112_PCI "sii3112" typedef struct SiI3112PCIState SiI3112PCIState; -#define SII3112_PCI(obj) OBJECT_CHECK(SiI3112PCIState, (obj), \ +DECLARE_INSTANCE_CHECKER(SiI3112PCIState, SII3112_PCI, TYPE_SII3112_PCI) typedef struct SiI3112Regs { diff --git a/hw/input/adb-kbd.c b/hw/input/adb-kbd.c index a439bf6..fe0c363 100644 --- a/hw/input/adb-kbd.c +++ b/hw/input/adb-kbd.c @@ -34,7 +34,8 @@ typedef struct ADBKeyboardClass ADBKeyboardClass; typedef struct KBDState KBDState; -#define ADB_KEYBOARD(obj) OBJECT_CHECK(KBDState, (obj), TYPE_ADB_KEYBOARD) +DECLARE_OBJ_CHECKERS(KBDState, ADBKeyboardClass, + ADB_KEYBOARD, TYPE_ADB_KEYBOARD) struct KBDState { /*< private >*/ @@ -45,10 +46,6 @@ struct KBDState { int rptr, wptr, count; }; -#define ADB_KEYBOARD_CLASS(class) \ - OBJECT_CLASS_CHECK(ADBKeyboardClass, (class), TYPE_ADB_KEYBOARD) -#define ADB_KEYBOARD_GET_CLASS(obj) \ - OBJECT_GET_CLASS(ADBKeyboardClass, (obj), TYPE_ADB_KEYBOARD) struct ADBKeyboardClass { /*< private >*/ diff --git a/hw/input/adb-mouse.c b/hw/input/adb-mouse.c index 8e4cf47..f575090 100644 --- a/hw/input/adb-mouse.c +++ b/hw/input/adb-mouse.c @@ -33,7 +33,8 @@ typedef struct ADBMouseClass ADBMouseClass; typedef struct MouseState MouseState; -#define ADB_MOUSE(obj) OBJECT_CHECK(MouseState, (obj), TYPE_ADB_MOUSE) +DECLARE_OBJ_CHECKERS(MouseState, ADBMouseClass, + ADB_MOUSE, TYPE_ADB_MOUSE) struct MouseState { /*< public >*/ @@ -44,10 +45,6 @@ struct MouseState { int dx, dy, dz; }; -#define ADB_MOUSE_CLASS(class) \ - OBJECT_CLASS_CHECK(ADBMouseClass, (class), TYPE_ADB_MOUSE) -#define ADB_MOUSE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(ADBMouseClass, (obj), TYPE_ADB_MOUSE) struct ADBMouseClass { /*< public >*/ diff --git a/hw/input/lm832x.c b/hw/input/lm832x.c index aab94d2..70245fd 100644 --- a/hw/input/lm832x.c +++ b/hw/input/lm832x.c @@ -29,7 +29,8 @@ #define TYPE_LM8323 "lm8323" typedef struct LM823KbdState LM823KbdState; -#define LM8323(obj) OBJECT_CHECK(LM823KbdState, (obj), TYPE_LM8323) +DECLARE_INSTANCE_CHECKER(LM823KbdState, LM8323, + TYPE_LM8323) struct LM823KbdState { I2CSlave parent_obj; diff --git a/hw/input/milkymist-softusb.c b/hw/input/milkymist-softusb.c index 8b5ffd2..eaaf8ad 100644 --- a/hw/input/milkymist-softusb.c +++ b/hw/input/milkymist-softusb.c @@ -52,8 +52,8 @@ enum { #define TYPE_MILKYMIST_SOFTUSB "milkymist-softusb" typedef struct MilkymistSoftUsbState MilkymistSoftUsbState; -#define MILKYMIST_SOFTUSB(obj) \ - OBJECT_CHECK(MilkymistSoftUsbState, (obj), TYPE_MILKYMIST_SOFTUSB) +DECLARE_INSTANCE_CHECKER(MilkymistSoftUsbState, MILKYMIST_SOFTUSB, + TYPE_MILKYMIST_SOFTUSB) struct MilkymistSoftUsbState { SysBusDevice parent_obj; diff --git a/hw/input/pl050.c b/hw/input/pl050.c index 8eb6866..7c53ae9 100644 --- a/hw/input/pl050.c +++ b/hw/input/pl050.c @@ -18,7 +18,8 @@ #define TYPE_PL050 "pl050" typedef struct PL050State PL050State; -#define PL050(obj) OBJECT_CHECK(PL050State, (obj), TYPE_PL050) +DECLARE_INSTANCE_CHECKER(PL050State, PL050, + TYPE_PL050) struct PL050State { SysBusDevice parent_obj; diff --git a/hw/intc/arm_gicv2m.c b/hw/intc/arm_gicv2m.c index 8fb566d..04d7a6d 100644 --- a/hw/intc/arm_gicv2m.c +++ b/hw/intc/arm_gicv2m.c @@ -38,7 +38,8 @@ #define TYPE_ARM_GICV2M "arm-gicv2m" typedef struct ARMGICv2mState ARMGICv2mState; -#define ARM_GICV2M(obj) OBJECT_CHECK(ARMGICv2mState, (obj), TYPE_ARM_GICV2M) +DECLARE_INSTANCE_CHECKER(ARMGICv2mState, ARM_GICV2M, + TYPE_ARM_GICV2M) #define GICV2M_NUM_SPI_MAX 128 diff --git a/hw/intc/etraxfs_pic.c b/hw/intc/etraxfs_pic.c index cf4b3c5..54ed4c7 100644 --- a/hw/intc/etraxfs_pic.c +++ b/hw/intc/etraxfs_pic.c @@ -39,8 +39,8 @@ #define R_MAX 5 #define TYPE_ETRAX_FS_PIC "etraxfs,pic" -#define ETRAX_FS_PIC(obj) \ - OBJECT_CHECK(struct etrax_pic, (obj), TYPE_ETRAX_FS_PIC) +DECLARE_INSTANCE_CHECKER(struct etrax_pic, ETRAX_FS_PIC, + TYPE_ETRAX_FS_PIC) struct etrax_pic { diff --git a/hw/intc/exynos4210_combiner.c b/hw/intc/exynos4210_combiner.c index 8e54f15..7b01481 100644 --- a/hw/intc/exynos4210_combiner.c +++ b/hw/intc/exynos4210_combiner.c @@ -65,8 +65,8 @@ typedef struct CombinerGroupState { #define TYPE_EXYNOS4210_COMBINER "exynos4210.combiner" typedef struct Exynos4210CombinerState Exynos4210CombinerState; -#define EXYNOS4210_COMBINER(obj) \ - OBJECT_CHECK(Exynos4210CombinerState, (obj), TYPE_EXYNOS4210_COMBINER) +DECLARE_INSTANCE_CHECKER(Exynos4210CombinerState, EXYNOS4210_COMBINER, + TYPE_EXYNOS4210_COMBINER) struct Exynos4210CombinerState { SysBusDevice parent_obj; diff --git a/hw/intc/exynos4210_gic.c b/hw/intc/exynos4210_gic.c index ded3146..f948767 100644 --- a/hw/intc/exynos4210_gic.c +++ b/hw/intc/exynos4210_gic.c @@ -266,8 +266,8 @@ uint32_t exynos4210_get_irq(uint32_t grp, uint32_t bit) #define TYPE_EXYNOS4210_GIC "exynos4210.gic" typedef struct Exynos4210GicState Exynos4210GicState; -#define EXYNOS4210_GIC(obj) \ - OBJECT_CHECK(Exynos4210GicState, (obj), TYPE_EXYNOS4210_GIC) +DECLARE_INSTANCE_CHECKER(Exynos4210GicState, EXYNOS4210_GIC, + TYPE_EXYNOS4210_GIC) struct Exynos4210GicState { SysBusDevice parent_obj; @@ -385,8 +385,8 @@ type_init(exynos4210_gic_register_types) #define TYPE_EXYNOS4210_IRQ_GATE "exynos4210.irq_gate" typedef struct Exynos4210IRQGateState Exynos4210IRQGateState; -#define EXYNOS4210_IRQ_GATE(obj) \ - OBJECT_CHECK(Exynos4210IRQGateState, (obj), TYPE_EXYNOS4210_IRQ_GATE) +DECLARE_INSTANCE_CHECKER(Exynos4210IRQGateState, EXYNOS4210_IRQ_GATE, + TYPE_EXYNOS4210_IRQ_GATE) struct Exynos4210IRQGateState { SysBusDevice parent_obj; diff --git a/hw/intc/grlib_irqmp.c b/hw/intc/grlib_irqmp.c index 5a60396..9b34a8a 100644 --- a/hw/intc/grlib_irqmp.c +++ b/hw/intc/grlib_irqmp.c @@ -52,7 +52,8 @@ #define EXTENDED_OFFSET 0xC0 typedef struct IRQMP IRQMP; -#define GRLIB_IRQMP(obj) OBJECT_CHECK(IRQMP, (obj), TYPE_GRLIB_IRQMP) +DECLARE_INSTANCE_CHECKER(IRQMP, GRLIB_IRQMP, + TYPE_GRLIB_IRQMP) typedef struct IRQMPState IRQMPState; diff --git a/hw/intc/i8259.c b/hw/intc/i8259.c index 9663207..344fd04 100644 --- a/hw/intc/i8259.c +++ b/hw/intc/i8259.c @@ -39,8 +39,8 @@ #define TYPE_I8259 "isa-i8259" typedef struct PICClass PICClass; -#define PIC_CLASS(class) OBJECT_CLASS_CHECK(PICClass, (class), TYPE_I8259) -#define PIC_GET_CLASS(obj) OBJECT_GET_CLASS(PICClass, (obj), TYPE_I8259) +DECLARE_CLASS_CHECKERS(PICClass, PIC, + TYPE_I8259) /** * PICClass: diff --git a/hw/intc/lm32_pic.c b/hw/intc/lm32_pic.c index b08d982..e8b4015 100644 --- a/hw/intc/lm32_pic.c +++ b/hw/intc/lm32_pic.c @@ -31,7 +31,8 @@ #define TYPE_LM32_PIC "lm32-pic" typedef struct LM32PicState LM32PicState; -#define LM32_PIC(obj) OBJECT_CHECK(LM32PicState, (obj), TYPE_LM32_PIC) +DECLARE_INSTANCE_CHECKER(LM32PicState, LM32_PIC, + TYPE_LM32_PIC) struct LM32PicState { SysBusDevice parent_obj; diff --git a/hw/intc/loongson_liointc.c b/hw/intc/loongson_liointc.c index e11ca68..30fb375 100644 --- a/hw/intc/loongson_liointc.c +++ b/hw/intc/loongson_liointc.c @@ -44,8 +44,8 @@ #define R_END 0x64 #define TYPE_LOONGSON_LIOINTC "loongson.liointc" -#define LOONGSON_LIOINTC(obj) \ - OBJECT_CHECK(struct loongson_liointc, (obj), TYPE_LOONGSON_LIOINTC) +DECLARE_INSTANCE_CHECKER(struct loongson_liointc, LOONGSON_LIOINTC, + TYPE_LOONGSON_LIOINTC) struct loongson_liointc { SysBusDevice parent_obj; diff --git a/hw/intc/nios2_iic.c b/hw/intc/nios2_iic.c index 2594381..aa26f05 100644 --- a/hw/intc/nios2_iic.c +++ b/hw/intc/nios2_iic.c @@ -29,8 +29,8 @@ #define TYPE_ALTERA_IIC "altera,iic" typedef struct AlteraIIC AlteraIIC; -#define ALTERA_IIC(obj) \ - OBJECT_CHECK(AlteraIIC, (obj), TYPE_ALTERA_IIC) +DECLARE_INSTANCE_CHECKER(AlteraIIC, ALTERA_IIC, + TYPE_ALTERA_IIC) struct AlteraIIC { SysBusDevice parent_obj; diff --git a/hw/intc/ompic.c b/hw/intc/ompic.c index 8dd763d..a8ea621 100644 --- a/hw/intc/ompic.c +++ b/hw/intc/ompic.c @@ -19,7 +19,8 @@ #define TYPE_OR1K_OMPIC "or1k-ompic" typedef struct OR1KOMPICState OR1KOMPICState; -#define OR1K_OMPIC(obj) OBJECT_CHECK(OR1KOMPICState, (obj), TYPE_OR1K_OMPIC) +DECLARE_INSTANCE_CHECKER(OR1KOMPICState, OR1K_OMPIC, + TYPE_OR1K_OMPIC) #define OMPIC_CTRL_IRQ_ACK (1 << 31) #define OMPIC_CTRL_IRQ_GEN (1 << 30) diff --git a/hw/intc/openpic_kvm.c b/hw/intc/openpic_kvm.c index 3f5891a..8c8fbed 100644 --- a/hw/intc/openpic_kvm.c +++ b/hw/intc/openpic_kvm.c @@ -40,8 +40,8 @@ #define GCR_RESET 0x80000000 typedef struct KVMOpenPICState KVMOpenPICState; -#define KVM_OPENPIC(obj) \ - OBJECT_CHECK(KVMOpenPICState, (obj), TYPE_KVM_OPENPIC) +DECLARE_INSTANCE_CHECKER(KVMOpenPICState, KVM_OPENPIC, + TYPE_KVM_OPENPIC) struct KVMOpenPICState { /*< private >*/ diff --git a/hw/intc/pl190.c b/hw/intc/pl190.c index 4f2aa58..ee32061 100644 --- a/hw/intc/pl190.c +++ b/hw/intc/pl190.c @@ -23,7 +23,8 @@ #define TYPE_PL190 "pl190" typedef struct PL190State PL190State; -#define PL190(obj) OBJECT_CHECK(PL190State, (obj), TYPE_PL190) +DECLARE_INSTANCE_CHECKER(PL190State, PL190, + TYPE_PL190) struct PL190State { SysBusDevice parent_obj; diff --git a/hw/intc/puv3_intc.c b/hw/intc/puv3_intc.c index 3a8bc15..8bceede 100644 --- a/hw/intc/puv3_intc.c +++ b/hw/intc/puv3_intc.c @@ -21,7 +21,8 @@ #define TYPE_PUV3_INTC "puv3_intc" typedef struct PUV3INTCState PUV3INTCState; -#define PUV3_INTC(obj) OBJECT_CHECK(PUV3INTCState, (obj), TYPE_PUV3_INTC) +DECLARE_INSTANCE_CHECKER(PUV3INTCState, PUV3_INTC, + TYPE_PUV3_INTC) struct PUV3INTCState { SysBusDevice parent_obj; diff --git a/hw/intc/s390_flic_kvm.c b/hw/intc/s390_flic_kvm.c index c4ae10d..35d91af 100644 --- a/hw/intc/s390_flic_kvm.c +++ b/hw/intc/s390_flic_kvm.c @@ -576,11 +576,9 @@ struct KVMS390FLICStateClass { }; typedef struct KVMS390FLICStateClass KVMS390FLICStateClass; -#define KVM_S390_FLIC_GET_CLASS(obj) \ - OBJECT_GET_CLASS(KVMS390FLICStateClass, (obj), TYPE_KVM_S390_FLIC) +DECLARE_CLASS_CHECKERS(KVMS390FLICStateClass, KVM_S390_FLIC, + TYPE_KVM_S390_FLIC) -#define KVM_S390_FLIC_CLASS(klass) \ - OBJECT_CLASS_CHECK(KVMS390FLICStateClass, (klass), TYPE_KVM_S390_FLIC) static void kvm_s390_flic_realize(DeviceState *dev, Error **errp) { diff --git a/hw/intc/slavio_intctl.c b/hw/intc/slavio_intctl.c index 7675556..4a72ef5 100644 --- a/hw/intc/slavio_intctl.c +++ b/hw/intc/slavio_intctl.c @@ -60,8 +60,8 @@ typedef struct SLAVIO_CPUINTCTLState { #define TYPE_SLAVIO_INTCTL "slavio_intctl" typedef struct SLAVIO_INTCTLState SLAVIO_INTCTLState; -#define SLAVIO_INTCTL(obj) \ - OBJECT_CHECK(SLAVIO_INTCTLState, (obj), TYPE_SLAVIO_INTCTL) +DECLARE_INSTANCE_CHECKER(SLAVIO_INTCTLState, SLAVIO_INTCTL, + TYPE_SLAVIO_INTCTL) struct SLAVIO_INTCTLState { SysBusDevice parent_obj; diff --git a/hw/intc/xilinx_intc.c b/hw/intc/xilinx_intc.c index ed1c2bc..4c4397b 100644 --- a/hw/intc/xilinx_intc.c +++ b/hw/intc/xilinx_intc.c @@ -42,7 +42,8 @@ #define R_MAX 8 #define TYPE_XILINX_INTC "xlnx.xps-intc" -#define XILINX_INTC(obj) OBJECT_CHECK(struct xlx_pic, (obj), TYPE_XILINX_INTC) +DECLARE_INSTANCE_CHECKER(struct xlx_pic, XILINX_INTC, + TYPE_XILINX_INTC) struct xlx_pic { diff --git a/hw/ipack/tpci200.c b/hw/ipack/tpci200.c index 81d3521..b35e1d2 100644 --- a/hw/ipack/tpci200.c +++ b/hw/ipack/tpci200.c @@ -73,8 +73,8 @@ typedef struct TPCI200State TPCI200State; #define TYPE_TPCI200 "tpci200" -#define TPCI200(obj) \ - OBJECT_CHECK(TPCI200State, (obj), TYPE_TPCI200) +DECLARE_INSTANCE_CHECKER(TPCI200State, TPCI200, + TYPE_TPCI200) static const uint8_t local_config_regs[] = { 0x00, 0xFF, 0xFF, 0x0F, 0x00, 0xFC, 0xFF, 0x0F, 0x00, 0x00, 0x00, diff --git a/hw/ipmi/ipmi_bmc_extern.c b/hw/ipmi/ipmi_bmc_extern.c index 018667e..159831c 100644 --- a/hw/ipmi/ipmi_bmc_extern.c +++ b/hw/ipmi/ipmi_bmc_extern.c @@ -63,8 +63,8 @@ #define TYPE_IPMI_BMC_EXTERN "ipmi-bmc-extern" typedef struct IPMIBmcExtern IPMIBmcExtern; -#define IPMI_BMC_EXTERN(obj) OBJECT_CHECK(IPMIBmcExtern, (obj), \ - TYPE_IPMI_BMC_EXTERN) +DECLARE_INSTANCE_CHECKER(IPMIBmcExtern, IPMI_BMC_EXTERN, + TYPE_IPMI_BMC_EXTERN) struct IPMIBmcExtern { IPMIBmc parent; diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c index 90b3ba1..0b69acc 100644 --- a/hw/ipmi/isa_ipmi_bt.c +++ b/hw/ipmi/isa_ipmi_bt.c @@ -35,8 +35,8 @@ #define TYPE_ISA_IPMI_BT "isa-ipmi-bt" typedef struct ISAIPMIBTDevice ISAIPMIBTDevice; -#define ISA_IPMI_BT(obj) OBJECT_CHECK(ISAIPMIBTDevice, (obj), \ - TYPE_ISA_IPMI_BT) +DECLARE_INSTANCE_CHECKER(ISAIPMIBTDevice, ISA_IPMI_BT, + TYPE_ISA_IPMI_BT) struct ISAIPMIBTDevice { ISADevice dev; diff --git a/hw/ipmi/isa_ipmi_kcs.c b/hw/ipmi/isa_ipmi_kcs.c index ac7caa2..af69e9a 100644 --- a/hw/ipmi/isa_ipmi_kcs.c +++ b/hw/ipmi/isa_ipmi_kcs.c @@ -35,8 +35,8 @@ #define TYPE_ISA_IPMI_KCS "isa-ipmi-kcs" typedef struct ISAIPMIKCSDevice ISAIPMIKCSDevice; -#define ISA_IPMI_KCS(obj) OBJECT_CHECK(ISAIPMIKCSDevice, (obj), \ - TYPE_ISA_IPMI_KCS) +DECLARE_INSTANCE_CHECKER(ISAIPMIKCSDevice, ISA_IPMI_KCS, + TYPE_ISA_IPMI_KCS) struct ISAIPMIKCSDevice { ISADevice dev; diff --git a/hw/ipmi/pci_ipmi_bt.c b/hw/ipmi/pci_ipmi_bt.c index cfc7275..7e5ecea 100644 --- a/hw/ipmi/pci_ipmi_bt.c +++ b/hw/ipmi/pci_ipmi_bt.c @@ -30,8 +30,8 @@ #define TYPE_PCI_IPMI_BT "pci-ipmi-bt" typedef struct PCIIPMIBTDevice PCIIPMIBTDevice; -#define PCI_IPMI_BT(obj) OBJECT_CHECK(PCIIPMIBTDevice, (obj), \ - TYPE_PCI_IPMI_BT) +DECLARE_INSTANCE_CHECKER(PCIIPMIBTDevice, PCI_IPMI_BT, + TYPE_PCI_IPMI_BT) struct PCIIPMIBTDevice { PCIDevice dev; diff --git a/hw/ipmi/pci_ipmi_kcs.c b/hw/ipmi/pci_ipmi_kcs.c index e4a1603..c2a283a 100644 --- a/hw/ipmi/pci_ipmi_kcs.c +++ b/hw/ipmi/pci_ipmi_kcs.c @@ -30,8 +30,8 @@ #define TYPE_PCI_IPMI_KCS "pci-ipmi-kcs" typedef struct PCIIPMIKCSDevice PCIIPMIKCSDevice; -#define PCI_IPMI_KCS(obj) OBJECT_CHECK(PCIIPMIKCSDevice, (obj), \ - TYPE_PCI_IPMI_KCS) +DECLARE_INSTANCE_CHECKER(PCIIPMIKCSDevice, PCI_IPMI_KCS, + TYPE_PCI_IPMI_KCS) struct PCIIPMIKCSDevice { PCIDevice dev; diff --git a/hw/ipmi/smbus_ipmi.c b/hw/ipmi/smbus_ipmi.c index baa8389..cd4c05d 100644 --- a/hw/ipmi/smbus_ipmi.c +++ b/hw/ipmi/smbus_ipmi.c @@ -31,7 +31,8 @@ #define TYPE_SMBUS_IPMI "smbus-ipmi" typedef struct SMBusIPMIDevice SMBusIPMIDevice; -#define SMBUS_IPMI(obj) OBJECT_CHECK(SMBusIPMIDevice, (obj), TYPE_SMBUS_IPMI) +DECLARE_INSTANCE_CHECKER(SMBusIPMIDevice, SMBUS_IPMI, + TYPE_SMBUS_IPMI) #define SSIF_IPMI_REQUEST 2 #define SSIF_IPMI_MULTI_PART_REQUEST_START 6 diff --git a/hw/isa/i82378.c b/hw/isa/i82378.c index 4060d22..1dcf525 100644 --- a/hw/isa/i82378.c +++ b/hw/isa/i82378.c @@ -28,8 +28,8 @@ #define TYPE_I82378 "i82378" typedef struct I82378State I82378State; -#define I82378(obj) \ - OBJECT_CHECK(I82378State, (obj), TYPE_I82378) +DECLARE_INSTANCE_CHECKER(I82378State, I82378, + TYPE_I82378) struct I82378State { PCIDevice parent_obj; diff --git a/hw/isa/piix4.c b/hw/isa/piix4.c index fdbc20e..8e3ac84 100644 --- a/hw/isa/piix4.c +++ b/hw/isa/piix4.c @@ -54,8 +54,8 @@ struct PIIX4State { }; typedef struct PIIX4State PIIX4State; -#define PIIX4_PCI_DEVICE(obj) \ - OBJECT_CHECK(PIIX4State, (obj), TYPE_PIIX4_PCI_DEVICE) +DECLARE_INSTANCE_CHECKER(PIIX4State, PIIX4_PCI_DEVICE, + TYPE_PIIX4_PCI_DEVICE) static void piix4_isa_reset(DeviceState *dev) { diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 2404753..1e6b48b 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -51,8 +51,8 @@ struct VT82C686BState { typedef struct VT82C686BState VT82C686BState; #define TYPE_VT82C686B_DEVICE "VT82C686B" -#define VT82C686B_DEVICE(obj) \ - OBJECT_CHECK(VT82C686BState, (obj), TYPE_VT82C686B_DEVICE) +DECLARE_INSTANCE_CHECKER(VT82C686BState, VT82C686B_DEVICE, + TYPE_VT82C686B_DEVICE) static void superio_ioport_writeb(void *opaque, hwaddr addr, uint64_t data, unsigned size) @@ -182,16 +182,16 @@ struct VT686MC97State { typedef struct VT686MC97State VT686MC97State; #define TYPE_VT82C686B_PM_DEVICE "VT82C686B_PM" -#define VT82C686B_PM_DEVICE(obj) \ - OBJECT_CHECK(VT686PMState, (obj), TYPE_VT82C686B_PM_DEVICE) +DECLARE_INSTANCE_CHECKER(VT686PMState, VT82C686B_PM_DEVICE, + TYPE_VT82C686B_PM_DEVICE) #define TYPE_VT82C686B_MC97_DEVICE "VT82C686B_MC97" -#define VT82C686B_MC97_DEVICE(obj) \ - OBJECT_CHECK(VT686MC97State, (obj), TYPE_VT82C686B_MC97_DEVICE) +DECLARE_INSTANCE_CHECKER(VT686MC97State, VT82C686B_MC97_DEVICE, + TYPE_VT82C686B_MC97_DEVICE) #define TYPE_VT82C686B_AC97_DEVICE "VT82C686B_AC97" -#define VT82C686B_AC97_DEVICE(obj) \ - OBJECT_CHECK(VT686AC97State, (obj), TYPE_VT82C686B_AC97_DEVICE) +DECLARE_INSTANCE_CHECKER(VT686AC97State, VT82C686B_AC97_DEVICE, + TYPE_VT82C686B_AC97_DEVICE) static void pm_update_sci(VT686PMState *s) { diff --git a/hw/m68k/mcf_intc.c b/hw/m68k/mcf_intc.c index e628567..7ee4472 100644 --- a/hw/m68k/mcf_intc.c +++ b/hw/m68k/mcf_intc.c @@ -19,7 +19,8 @@ #define TYPE_MCF_INTC "mcf-intc" typedef struct mcf_intc_state mcf_intc_state; -#define MCF_INTC(obj) OBJECT_CHECK(mcf_intc_state, (obj), TYPE_MCF_INTC) +DECLARE_INSTANCE_CHECKER(mcf_intc_state, MCF_INTC, + TYPE_MCF_INTC) struct mcf_intc_state { SysBusDevice parent_obj; diff --git a/hw/m68k/next-cube.c b/hw/m68k/next-cube.c index 25168c4..cbd913b 100644 --- a/hw/m68k/next-cube.c +++ b/hw/m68k/next-cube.c @@ -39,7 +39,8 @@ #define TYPE_NEXT_MACHINE MACHINE_TYPE_NAME("next-cube") typedef struct NeXTState NeXTState; -#define NEXT_MACHINE(obj) OBJECT_CHECK(NeXTState, (obj), TYPE_NEXT_MACHINE) +DECLARE_INSTANCE_CHECKER(NeXTState, NEXT_MACHINE, + TYPE_NEXT_MACHINE) #define ENTRY 0x0100001e #define RAM_SIZE 0x4000000 diff --git a/hw/m68k/next-kbd.c b/hw/m68k/next-kbd.c index a631631..c7ca3fb 100644 --- a/hw/m68k/next-kbd.c +++ b/hw/m68k/next-kbd.c @@ -39,7 +39,8 @@ #include "qom/object.h" typedef struct NextKBDState NextKBDState; -#define NEXTKBD(obj) OBJECT_CHECK(NextKBDState, (obj), TYPE_NEXTKBD) +DECLARE_INSTANCE_CHECKER(NextKBDState, NEXTKBD, + TYPE_NEXTKBD) /* following defintions from next68k netbsd */ #define CSR_INT 0x00800000 diff --git a/hw/microblaze/xlnx-zynqmp-pmu.c b/hw/microblaze/xlnx-zynqmp-pmu.c index f679aee..ab9924b 100644 --- a/hw/microblaze/xlnx-zynqmp-pmu.c +++ b/hw/microblaze/xlnx-zynqmp-pmu.c @@ -30,8 +30,8 @@ #define TYPE_XLNX_ZYNQMP_PMU_SOC "xlnx,zynqmp-pmu-soc" typedef struct XlnxZynqMPPMUSoCState XlnxZynqMPPMUSoCState; -#define XLNX_ZYNQMP_PMU_SOC(obj) OBJECT_CHECK(XlnxZynqMPPMUSoCState, (obj), \ - TYPE_XLNX_ZYNQMP_PMU_SOC) +DECLARE_INSTANCE_CHECKER(XlnxZynqMPPMUSoCState, XLNX_ZYNQMP_PMU_SOC, + TYPE_XLNX_ZYNQMP_PMU_SOC) #define XLNX_ZYNQMP_PMU_ROM_SIZE 0x8000 #define XLNX_ZYNQMP_PMU_ROM_ADDR 0xFFD00000 diff --git a/hw/mips/boston.c b/hw/mips/boston.c index e2c35b4..1b3f69e 100644 --- a/hw/mips/boston.c +++ b/hw/mips/boston.c @@ -45,7 +45,8 @@ #define TYPE_MIPS_BOSTON "mips-boston" typedef struct BostonState BostonState; -#define BOSTON(obj) OBJECT_CHECK(BostonState, (obj), TYPE_MIPS_BOSTON) +DECLARE_INSTANCE_CHECKER(BostonState, BOSTON, + TYPE_MIPS_BOSTON) struct BostonState { SysBusDevice parent_obj; diff --git a/hw/mips/gt64xxx_pci.c b/hw/mips/gt64xxx_pci.c index bd7ec18..b613e1e 100644 --- a/hw/mips/gt64xxx_pci.c +++ b/hw/mips/gt64xxx_pci.c @@ -232,8 +232,8 @@ #define TYPE_GT64120_PCI_HOST_BRIDGE "gt64120" typedef struct GT64120State GT64120State; -#define GT64120_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(GT64120State, (obj), TYPE_GT64120_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(GT64120State, GT64120_PCI_HOST_BRIDGE, + TYPE_GT64120_PCI_HOST_BRIDGE) struct GT64120State { PCIHostState parent_obj; diff --git a/hw/mips/malta.c b/hw/mips/malta.c index 86ae544..5b73ea4 100644 --- a/hw/mips/malta.c +++ b/hw/mips/malta.c @@ -90,7 +90,8 @@ typedef struct { #define TYPE_MIPS_MALTA "mips-malta" typedef struct MaltaState MaltaState; -#define MIPS_MALTA(obj) OBJECT_CHECK(MaltaState, (obj), TYPE_MIPS_MALTA) +DECLARE_INSTANCE_CHECKER(MaltaState, MIPS_MALTA, + TYPE_MIPS_MALTA) struct MaltaState { SysBusDevice parent_obj; diff --git a/hw/misc/applesmc.c b/hw/misc/applesmc.c index e3c7b17..dca3fba 100644 --- a/hw/misc/applesmc.c +++ b/hw/misc/applesmc.c @@ -91,7 +91,8 @@ struct AppleSMCData { }; typedef struct AppleSMCState AppleSMCState; -#define APPLE_SMC(obj) OBJECT_CHECK(AppleSMCState, (obj), TYPE_APPLE_SMC) +DECLARE_INSTANCE_CHECKER(AppleSMCState, APPLE_SMC, + TYPE_APPLE_SMC) struct AppleSMCState { ISADevice parent_obj; diff --git a/hw/misc/arm_integrator_debug.c b/hw/misc/arm_integrator_debug.c index 4ad2b6a..822deff 100644 --- a/hw/misc/arm_integrator_debug.c +++ b/hw/misc/arm_integrator_debug.c @@ -22,8 +22,8 @@ #include "qom/object.h" typedef struct IntegratorDebugState IntegratorDebugState; -#define INTEGRATOR_DEBUG(obj) \ - OBJECT_CHECK(IntegratorDebugState, (obj), TYPE_INTEGRATOR_DEBUG) +DECLARE_INSTANCE_CHECKER(IntegratorDebugState, INTEGRATOR_DEBUG, + TYPE_INTEGRATOR_DEBUG) struct IntegratorDebugState { SysBusDevice parent_obj; diff --git a/hw/misc/arm_l2x0.c b/hw/misc/arm_l2x0.c index f75d798..93948c3 100644 --- a/hw/misc/arm_l2x0.c +++ b/hw/misc/arm_l2x0.c @@ -31,7 +31,8 @@ #define TYPE_ARM_L2X0 "l2x0" typedef struct L2x0State L2x0State; -#define ARM_L2X0(obj) OBJECT_CHECK(L2x0State, (obj), TYPE_ARM_L2X0) +DECLARE_INSTANCE_CHECKER(L2x0State, ARM_L2X0, + TYPE_ARM_L2X0) struct L2x0State { SysBusDevice parent_obj; diff --git a/hw/misc/arm_sysctl.c b/hw/misc/arm_sysctl.c index a3faa51..f0f49e7 100644 --- a/hw/misc/arm_sysctl.c +++ b/hw/misc/arm_sysctl.c @@ -24,8 +24,8 @@ #define TYPE_ARM_SYSCTL "realview_sysctl" typedef struct arm_sysctl_state arm_sysctl_state; -#define ARM_SYSCTL(obj) \ - OBJECT_CHECK(arm_sysctl_state, (obj), TYPE_ARM_SYSCTL) +DECLARE_INSTANCE_CHECKER(arm_sysctl_state, ARM_SYSCTL, + TYPE_ARM_SYSCTL) struct arm_sysctl_state { SysBusDevice parent_obj; diff --git a/hw/misc/debugexit.c b/hw/misc/debugexit.c index 6c1f9ad..c6b0cff 100644 --- a/hw/misc/debugexit.c +++ b/hw/misc/debugexit.c @@ -15,8 +15,8 @@ #define TYPE_ISA_DEBUG_EXIT_DEVICE "isa-debug-exit" typedef struct ISADebugExitState ISADebugExitState; -#define ISA_DEBUG_EXIT_DEVICE(obj) \ - OBJECT_CHECK(ISADebugExitState, (obj), TYPE_ISA_DEBUG_EXIT_DEVICE) +DECLARE_INSTANCE_CHECKER(ISADebugExitState, ISA_DEBUG_EXIT_DEVICE, + TYPE_ISA_DEBUG_EXIT_DEVICE) struct ISADebugExitState { ISADevice parent_obj; diff --git a/hw/misc/eccmemctl.c b/hw/misc/eccmemctl.c index 47bec04..468c2a4 100644 --- a/hw/misc/eccmemctl.c +++ b/hw/misc/eccmemctl.c @@ -128,7 +128,8 @@ #define TYPE_ECC_MEMCTL "eccmemctl" typedef struct ECCState ECCState; -#define ECC_MEMCTL(obj) OBJECT_CHECK(ECCState, (obj), TYPE_ECC_MEMCTL) +DECLARE_INSTANCE_CHECKER(ECCState, ECC_MEMCTL, + TYPE_ECC_MEMCTL) struct ECCState { SysBusDevice parent_obj; diff --git a/hw/misc/edu.c b/hw/misc/edu.c index 2db9d63..0ff9d1a 100644 --- a/hw/misc/edu.c +++ b/hw/misc/edu.c @@ -35,7 +35,8 @@ #define TYPE_PCI_EDU_DEVICE "edu" typedef struct EduState EduState; -#define EDU(obj) OBJECT_CHECK(EduState, obj, TYPE_PCI_EDU_DEVICE) +DECLARE_INSTANCE_CHECKER(EduState, EDU, + TYPE_PCI_EDU_DEVICE) #define FACT_IRQ 0x00000001 #define DMA_IRQ 0x00000100 diff --git a/hw/misc/empty_slot.c b/hw/misc/empty_slot.c index ec3e510..57dcdfb 100644 --- a/hw/misc/empty_slot.c +++ b/hw/misc/empty_slot.c @@ -19,7 +19,8 @@ #define TYPE_EMPTY_SLOT "empty_slot" typedef struct EmptySlot EmptySlot; -#define EMPTY_SLOT(obj) OBJECT_CHECK(EmptySlot, (obj), TYPE_EMPTY_SLOT) +DECLARE_INSTANCE_CHECKER(EmptySlot, EMPTY_SLOT, + TYPE_EMPTY_SLOT) struct EmptySlot { SysBusDevice parent_obj; diff --git a/hw/misc/exynos4210_clk.c b/hw/misc/exynos4210_clk.c index c54f360..4b469f6 100644 --- a/hw/misc/exynos4210_clk.c +++ b/hw/misc/exynos4210_clk.c @@ -26,8 +26,8 @@ #define TYPE_EXYNOS4210_CLK "exynos4210.clk" typedef struct Exynos4210ClkState Exynos4210ClkState; -#define EXYNOS4210_CLK(obj) \ - OBJECT_CHECK(Exynos4210ClkState, (obj), TYPE_EXYNOS4210_CLK) +DECLARE_INSTANCE_CHECKER(Exynos4210ClkState, EXYNOS4210_CLK, + TYPE_EXYNOS4210_CLK) #define CLK_PLL_LOCKED BIT(29) diff --git a/hw/misc/exynos4210_pmu.c b/hw/misc/exynos4210_pmu.c index e6bbb1f..b19b82a 100644 --- a/hw/misc/exynos4210_pmu.c +++ b/hw/misc/exynos4210_pmu.c @@ -396,8 +396,8 @@ static const Exynos4210PmuReg exynos4210_pmu_regs[] = { #define TYPE_EXYNOS4210_PMU "exynos4210.pmu" typedef struct Exynos4210PmuState Exynos4210PmuState; -#define EXYNOS4210_PMU(obj) \ - OBJECT_CHECK(Exynos4210PmuState, (obj), TYPE_EXYNOS4210_PMU) +DECLARE_INSTANCE_CHECKER(Exynos4210PmuState, EXYNOS4210_PMU, + TYPE_EXYNOS4210_PMU) struct Exynos4210PmuState { SysBusDevice parent_obj; diff --git a/hw/misc/exynos4210_rng.c b/hw/misc/exynos4210_rng.c index 3e2ec4f..13ec6e1 100644 --- a/hw/misc/exynos4210_rng.c +++ b/hw/misc/exynos4210_rng.c @@ -37,8 +37,8 @@ #define TYPE_EXYNOS4210_RNG "exynos4210.rng" typedef struct Exynos4210RngState Exynos4210RngState; -#define EXYNOS4210_RNG(obj) \ - OBJECT_CHECK(Exynos4210RngState, (obj), TYPE_EXYNOS4210_RNG) +DECLARE_INSTANCE_CHECKER(Exynos4210RngState, EXYNOS4210_RNG, + TYPE_EXYNOS4210_RNG) /* * Exynos4220, PRNG, only polling mode is supported. diff --git a/hw/misc/ivshmem.c b/hw/misc/ivshmem.c index 1f65f6f..e321e5c 100644 --- a/hw/misc/ivshmem.c +++ b/hw/misc/ivshmem.c @@ -59,20 +59,20 @@ #define TYPE_IVSHMEM_COMMON "ivshmem-common" typedef struct IVShmemState IVShmemState; -#define IVSHMEM_COMMON(obj) \ - OBJECT_CHECK(IVShmemState, (obj), TYPE_IVSHMEM_COMMON) +DECLARE_INSTANCE_CHECKER(IVShmemState, IVSHMEM_COMMON, + TYPE_IVSHMEM_COMMON) #define TYPE_IVSHMEM_PLAIN "ivshmem-plain" -#define IVSHMEM_PLAIN(obj) \ - OBJECT_CHECK(IVShmemState, (obj), TYPE_IVSHMEM_PLAIN) +DECLARE_INSTANCE_CHECKER(IVShmemState, IVSHMEM_PLAIN, + TYPE_IVSHMEM_PLAIN) #define TYPE_IVSHMEM_DOORBELL "ivshmem-doorbell" -#define IVSHMEM_DOORBELL(obj) \ - OBJECT_CHECK(IVShmemState, (obj), TYPE_IVSHMEM_DOORBELL) +DECLARE_INSTANCE_CHECKER(IVShmemState, IVSHMEM_DOORBELL, + TYPE_IVSHMEM_DOORBELL) #define TYPE_IVSHMEM "ivshmem" -#define IVSHMEM(obj) \ - OBJECT_CHECK(IVShmemState, (obj), TYPE_IVSHMEM) +DECLARE_INSTANCE_CHECKER(IVShmemState, IVSHMEM, + TYPE_IVSHMEM) typedef struct Peer { int nb_eventfds; diff --git a/hw/misc/milkymist-hpdmc.c b/hw/misc/milkymist-hpdmc.c index cf3ed5a..f25715e 100644 --- a/hw/misc/milkymist-hpdmc.c +++ b/hw/misc/milkymist-hpdmc.c @@ -45,8 +45,8 @@ enum { #define TYPE_MILKYMIST_HPDMC "milkymist-hpdmc" typedef struct MilkymistHpdmcState MilkymistHpdmcState; -#define MILKYMIST_HPDMC(obj) \ - OBJECT_CHECK(MilkymistHpdmcState, (obj), TYPE_MILKYMIST_HPDMC) +DECLARE_INSTANCE_CHECKER(MilkymistHpdmcState, MILKYMIST_HPDMC, + TYPE_MILKYMIST_HPDMC) struct MilkymistHpdmcState { SysBusDevice parent_obj; diff --git a/hw/misc/milkymist-pfpu.c b/hw/misc/milkymist-pfpu.c index 8125179..489bb88 100644 --- a/hw/misc/milkymist-pfpu.c +++ b/hw/misc/milkymist-pfpu.c @@ -122,8 +122,8 @@ static const char *opcode_to_str[] = { #define TYPE_MILKYMIST_PFPU "milkymist-pfpu" typedef struct MilkymistPFPUState MilkymistPFPUState; -#define MILKYMIST_PFPU(obj) \ - OBJECT_CHECK(MilkymistPFPUState, (obj), TYPE_MILKYMIST_PFPU) +DECLARE_INSTANCE_CHECKER(MilkymistPFPUState, MILKYMIST_PFPU, + TYPE_MILKYMIST_PFPU) struct MilkymistPFPUState { SysBusDevice parent_obj; diff --git a/hw/misc/mst_fpga.c b/hw/misc/mst_fpga.c index 314dd5f..f74d8cd 100644 --- a/hw/misc/mst_fpga.c +++ b/hw/misc/mst_fpga.c @@ -42,8 +42,8 @@ #define TYPE_MAINSTONE_FPGA "mainstone-fpga" typedef struct mst_irq_state mst_irq_state; -#define MAINSTONE_FPGA(obj) \ - OBJECT_CHECK(mst_irq_state, (obj), TYPE_MAINSTONE_FPGA) +DECLARE_INSTANCE_CHECKER(mst_irq_state, MAINSTONE_FPGA, + TYPE_MAINSTONE_FPGA) struct mst_irq_state { SysBusDevice parent_obj; diff --git a/hw/misc/pc-testdev.c b/hw/misc/pc-testdev.c index b7f3fcb..577a15b 100644 --- a/hw/misc/pc-testdev.c +++ b/hw/misc/pc-testdev.c @@ -57,8 +57,8 @@ struct PCTestdev { typedef struct PCTestdev PCTestdev; #define TYPE_TESTDEV "pc-testdev" -#define TESTDEV(obj) \ - OBJECT_CHECK(PCTestdev, (obj), TYPE_TESTDEV) +DECLARE_INSTANCE_CHECKER(PCTestdev, TESTDEV, + TYPE_TESTDEV) static uint64_t test_irq_line_read(void *opaque, hwaddr addr, unsigned size) { diff --git a/hw/misc/pca9552.c b/hw/misc/pca9552.c index 9cd51b1..b7686e2 100644 --- a/hw/misc/pca9552.c +++ b/hw/misc/pca9552.c @@ -34,10 +34,8 @@ struct PCA955xClass { }; typedef struct PCA955xClass PCA955xClass; -#define PCA955X_CLASS(klass) \ - OBJECT_CLASS_CHECK(PCA955xClass, (klass), TYPE_PCA955X) -#define PCA955X_GET_CLASS(obj) \ - OBJECT_GET_CLASS(PCA955xClass, (obj), TYPE_PCA955X) +DECLARE_CLASS_CHECKERS(PCA955xClass, PCA955X, + TYPE_PCA955X) #define PCA9552_LED_ON 0x0 #define PCA9552_LED_OFF 0x1 diff --git a/hw/misc/pci-testdev.c b/hw/misc/pci-testdev.c index db6d0d5..86d4816 100644 --- a/hw/misc/pci-testdev.c +++ b/hw/misc/pci-testdev.c @@ -96,8 +96,8 @@ typedef struct PCITestDevState PCITestDevState; #define TYPE_PCI_TEST_DEV "pci-testdev" -#define PCI_TEST_DEV(obj) \ - OBJECT_CHECK(PCITestDevState, (obj), TYPE_PCI_TEST_DEV) +DECLARE_INSTANCE_CHECKER(PCITestDevState, PCI_TEST_DEV, + TYPE_PCI_TEST_DEV) #define IOTEST_IS_MEM(i) (strcmp(IOTEST_TYPE(i), "portio")) #define IOTEST_REGION(d, i) (IOTEST_IS_MEM(i) ? &(d)->mmio : &(d)->portio) diff --git a/hw/misc/puv3_pm.c b/hw/misc/puv3_pm.c index e549c0f..cac8497 100644 --- a/hw/misc/puv3_pm.c +++ b/hw/misc/puv3_pm.c @@ -20,7 +20,8 @@ #define TYPE_PUV3_PM "puv3_pm" typedef struct PUV3PMState PUV3PMState; -#define PUV3_PM(obj) OBJECT_CHECK(PUV3PMState, (obj), TYPE_PUV3_PM) +DECLARE_INSTANCE_CHECKER(PUV3PMState, PUV3_PM, + TYPE_PUV3_PM) struct PUV3PMState { SysBusDevice parent_obj; diff --git a/hw/misc/pvpanic.c b/hw/misc/pvpanic.c index 894c67e..598d547 100644 --- a/hw/misc/pvpanic.c +++ b/hw/misc/pvpanic.c @@ -31,8 +31,8 @@ #define PVPANIC_CRASHLOADED (1 << PVPANIC_F_CRASHLOADED) typedef struct PVPanicState PVPanicState; -#define ISA_PVPANIC_DEVICE(obj) \ - OBJECT_CHECK(PVPanicState, (obj), TYPE_PVPANIC) +DECLARE_INSTANCE_CHECKER(PVPanicState, ISA_PVPANIC_DEVICE, + TYPE_PVPANIC) static void handle_event(int event) { diff --git a/hw/misc/sga.c b/hw/misc/sga.c index e5cc2da..477f587 100644 --- a/hw/misc/sga.c +++ b/hw/misc/sga.c @@ -35,7 +35,8 @@ #define TYPE_SGA "sga" typedef struct ISASGAState ISASGAState; -#define SGA(obj) OBJECT_CHECK(ISASGAState, (obj), TYPE_SGA) +DECLARE_INSTANCE_CHECKER(ISASGAState, SGA, + TYPE_SGA) struct ISASGAState { ISADevice parent_obj; diff --git a/hw/misc/slavio_misc.c b/hw/misc/slavio_misc.c index f1a039b..ab27ad4 100644 --- a/hw/misc/slavio_misc.c +++ b/hw/misc/slavio_misc.c @@ -41,7 +41,8 @@ #define TYPE_SLAVIO_MISC "slavio_misc" typedef struct MiscState MiscState; -#define SLAVIO_MISC(obj) OBJECT_CHECK(MiscState, (obj), TYPE_SLAVIO_MISC) +DECLARE_INSTANCE_CHECKER(MiscState, SLAVIO_MISC, + TYPE_SLAVIO_MISC) struct MiscState { SysBusDevice parent_obj; @@ -65,7 +66,8 @@ struct MiscState { #define TYPE_APC "apc" typedef struct APCState APCState; -#define APC(obj) OBJECT_CHECK(APCState, (obj), TYPE_APC) +DECLARE_INSTANCE_CHECKER(APCState, APC, + TYPE_APC) struct APCState { SysBusDevice parent_obj; diff --git a/hw/misc/tmp105.h b/hw/misc/tmp105.h index 634bb4a..7ee8a49 100644 --- a/hw/misc/tmp105.h +++ b/hw/misc/tmp105.h @@ -20,7 +20,8 @@ #define TYPE_TMP105 "tmp105" typedef struct TMP105State TMP105State; -#define TMP105(obj) OBJECT_CHECK(TMP105State, (obj), TYPE_TMP105) +DECLARE_INSTANCE_CHECKER(TMP105State, TMP105, + TYPE_TMP105) /** * TMP105State: diff --git a/hw/misc/tmp421.c b/hw/misc/tmp421.c index a289c83..212d6e0 100644 --- a/hw/misc/tmp421.c +++ b/hw/misc/tmp421.c @@ -74,12 +74,9 @@ struct TMP421Class { typedef struct TMP421Class TMP421Class; #define TYPE_TMP421 "tmp421-generic" -#define TMP421(obj) OBJECT_CHECK(TMP421State, (obj), TYPE_TMP421) +DECLARE_OBJ_CHECKERS(TMP421State, TMP421Class, + TMP421, TYPE_TMP421) -#define TMP421_CLASS(klass) \ - OBJECT_CLASS_CHECK(TMP421Class, (klass), TYPE_TMP421) -#define TMP421_GET_CLASS(obj) \ - OBJECT_GET_CLASS(TMP421Class, (obj), TYPE_TMP421) /* the TMP421 registers */ #define TMP421_STATUS_REG 0x08 diff --git a/hw/misc/zynq_slcr.c b/hw/misc/zynq_slcr.c index 223f533..bedf09a 100644 --- a/hw/misc/zynq_slcr.c +++ b/hw/misc/zynq_slcr.c @@ -184,7 +184,8 @@ REG32(DDRIOB, 0xb40) #define TYPE_ZYNQ_SLCR "xilinx,zynq_slcr" typedef struct ZynqSLCRState ZynqSLCRState; -#define ZYNQ_SLCR(obj) OBJECT_CHECK(ZynqSLCRState, (obj), TYPE_ZYNQ_SLCR) +DECLARE_INSTANCE_CHECKER(ZynqSLCRState, ZYNQ_SLCR, + TYPE_ZYNQ_SLCR) struct ZynqSLCRState { SysBusDevice parent_obj; diff --git a/hw/net/can/can_kvaser_pci.c b/hw/net/can/can_kvaser_pci.c index a84d988..168b3a6 100644 --- a/hw/net/can/can_kvaser_pci.c +++ b/hw/net/can/can_kvaser_pci.c @@ -48,8 +48,8 @@ #define TYPE_CAN_PCI_DEV "kvaser_pci" typedef struct KvaserPCIState KvaserPCIState; -#define KVASER_PCI_DEV(obj) \ - OBJECT_CHECK(KvaserPCIState, (obj), TYPE_CAN_PCI_DEV) +DECLARE_INSTANCE_CHECKER(KvaserPCIState, KVASER_PCI_DEV, + TYPE_CAN_PCI_DEV) #ifndef KVASER_PCI_VENDOR_ID1 #define KVASER_PCI_VENDOR_ID1 0x10e8 /* the PCI device and vendor IDs */ diff --git a/hw/net/can/can_mioe3680_pci.c b/hw/net/can/can_mioe3680_pci.c index 8ded64c..7a79e26 100644 --- a/hw/net/can/can_mioe3680_pci.c +++ b/hw/net/can/can_mioe3680_pci.c @@ -44,8 +44,8 @@ #define TYPE_CAN_PCI_DEV "mioe3680_pci" typedef struct Mioe3680PCIState Mioe3680PCIState; -#define MIOe3680_PCI_DEV(obj) \ - OBJECT_CHECK(Mioe3680PCIState, (obj), TYPE_CAN_PCI_DEV) +DECLARE_INSTANCE_CHECKER(Mioe3680PCIState, MIOe3680_PCI_DEV, + TYPE_CAN_PCI_DEV) /* the PCI device and vendor IDs */ #ifndef MIOe3680_PCI_VENDOR_ID1 diff --git a/hw/net/can/can_pcm3680_pci.c b/hw/net/can/can_pcm3680_pci.c index f39228d..8ef4e74 100644 --- a/hw/net/can/can_pcm3680_pci.c +++ b/hw/net/can/can_pcm3680_pci.c @@ -44,8 +44,8 @@ #define TYPE_CAN_PCI_DEV "pcm3680_pci" typedef struct Pcm3680iPCIState Pcm3680iPCIState; -#define PCM3680i_PCI_DEV(obj) \ - OBJECT_CHECK(Pcm3680iPCIState, (obj), TYPE_CAN_PCI_DEV) +DECLARE_INSTANCE_CHECKER(Pcm3680iPCIState, PCM3680i_PCI_DEV, + TYPE_CAN_PCI_DEV) /* the PCI device and vendor IDs */ #ifndef PCM3680i_PCI_VENDOR_ID1 diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c index b065d42..56b96e9 100644 --- a/hw/net/dp8393x.c +++ b/hw/net/dp8393x.c @@ -152,7 +152,8 @@ do { printf("sonic ERROR: %s: " fmt, __func__ , ## __VA_ARGS__); } while (0) #define TYPE_DP8393X "dp8393x" typedef struct dp8393xState dp8393xState; -#define DP8393X(obj) OBJECT_CHECK(dp8393xState, (obj), TYPE_DP8393X) +DECLARE_INSTANCE_CHECKER(dp8393xState, DP8393X, + TYPE_DP8393X) struct dp8393xState { SysBusDevice parent_obj; diff --git a/hw/net/e1000.c b/hw/net/e1000.c index f8925a1..83347cb 100644 --- a/hw/net/e1000.c +++ b/hw/net/e1000.c @@ -151,13 +151,9 @@ typedef struct E1000BaseClass E1000BaseClass; #define TYPE_E1000_BASE "e1000-base" -#define E1000(obj) \ - OBJECT_CHECK(E1000State, (obj), TYPE_E1000_BASE) +DECLARE_OBJ_CHECKERS(E1000State, E1000BaseClass, + E1000, TYPE_E1000_BASE) -#define E1000_CLASS(klass) \ - OBJECT_CLASS_CHECK(E1000BaseClass, (klass), TYPE_E1000_BASE) -#define E1000_GET_CLASS(obj) \ - OBJECT_GET_CLASS(E1000BaseClass, (obj), TYPE_E1000_BASE) static void e1000_link_up(E1000State *s) diff --git a/hw/net/e1000e.c b/hw/net/e1000e.c index d631765..938d44f 100644 --- a/hw/net/e1000e.c +++ b/hw/net/e1000e.c @@ -57,7 +57,8 @@ #define TYPE_E1000E "e1000e" typedef struct E1000EState E1000EState; -#define E1000E(obj) OBJECT_CHECK(E1000EState, (obj), TYPE_E1000E) +DECLARE_INSTANCE_CHECKER(E1000EState, E1000E, + TYPE_E1000E) struct E1000EState { PCIDevice parent_obj; diff --git a/hw/net/etraxfs_eth.c b/hw/net/etraxfs_eth.c index 2bd37f6..36d898a 100644 --- a/hw/net/etraxfs_eth.c +++ b/hw/net/etraxfs_eth.c @@ -325,8 +325,8 @@ static void mdio_cycle(struct qemu_mdio *bus) #define TYPE_ETRAX_FS_ETH "etraxfs-eth" typedef struct ETRAXFSEthState ETRAXFSEthState; -#define ETRAX_FS_ETH(obj) \ - OBJECT_CHECK(ETRAXFSEthState, (obj), TYPE_ETRAX_FS_ETH) +DECLARE_INSTANCE_CHECKER(ETRAXFSEthState, ETRAX_FS_ETH, + TYPE_ETRAX_FS_ETH) struct ETRAXFSEthState { SysBusDevice parent_obj; diff --git a/hw/net/fsl_etsec/etsec.h b/hw/net/fsl_etsec/etsec.h index 132a87b..0c929d9 100644 --- a/hw/net/fsl_etsec/etsec.h +++ b/hw/net/fsl_etsec/etsec.h @@ -150,8 +150,8 @@ struct eTSEC { typedef struct eTSEC eTSEC; #define TYPE_ETSEC_COMMON "eTSEC" -#define ETSEC_COMMON(obj) \ - OBJECT_CHECK(eTSEC, (obj), TYPE_ETSEC_COMMON) +DECLARE_INSTANCE_CHECKER(eTSEC, ETSEC_COMMON, + TYPE_ETSEC_COMMON) #define eTSEC_TRANSMIT 1 #define eTSEC_RECEIVE 2 diff --git a/hw/net/lan9118.c b/hw/net/lan9118.c index 5d7f966..57a59ac 100644 --- a/hw/net/lan9118.c +++ b/hw/net/lan9118.c @@ -182,7 +182,8 @@ static const VMStateDescription vmstate_lan9118_packet = { }; typedef struct lan9118_state lan9118_state; -#define LAN9118(obj) OBJECT_CHECK(lan9118_state, (obj), TYPE_LAN9118) +DECLARE_INSTANCE_CHECKER(lan9118_state, LAN9118, + TYPE_LAN9118) struct lan9118_state { SysBusDevice parent_obj; diff --git a/hw/net/milkymist-minimac2.c b/hw/net/milkymist-minimac2.c index 0ed01fe..41a8543 100644 --- a/hw/net/milkymist-minimac2.c +++ b/hw/net/milkymist-minimac2.c @@ -100,8 +100,8 @@ typedef struct MilkymistMinimac2MdioState MilkymistMinimac2MdioState; #define TYPE_MILKYMIST_MINIMAC2 "milkymist-minimac2" typedef struct MilkymistMinimac2State MilkymistMinimac2State; -#define MILKYMIST_MINIMAC2(obj) \ - OBJECT_CHECK(MilkymistMinimac2State, (obj), TYPE_MILKYMIST_MINIMAC2) +DECLARE_INSTANCE_CHECKER(MilkymistMinimac2State, MILKYMIST_MINIMAC2, + TYPE_MILKYMIST_MINIMAC2) struct MilkymistMinimac2State { SysBusDevice parent_obj; diff --git a/hw/net/mipsnet.c b/hw/net/mipsnet.c index 094951a..61dbd57 100644 --- a/hw/net/mipsnet.c +++ b/hw/net/mipsnet.c @@ -26,7 +26,8 @@ #define TYPE_MIPS_NET "mipsnet" typedef struct MIPSnetState MIPSnetState; -#define MIPS_NET(obj) OBJECT_CHECK(MIPSnetState, (obj), TYPE_MIPS_NET) +DECLARE_INSTANCE_CHECKER(MIPSnetState, MIPS_NET, + TYPE_MIPS_NET) struct MIPSnetState { SysBusDevice parent_obj; diff --git a/hw/net/ne2000-isa.c b/hw/net/ne2000-isa.c index 716f3b6..688a0cc 100644 --- a/hw/net/ne2000-isa.c +++ b/hw/net/ne2000-isa.c @@ -34,7 +34,8 @@ #include "qom/object.h" typedef struct ISANE2000State ISANE2000State; -#define ISA_NE2000(obj) OBJECT_CHECK(ISANE2000State, (obj), TYPE_ISA_NE2000) +DECLARE_INSTANCE_CHECKER(ISANE2000State, ISA_NE2000, + TYPE_ISA_NE2000) struct ISANE2000State { ISADevice parent_obj; diff --git a/hw/net/opencores_eth.c b/hw/net/opencores_eth.c index 6e3257d..5cd204c 100644 --- a/hw/net/opencores_eth.c +++ b/hw/net/opencores_eth.c @@ -273,7 +273,8 @@ typedef struct desc { #define TYPE_OPEN_ETH "open_eth" typedef struct OpenEthState OpenEthState; -#define OPEN_ETH(obj) OBJECT_CHECK(OpenEthState, (obj), TYPE_OPEN_ETH) +DECLARE_INSTANCE_CHECKER(OpenEthState, OPEN_ETH, + TYPE_OPEN_ETH) struct OpenEthState { SysBusDevice parent_obj; diff --git a/hw/net/pcnet-pci.c b/hw/net/pcnet-pci.c index 27f6566..449970b 100644 --- a/hw/net/pcnet-pci.c +++ b/hw/net/pcnet-pci.c @@ -53,8 +53,8 @@ #define TYPE_PCI_PCNET "pcnet" typedef struct PCIPCNetState PCIPCNetState; -#define PCI_PCNET(obj) \ - OBJECT_CHECK(PCIPCNetState, (obj), TYPE_PCI_PCNET) +DECLARE_INSTANCE_CHECKER(PCIPCNetState, PCI_PCNET, + TYPE_PCI_PCNET) struct PCIPCNetState { /*< private >*/ diff --git a/hw/net/rocker/rocker.h b/hw/net/rocker/rocker.h index 0dd49d5..941c932 100644 --- a/hw/net/rocker/rocker.h +++ b/hw/net/rocker/rocker.h @@ -73,8 +73,8 @@ typedef struct desc_ring DescRing; #define TYPE_ROCKER "rocker" typedef struct rocker Rocker; -#define ROCKER(obj) \ - OBJECT_CHECK(Rocker, (obj), TYPE_ROCKER) +DECLARE_INSTANCE_CHECKER(Rocker, ROCKER, + TYPE_ROCKER) Rocker *rocker_find(const char *name); uint32_t rocker_fp_ports(Rocker *r); diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c index 69d7f36..9246388 100644 --- a/hw/net/rtl8139.c +++ b/hw/net/rtl8139.c @@ -95,8 +95,8 @@ static inline GCC_FMT_ATTR(1, 2) int DPRINTF(const char *fmt, ...) #define TYPE_RTL8139 "rtl8139" typedef struct RTL8139State RTL8139State; -#define RTL8139(obj) \ - OBJECT_CHECK(RTL8139State, (obj), TYPE_RTL8139) +DECLARE_INSTANCE_CHECKER(RTL8139State, RTL8139, + TYPE_RTL8139) /* Symbolic offsets to registers. */ enum RTL8139_registers { diff --git a/hw/net/smc91c111.c b/hw/net/smc91c111.c index 12da4b1..9fad904 100644 --- a/hw/net/smc91c111.c +++ b/hw/net/smc91c111.c @@ -26,7 +26,8 @@ #define TYPE_SMC91C111 "smc91c111" typedef struct smc91c111_state smc91c111_state; -#define SMC91C111(obj) OBJECT_CHECK(smc91c111_state, (obj), TYPE_SMC91C111) +DECLARE_INSTANCE_CHECKER(smc91c111_state, SMC91C111, + TYPE_SMC91C111) struct smc91c111_state { SysBusDevice parent_obj; diff --git a/hw/net/spapr_llan.c b/hw/net/spapr_llan.c index 94b61a6..d34cb29 100644 --- a/hw/net/spapr_llan.c +++ b/hw/net/spapr_llan.c @@ -86,8 +86,8 @@ typedef uint64_t vlan_bd_t; #define TYPE_VIO_SPAPR_VLAN_DEVICE "spapr-vlan" typedef struct SpaprVioVlan SpaprVioVlan; -#define VIO_SPAPR_VLAN_DEVICE(obj) \ - OBJECT_CHECK(SpaprVioVlan, (obj), TYPE_VIO_SPAPR_VLAN_DEVICE) +DECLARE_INSTANCE_CHECKER(SpaprVioVlan, VIO_SPAPR_VLAN_DEVICE, + TYPE_VIO_SPAPR_VLAN_DEVICE) #define RX_POOL_MAX_BDS 4096 #define RX_MAX_POOLS 5 diff --git a/hw/net/stellaris_enet.c b/hw/net/stellaris_enet.c index 786dc9a..9f13afa 100644 --- a/hw/net/stellaris_enet.c +++ b/hw/net/stellaris_enet.c @@ -52,8 +52,8 @@ do { fprintf(stderr, "stellaris_enet: error: " fmt , ## __VA_ARGS__);} while (0) #define TYPE_STELLARIS_ENET "stellaris_enet" typedef struct stellaris_enet_state stellaris_enet_state; -#define STELLARIS_ENET(obj) \ - OBJECT_CHECK(stellaris_enet_state, (obj), TYPE_STELLARIS_ENET) +DECLARE_INSTANCE_CHECKER(stellaris_enet_state, STELLARIS_ENET, + TYPE_STELLARIS_ENET) typedef struct { uint8_t data[2048]; diff --git a/hw/net/sungem.c b/hw/net/sungem.c index 103a4e1..9175383 100644 --- a/hw/net/sungem.c +++ b/hw/net/sungem.c @@ -24,7 +24,8 @@ #define TYPE_SUNGEM "sungem" typedef struct SunGEMState SunGEMState; -#define SUNGEM(obj) OBJECT_CHECK(SunGEMState, (obj), TYPE_SUNGEM) +DECLARE_INSTANCE_CHECKER(SunGEMState, SUNGEM, + TYPE_SUNGEM) #define MAX_PACKET_SIZE 9016 diff --git a/hw/net/sunhme.c b/hw/net/sunhme.c index 43fb8da..7364ba1 100644 --- a/hw/net/sunhme.c +++ b/hw/net/sunhme.c @@ -131,7 +131,8 @@ #define TYPE_SUNHME "sunhme" typedef struct SunHMEState SunHMEState; -#define SUNHME(obj) OBJECT_CHECK(SunHMEState, (obj), TYPE_SUNHME) +DECLARE_INSTANCE_CHECKER(SunHMEState, SUNHME, + TYPE_SUNHME) /* Maximum size of buffer */ #define HME_FIFO_SIZE 0x800 diff --git a/hw/net/tulip.h b/hw/net/tulip.h index 5fe4aee..87e3ab7 100644 --- a/hw/net/tulip.h +++ b/hw/net/tulip.h @@ -7,7 +7,8 @@ #define TYPE_TULIP "tulip" typedef struct TULIPState TULIPState; -#define TULIP(obj) OBJECT_CHECK(TULIPState, (obj), TYPE_TULIP) +DECLARE_INSTANCE_CHECKER(TULIPState, TULIP, + TYPE_TULIP) #define CSR(_x) ((_x) << 3) diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c index ca3ddda..eff299f 100644 --- a/hw/net/vmxnet3.c +++ b/hw/net/vmxnet3.c @@ -135,10 +135,8 @@ struct VMXNET3Class { }; typedef struct VMXNET3Class VMXNET3Class; -#define VMXNET3_DEVICE_CLASS(klass) \ - OBJECT_CLASS_CHECK(VMXNET3Class, (klass), TYPE_VMXNET3) -#define VMXNET3_DEVICE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(VMXNET3Class, (obj), TYPE_VMXNET3) +DECLARE_CLASS_CHECKERS(VMXNET3Class, VMXNET3_DEVICE, + TYPE_VMXNET3) static inline void vmxnet3_ring_init(PCIDevice *d, Vmxnet3Ring *ring, diff --git a/hw/net/vmxnet3_defs.h b/hw/net/vmxnet3_defs.h index 1df1e4c..7144050 100644 --- a/hw/net/vmxnet3_defs.h +++ b/hw/net/vmxnet3_defs.h @@ -23,7 +23,8 @@ #define TYPE_VMXNET3 "vmxnet3" typedef struct VMXNET3State VMXNET3State; -#define VMXNET3(obj) OBJECT_CHECK(VMXNET3State, (obj), TYPE_VMXNET3) +DECLARE_INSTANCE_CHECKER(VMXNET3State, VMXNET3, + TYPE_VMXNET3) /* Device state and helper functions */ #define VMXNET3_RX_RINGS_PER_QUEUE (2) diff --git a/hw/net/xgmac.c b/hw/net/xgmac.c index 10eebeb..a066550 100644 --- a/hw/net/xgmac.c +++ b/hw/net/xgmac.c @@ -141,7 +141,8 @@ typedef struct RxTxStats { #define TYPE_XGMAC "xgmac" typedef struct XgmacState XgmacState; -#define XGMAC(obj) OBJECT_CHECK(XgmacState, (obj), TYPE_XGMAC) +DECLARE_INSTANCE_CHECKER(XgmacState, XGMAC, + TYPE_XGMAC) struct XgmacState { SysBusDevice parent_obj; diff --git a/hw/net/xilinx_axienet.c b/hw/net/xilinx_axienet.c index 18f28a3..10a33cb 100644 --- a/hw/net/xilinx_axienet.c +++ b/hw/net/xilinx_axienet.c @@ -44,17 +44,15 @@ #define TYPE_XILINX_AXI_ENET_CONTROL_STREAM "xilinx-axienet-control-stream" typedef struct XilinxAXIEnet XilinxAXIEnet; -#define XILINX_AXI_ENET(obj) \ - OBJECT_CHECK(XilinxAXIEnet, (obj), TYPE_XILINX_AXI_ENET) +DECLARE_INSTANCE_CHECKER(XilinxAXIEnet, XILINX_AXI_ENET, + TYPE_XILINX_AXI_ENET) typedef struct XilinxAXIEnetStreamSlave XilinxAXIEnetStreamSlave; -#define XILINX_AXI_ENET_DATA_STREAM(obj) \ - OBJECT_CHECK(XilinxAXIEnetStreamSlave, (obj),\ - TYPE_XILINX_AXI_ENET_DATA_STREAM) +DECLARE_INSTANCE_CHECKER(XilinxAXIEnetStreamSlave, XILINX_AXI_ENET_DATA_STREAM, + TYPE_XILINX_AXI_ENET_DATA_STREAM) -#define XILINX_AXI_ENET_CONTROL_STREAM(obj) \ - OBJECT_CHECK(XilinxAXIEnetStreamSlave, (obj),\ - TYPE_XILINX_AXI_ENET_CONTROL_STREAM) +DECLARE_INSTANCE_CHECKER(XilinxAXIEnetStreamSlave, XILINX_AXI_ENET_CONTROL_STREAM, + TYPE_XILINX_AXI_ENET_CONTROL_STREAM) /* Advertisement control register. */ #define ADVERTISE_10FULL 0x0040 /* Try for 10mbps full-duplex */ diff --git a/hw/net/xilinx_ethlite.c b/hw/net/xilinx_ethlite.c index adf4779..6e09f7e 100644 --- a/hw/net/xilinx_ethlite.c +++ b/hw/net/xilinx_ethlite.c @@ -53,8 +53,8 @@ #define CTRL_S 0x1 #define TYPE_XILINX_ETHLITE "xlnx.xps-ethernetlite" -#define XILINX_ETHLITE(obj) \ - OBJECT_CHECK(struct xlx_ethlite, (obj), TYPE_XILINX_ETHLITE) +DECLARE_INSTANCE_CHECKER(struct xlx_ethlite, XILINX_ETHLITE, + TYPE_XILINX_ETHLITE) struct xlx_ethlite { diff --git a/hw/nvram/ds1225y.c b/hw/nvram/ds1225y.c index 99e27e9..44fb7a9 100644 --- a/hw/nvram/ds1225y.c +++ b/hw/nvram/ds1225y.c @@ -111,7 +111,8 @@ static const VMStateDescription vmstate_nvram = { #define TYPE_DS1225Y "ds1225y" typedef struct SysBusNvRamState SysBusNvRamState; -#define DS1225Y(obj) OBJECT_CHECK(SysBusNvRamState, (obj), TYPE_DS1225Y) +DECLARE_INSTANCE_CHECKER(SysBusNvRamState, DS1225Y, + TYPE_DS1225Y) struct SysBusNvRamState { SysBusDevice parent_obj; diff --git a/hw/nvram/eeprom_at24c.c b/hw/nvram/eeprom_at24c.c index 4bf7519..3e93dbb 100644 --- a/hw/nvram/eeprom_at24c.c +++ b/hw/nvram/eeprom_at24c.c @@ -29,7 +29,8 @@ #define TYPE_AT24C_EE "at24c-eeprom" typedef struct EEPROMState EEPROMState; -#define AT24C_EE(obj) OBJECT_CHECK(EEPROMState, (obj), TYPE_AT24C_EE) +DECLARE_INSTANCE_CHECKER(EEPROMState, AT24C_EE, + TYPE_AT24C_EE) struct EEPROMState { I2CSlave parent_obj; diff --git a/hw/nvram/spapr_nvram.c b/hw/nvram/spapr_nvram.c index b9218e0..57ccc17 100644 --- a/hw/nvram/spapr_nvram.c +++ b/hw/nvram/spapr_nvram.c @@ -51,8 +51,8 @@ struct SpaprNvram { typedef struct SpaprNvram SpaprNvram; #define TYPE_VIO_SPAPR_NVRAM "spapr-nvram" -#define VIO_SPAPR_NVRAM(obj) \ - OBJECT_CHECK(SpaprNvram, (obj), TYPE_VIO_SPAPR_NVRAM) +DECLARE_INSTANCE_CHECKER(SpaprNvram, VIO_SPAPR_NVRAM, + TYPE_VIO_SPAPR_NVRAM) #define MIN_NVRAM_SIZE (8 * KiB) #define DEFAULT_NVRAM_SIZE (64 * KiB) diff --git a/hw/pci-bridge/dec.c b/hw/pci-bridge/dec.c index b35866d..e88998d 100644 --- a/hw/pci-bridge/dec.c +++ b/hw/pci-bridge/dec.c @@ -35,7 +35,8 @@ #include "qom/object.h" typedef struct DECState DECState; -#define DEC_21154(obj) OBJECT_CHECK(DECState, (obj), TYPE_DEC_21154) +DECLARE_INSTANCE_CHECKER(DECState, DEC_21154, + TYPE_DEC_21154) struct DECState { PCIHostState parent_obj; diff --git a/hw/pci-bridge/gen_pcie_root_port.c b/hw/pci-bridge/gen_pcie_root_port.c index b62e20a..67c71d5 100644 --- a/hw/pci-bridge/gen_pcie_root_port.c +++ b/hw/pci-bridge/gen_pcie_root_port.c @@ -21,8 +21,8 @@ #define TYPE_GEN_PCIE_ROOT_PORT "pcie-root-port" typedef struct GenPCIERootPort GenPCIERootPort; -#define GEN_PCIE_ROOT_PORT(obj) \ - OBJECT_CHECK(GenPCIERootPort, (obj), TYPE_GEN_PCIE_ROOT_PORT) +DECLARE_INSTANCE_CHECKER(GenPCIERootPort, GEN_PCIE_ROOT_PORT, + TYPE_GEN_PCIE_ROOT_PORT) #define GEN_PCIE_ROOT_PORT_AER_OFFSET 0x100 #define GEN_PCIE_ROOT_PORT_ACS_OFFSET \ diff --git a/hw/pci-bridge/pci_bridge_dev.c b/hw/pci-bridge/pci_bridge_dev.c index bd1b10c..b86d76c 100644 --- a/hw/pci-bridge/pci_bridge_dev.c +++ b/hw/pci-bridge/pci_bridge_dev.c @@ -36,8 +36,8 @@ #define TYPE_PCI_BRIDGE_DEV "pci-bridge" #define TYPE_PCI_BRIDGE_SEAT_DEV "pci-bridge-seat" typedef struct PCIBridgeDev PCIBridgeDev; -#define PCI_BRIDGE_DEV(obj) \ - OBJECT_CHECK(PCIBridgeDev, (obj), TYPE_PCI_BRIDGE_DEV) +DECLARE_INSTANCE_CHECKER(PCIBridgeDev, PCI_BRIDGE_DEV, + TYPE_PCI_BRIDGE_DEV) struct PCIBridgeDev { /*< private >*/ diff --git a/hw/pci-bridge/pci_expander_bridge.c b/hw/pci-bridge/pci_expander_bridge.c index 4a31ee3..aedded1 100644 --- a/hw/pci-bridge/pci_expander_bridge.c +++ b/hw/pci-bridge/pci_expander_bridge.c @@ -26,10 +26,12 @@ #define TYPE_PXB_BUS "pxb-bus" typedef struct PXBBus PXBBus; -#define PXB_BUS(obj) OBJECT_CHECK(PXBBus, (obj), TYPE_PXB_BUS) +DECLARE_INSTANCE_CHECKER(PXBBus, PXB_BUS, + TYPE_PXB_BUS) #define TYPE_PXB_PCIE_BUS "pxb-pcie-bus" -#define PXB_PCIE_BUS(obj) OBJECT_CHECK(PXBBus, (obj), TYPE_PXB_PCIE_BUS) +DECLARE_INSTANCE_CHECKER(PXBBus, PXB_PCIE_BUS, + TYPE_PXB_PCIE_BUS) struct PXBBus { /*< private >*/ @@ -41,10 +43,12 @@ struct PXBBus { #define TYPE_PXB_DEVICE "pxb" typedef struct PXBDev PXBDev; -#define PXB_DEV(obj) OBJECT_CHECK(PXBDev, (obj), TYPE_PXB_DEVICE) +DECLARE_INSTANCE_CHECKER(PXBDev, PXB_DEV, + TYPE_PXB_DEVICE) #define TYPE_PXB_PCIE_DEVICE "pxb-pcie" -#define PXB_PCIE_DEV(obj) OBJECT_CHECK(PXBDev, (obj), TYPE_PXB_PCIE_DEVICE) +DECLARE_INSTANCE_CHECKER(PXBDev, PXB_PCIE_DEV, + TYPE_PXB_PCIE_DEVICE) struct PXBDev { /*< private >*/ diff --git a/hw/pci-bridge/pcie_pci_bridge.c b/hw/pci-bridge/pcie_pci_bridge.c index 1178cd8..abc98f8 100644 --- a/hw/pci-bridge/pcie_pci_bridge.c +++ b/hw/pci-bridge/pcie_pci_bridge.c @@ -30,8 +30,8 @@ struct PCIEPCIBridge { typedef struct PCIEPCIBridge PCIEPCIBridge; #define TYPE_PCIE_PCI_BRIDGE_DEV "pcie-pci-bridge" -#define PCIE_PCI_BRIDGE_DEV(obj) \ - OBJECT_CHECK(PCIEPCIBridge, (obj), TYPE_PCIE_PCI_BRIDGE_DEV) +DECLARE_INSTANCE_CHECKER(PCIEPCIBridge, PCIE_PCI_BRIDGE_DEV, + TYPE_PCIE_PCI_BRIDGE_DEV) static void pcie_pci_bridge_realize(PCIDevice *d, Error **errp) { diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c index 3b37f4f..d10fbd3 100644 --- a/hw/pci-host/bonito.c +++ b/hw/pci-host/bonito.c @@ -240,12 +240,12 @@ struct BonitoState { }; #define TYPE_BONITO_PCI_HOST_BRIDGE "Bonito-pcihost" -#define BONITO_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(BonitoState, (obj), TYPE_BONITO_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(BonitoState, BONITO_PCI_HOST_BRIDGE, + TYPE_BONITO_PCI_HOST_BRIDGE) #define TYPE_PCI_BONITO "Bonito" -#define PCI_BONITO(obj) \ - OBJECT_CHECK(PCIBonitoState, (obj), TYPE_PCI_BONITO) +DECLARE_INSTANCE_CHECKER(PCIBonitoState, PCI_BONITO, + TYPE_PCI_BONITO) static void bonito_writel(void *opaque, hwaddr addr, uint64_t val, unsigned size) diff --git a/hw/pci-host/grackle.c b/hw/pci-host/grackle.c index 48a1626..fd7d6dc 100644 --- a/hw/pci-host/grackle.c +++ b/hw/pci-host/grackle.c @@ -36,8 +36,8 @@ #include "qom/object.h" typedef struct GrackleState GrackleState; -#define GRACKLE_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(GrackleState, (obj), TYPE_GRACKLE_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(GrackleState, GRACKLE_PCI_HOST_BRIDGE, + TYPE_GRACKLE_PCI_HOST_BRIDGE) struct GrackleState { PCIHostState parent_obj; diff --git a/hw/pci-host/i440fx.c b/hw/pci-host/i440fx.c index ead7b7e..93c6223 100644 --- a/hw/pci-host/i440fx.c +++ b/hw/pci-host/i440fx.c @@ -43,8 +43,8 @@ */ typedef struct I440FXState I440FXState; -#define I440FX_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(I440FXState, (obj), TYPE_I440FX_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(I440FXState, I440FX_PCI_HOST_BRIDGE, + TYPE_I440FX_PCI_HOST_BRIDGE) struct I440FXState { PCIHostState parent_obj; diff --git a/hw/pci-host/pnv_phb3.c b/hw/pci-host/pnv_phb3.c index 180a91a..a7f9685 100644 --- a/hw/pci-host/pnv_phb3.c +++ b/hw/pci-host/pnv_phb3.c @@ -878,8 +878,8 @@ static IOMMUTLBEntry pnv_phb3_translate_iommu(IOMMUMemoryRegion *iommu, } #define TYPE_PNV_PHB3_IOMMU_MEMORY_REGION "pnv-phb3-iommu-memory-region" -#define PNV_PHB3_IOMMU_MEMORY_REGION(obj) \ - OBJECT_CHECK(IOMMUMemoryRegion, (obj), TYPE_PNV_PHB3_IOMMU_MEMORY_REGION) +DECLARE_INSTANCE_CHECKER(IOMMUMemoryRegion, PNV_PHB3_IOMMU_MEMORY_REGION, + TYPE_PNV_PHB3_IOMMU_MEMORY_REGION) static void pnv_phb3_iommu_memory_region_class_init(ObjectClass *klass, void *data) diff --git a/hw/pci-host/pnv_phb4.c b/hw/pci-host/pnv_phb4.c index ec85de5..03daf40 100644 --- a/hw/pci-host/pnv_phb4.c +++ b/hw/pci-host/pnv_phb4.c @@ -1043,8 +1043,8 @@ static IOMMUTLBEntry pnv_phb4_translate_iommu(IOMMUMemoryRegion *iommu, } #define TYPE_PNV_PHB4_IOMMU_MEMORY_REGION "pnv-phb4-iommu-memory-region" -#define PNV_PHB4_IOMMU_MEMORY_REGION(obj) \ - OBJECT_CHECK(IOMMUMemoryRegion, (obj), TYPE_PNV_PHB4_IOMMU_MEMORY_REGION) +DECLARE_INSTANCE_CHECKER(IOMMUMemoryRegion, PNV_PHB4_IOMMU_MEMORY_REGION, + TYPE_PNV_PHB4_IOMMU_MEMORY_REGION) static void pnv_phb4_iommu_memory_region_class_init(ObjectClass *klass, void *data) diff --git a/hw/pci-host/ppce500.c b/hw/pci-host/ppce500.c index b29e2be..f376374 100644 --- a/hw/pci-host/ppce500.c +++ b/hw/pci-host/ppce500.c @@ -93,8 +93,8 @@ struct pci_inbound { #define TYPE_PPC_E500_PCI_HOST_BRIDGE "e500-pcihost" typedef struct PPCE500PCIState PPCE500PCIState; -#define PPC_E500_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(PPCE500PCIState, (obj), TYPE_PPC_E500_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(PPCE500PCIState, PPC_E500_PCI_HOST_BRIDGE, + TYPE_PPC_E500_PCI_HOST_BRIDGE) struct PPCE500PCIState { PCIHostState parent_obj; @@ -117,8 +117,8 @@ struct PPCE500PCIState { #define TYPE_PPC_E500_PCI_BRIDGE "e500-host-bridge" typedef struct PPCE500PCIBridgeState PPCE500PCIBridgeState; -#define PPC_E500_PCI_BRIDGE(obj) \ - OBJECT_CHECK(PPCE500PCIBridgeState, (obj), TYPE_PPC_E500_PCI_BRIDGE) +DECLARE_INSTANCE_CHECKER(PPCE500PCIBridgeState, PPC_E500_PCI_BRIDGE, + TYPE_PPC_E500_PCI_BRIDGE) struct PPCE500PCIBridgeState { /*< private >*/ diff --git a/hw/pci-host/prep.c b/hw/pci-host/prep.c index af0c2eb..b234fd7 100644 --- a/hw/pci-host/prep.c +++ b/hw/pci-host/prep.c @@ -44,8 +44,8 @@ #define TYPE_RAVEN_PCI_HOST_BRIDGE "raven-pcihost" typedef struct RavenPCIState RavenPCIState; -#define RAVEN_PCI_DEVICE(obj) \ - OBJECT_CHECK(RavenPCIState, (obj), TYPE_RAVEN_PCI_DEVICE) +DECLARE_INSTANCE_CHECKER(RavenPCIState, RAVEN_PCI_DEVICE, + TYPE_RAVEN_PCI_DEVICE) struct RavenPCIState { PCIDevice dev; @@ -56,8 +56,8 @@ struct RavenPCIState { }; typedef struct PRePPCIState PREPPCIState; -#define RAVEN_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(PREPPCIState, (obj), TYPE_RAVEN_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(PREPPCIState, RAVEN_PCI_HOST_BRIDGE, + TYPE_RAVEN_PCI_HOST_BRIDGE) struct PRePPCIState { PCIHostState parent_obj; diff --git a/hw/pci-host/versatile.c b/hw/pci-host/versatile.c index e0d00ba..3553277 100644 --- a/hw/pci-host/versatile.c +++ b/hw/pci-host/versatile.c @@ -158,12 +158,12 @@ static const VMStateDescription pci_vpb_vmstate = { }; #define TYPE_VERSATILE_PCI "versatile_pci" -#define PCI_VPB(obj) \ - OBJECT_CHECK(PCIVPBState, (obj), TYPE_VERSATILE_PCI) +DECLARE_INSTANCE_CHECKER(PCIVPBState, PCI_VPB, + TYPE_VERSATILE_PCI) #define TYPE_VERSATILE_PCI_HOST "versatile_pci_host" -#define PCI_VPB_HOST(obj) \ - OBJECT_CHECK(PCIDevice, (obj), TYPE_VERSATILE_PCI_HOST) +DECLARE_INSTANCE_CHECKER(PCIDevice, PCI_VPB_HOST, + TYPE_VERSATILE_PCI_HOST) typedef enum { PCI_IMAP0 = 0x0, diff --git a/hw/ppc/e500-ccsr.h b/hw/ppc/e500-ccsr.h index f7fd73f..de4b9d2 100644 --- a/hw/ppc/e500-ccsr.h +++ b/hw/ppc/e500-ccsr.h @@ -14,6 +14,7 @@ struct PPCE500CCSRState { typedef struct PPCE500CCSRState PPCE500CCSRState; #define TYPE_CCSR "e500-ccsr" -#define CCSR(obj) OBJECT_CHECK(PPCE500CCSRState, (obj), TYPE_CCSR) +DECLARE_INSTANCE_CHECKER(PPCE500CCSRState, CCSR, + TYPE_CCSR) #endif /* E500_CCSR_H */ diff --git a/hw/ppc/e500.h b/hw/ppc/e500.h index 5773460..6387075 100644 --- a/hw/ppc/e500.h +++ b/hw/ppc/e500.h @@ -46,11 +46,7 @@ void ppce500_init(MachineState *machine); hwaddr booke206_page_size_to_tlb(uint64_t size); #define TYPE_PPCE500_MACHINE "ppce500-base-machine" -#define PPCE500_MACHINE(obj) \ - OBJECT_CHECK(PPCE500MachineState, (obj), TYPE_PPCE500_MACHINE) -#define PPCE500_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(PPCE500MachineClass, obj, TYPE_PPCE500_MACHINE) -#define PPCE500_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(PPCE500MachineClass, klass, TYPE_PPCE500_MACHINE) +DECLARE_OBJ_CHECKERS(PPCE500MachineState, PPCE500MachineClass, + PPCE500_MACHINE, TYPE_PPCE500_MACHINE) #endif diff --git a/hw/ppc/mac.h b/hw/ppc/mac.h index f4ef3f3..2b6425f 100644 --- a/hw/ppc/mac.h +++ b/hw/ppc/mac.h @@ -73,8 +73,8 @@ /* Core99 machine */ #define TYPE_CORE99_MACHINE MACHINE_TYPE_NAME("mac99") typedef struct Core99MachineState Core99MachineState; -#define CORE99_MACHINE(obj) OBJECT_CHECK(Core99MachineState, (obj), \ - TYPE_CORE99_MACHINE) +DECLARE_INSTANCE_CHECKER(Core99MachineState, CORE99_MACHINE, + TYPE_CORE99_MACHINE) #define CORE99_VIA_CONFIG_CUDA 0x0 #define CORE99_VIA_CONFIG_PMU 0x1 @@ -93,8 +93,8 @@ struct Core99MachineState { /* Mac NVRAM */ #define TYPE_MACIO_NVRAM "macio-nvram" typedef struct MacIONVRAMState MacIONVRAMState; -#define MACIO_NVRAM(obj) \ - OBJECT_CHECK(MacIONVRAMState, (obj), TYPE_MACIO_NVRAM) +DECLARE_INSTANCE_CHECKER(MacIONVRAMState, MACIO_NVRAM, + TYPE_MACIO_NVRAM) struct MacIONVRAMState { /*< private >*/ diff --git a/hw/ppc/mpc8544_guts.c b/hw/ppc/mpc8544_guts.c index f74bcdc..b76b5e4 100644 --- a/hw/ppc/mpc8544_guts.c +++ b/hw/ppc/mpc8544_guts.c @@ -56,7 +56,8 @@ #define TYPE_MPC8544_GUTS "mpc8544-guts" typedef struct GutsState GutsState; -#define MPC8544_GUTS(obj) OBJECT_CHECK(GutsState, (obj), TYPE_MPC8544_GUTS) +DECLARE_INSTANCE_CHECKER(GutsState, MPC8544_GUTS, + TYPE_MPC8544_GUTS) struct GutsState { /*< private >*/ diff --git a/hw/ppc/ppc440_pcix.c b/hw/ppc/ppc440_pcix.c index f82d520..a564fcd 100644 --- a/hw/ppc/ppc440_pcix.c +++ b/hw/ppc/ppc440_pcix.c @@ -47,8 +47,8 @@ struct PLBInMap { #define TYPE_PPC440_PCIX_HOST_BRIDGE "ppc440-pcix-host" typedef struct PPC440PCIXState PPC440PCIXState; -#define PPC440_PCIX_HOST_BRIDGE(obj) \ - OBJECT_CHECK(PPC440PCIXState, (obj), TYPE_PPC440_PCIX_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(PPC440PCIXState, PPC440_PCIX_HOST_BRIDGE, + TYPE_PPC440_PCIX_HOST_BRIDGE) #define PPC440_PCIX_NR_POMS 3 #define PPC440_PCIX_NR_PIMS 3 diff --git a/hw/ppc/ppc440_uc.c b/hw/ppc/ppc440_uc.c index 73cb93a..d9ca6bb 100644 --- a/hw/ppc/ppc440_uc.c +++ b/hw/ppc/ppc440_uc.c @@ -1034,8 +1034,8 @@ void ppc4xx_dma_init(CPUPPCState *env, int dcr_base) #define TYPE_PPC460EX_PCIE_HOST "ppc460ex-pcie-host" typedef struct PPC460EXPCIEState PPC460EXPCIEState; -#define PPC460EX_PCIE_HOST(obj) \ - OBJECT_CHECK(PPC460EXPCIEState, (obj), TYPE_PPC460EX_PCIE_HOST) +DECLARE_INSTANCE_CHECKER(PPC460EXPCIEState, PPC460EX_PCIE_HOST, + TYPE_PPC460EX_PCIE_HOST) struct PPC460EXPCIEState { PCIExpressHost host; diff --git a/hw/ppc/ppc4xx_pci.c b/hw/ppc/ppc4xx_pci.c index 6ee7eee..c24bac9 100644 --- a/hw/ppc/ppc4xx_pci.c +++ b/hw/ppc/ppc4xx_pci.c @@ -45,8 +45,8 @@ struct PCITargetMap { }; typedef struct PPC4xxPCIState PPC4xxPCIState; -#define PPC4xx_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(PPC4xxPCIState, (obj), TYPE_PPC4xx_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(PPC4xxPCIState, PPC4xx_PCI_HOST_BRIDGE, + TYPE_PPC4xx_PCI_HOST_BRIDGE) #define PPC4xx_PCI_NR_PMMS 3 #define PPC4xx_PCI_NR_PTMS 2 diff --git a/hw/ppc/ppce500_spin.c b/hw/ppc/ppce500_spin.c index b1b6d55..cd8000a 100644 --- a/hw/ppc/ppce500_spin.c +++ b/hw/ppc/ppce500_spin.c @@ -48,7 +48,8 @@ typedef struct spin_info { #define TYPE_E500_SPIN "e500-spin" typedef struct SpinState SpinState; -#define E500_SPIN(obj) OBJECT_CHECK(SpinState, (obj), TYPE_E500_SPIN) +DECLARE_INSTANCE_CHECKER(SpinState, E500_SPIN, + TYPE_E500_SPIN) struct SpinState { SysBusDevice parent_obj; diff --git a/hw/ppc/prep_systemio.c b/hw/ppc/prep_systemio.c index d13044a..d1e2fb3 100644 --- a/hw/ppc/prep_systemio.c +++ b/hw/ppc/prep_systemio.c @@ -37,8 +37,8 @@ #define TYPE_PREP_SYSTEMIO "prep-systemio" typedef struct PrepSystemIoState PrepSystemIoState; -#define PREP_SYSTEMIO(obj) \ - OBJECT_CHECK(PrepSystemIoState, (obj), TYPE_PREP_SYSTEMIO) +DECLARE_INSTANCE_CHECKER(PrepSystemIoState, PREP_SYSTEMIO, + TYPE_PREP_SYSTEMIO) /* Bit as defined in PowerPC Reference Plaform v1.1, sect. 6.1.5, p. 132 */ #define PREP_BIT(n) (1 << (7 - (n))) diff --git a/hw/ppc/rs6000_mc.c b/hw/ppc/rs6000_mc.c index ec25a70..56e9601 100644 --- a/hw/ppc/rs6000_mc.c +++ b/hw/ppc/rs6000_mc.c @@ -30,8 +30,8 @@ #define TYPE_RS6000MC "rs6000-mc" typedef struct RS6000MCState RS6000MCState; -#define RS6000MC_DEVICE(obj) \ - OBJECT_CHECK(RS6000MCState, (obj), TYPE_RS6000MC) +DECLARE_INSTANCE_CHECKER(RS6000MCState, RS6000MC_DEVICE, + TYPE_RS6000MC) struct RS6000MCState { ISADevice parent_obj; diff --git a/hw/ppc/spapr_rng.c b/hw/ppc/spapr_rng.c index b400438..6c99633 100644 --- a/hw/ppc/spapr_rng.c +++ b/hw/ppc/spapr_rng.c @@ -31,8 +31,8 @@ #include "qom/object.h" typedef struct SpaprRngState SpaprRngState; -#define SPAPR_RNG(obj) \ - OBJECT_CHECK(SpaprRngState, (obj), TYPE_SPAPR_RNG) +DECLARE_INSTANCE_CHECKER(SpaprRngState, SPAPR_RNG, + TYPE_SPAPR_RNG) struct SpaprRngState { /*< private >*/ diff --git a/hw/rdma/vmw/pvrdma.h b/hw/rdma/vmw/pvrdma.h index db9d9e2..1d36a76 100644 --- a/hw/rdma/vmw/pvrdma.h +++ b/hw/rdma/vmw/pvrdma.h @@ -101,7 +101,8 @@ struct PVRDMADev { PVRDMADevStats stats; }; typedef struct PVRDMADev PVRDMADev; -#define PVRDMA_DEV(dev) OBJECT_CHECK(PVRDMADev, (dev), PVRDMA_HW_NAME) +DECLARE_INSTANCE_CHECKER(PVRDMADev, PVRDMA_DEV, + PVRDMA_HW_NAME) static inline int get_reg_val(PVRDMADev *dev, hwaddr addr, uint32_t *val) { diff --git a/hw/rtc/ds1338.c b/hw/rtc/ds1338.c index 8b2b797..10fac3d 100644 --- a/hw/rtc/ds1338.c +++ b/hw/rtc/ds1338.c @@ -31,7 +31,8 @@ #define TYPE_DS1338 "ds1338" typedef struct DS1338State DS1338State; -#define DS1338(obj) OBJECT_CHECK(DS1338State, (obj), TYPE_DS1338) +DECLARE_INSTANCE_CHECKER(DS1338State, DS1338, + TYPE_DS1338) struct DS1338State { I2CSlave parent_obj; diff --git a/hw/rtc/exynos4210_rtc.c b/hw/rtc/exynos4210_rtc.c index a95f07e..f8a4fe8 100644 --- a/hw/rtc/exynos4210_rtc.c +++ b/hw/rtc/exynos4210_rtc.c @@ -86,8 +86,8 @@ #define TYPE_EXYNOS4210_RTC "exynos4210.rtc" typedef struct Exynos4210RTCState Exynos4210RTCState; -#define EXYNOS4210_RTC(obj) \ - OBJECT_CHECK(Exynos4210RTCState, (obj), TYPE_EXYNOS4210_RTC) +DECLARE_INSTANCE_CHECKER(Exynos4210RTCState, EXYNOS4210_RTC, + TYPE_EXYNOS4210_RTC) struct Exynos4210RTCState { SysBusDevice parent_obj; diff --git a/hw/rtc/m41t80.c b/hw/rtc/m41t80.c index 31445e9..0b7048c 100644 --- a/hw/rtc/m41t80.c +++ b/hw/rtc/m41t80.c @@ -18,7 +18,8 @@ #define TYPE_M41T80 "m41t80" typedef struct M41t80State M41t80State; -#define M41T80(obj) OBJECT_CHECK(M41t80State, (obj), TYPE_M41T80) +DECLARE_INSTANCE_CHECKER(M41t80State, M41T80, + TYPE_M41T80) struct M41t80State { I2CSlave parent_obj; diff --git a/hw/rtc/m48t59-isa.c b/hw/rtc/m48t59-isa.c index dc608e0..cae315e 100644 --- a/hw/rtc/m48t59-isa.c +++ b/hw/rtc/m48t59-isa.c @@ -35,12 +35,8 @@ #define TYPE_M48TXX_ISA "isa-m48txx" typedef struct M48txxISADeviceClass M48txxISADeviceClass; typedef struct M48txxISAState M48txxISAState; -#define M48TXX_ISA_GET_CLASS(obj) \ - OBJECT_GET_CLASS(M48txxISADeviceClass, (obj), TYPE_M48TXX_ISA) -#define M48TXX_ISA_CLASS(klass) \ - OBJECT_CLASS_CHECK(M48txxISADeviceClass, (klass), TYPE_M48TXX_ISA) -#define M48TXX_ISA(obj) \ - OBJECT_CHECK(M48txxISAState, (obj), TYPE_M48TXX_ISA) +DECLARE_OBJ_CHECKERS(M48txxISAState, M48txxISADeviceClass, + M48TXX_ISA, TYPE_M48TXX_ISA) struct M48txxISAState { ISADevice parent_obj; diff --git a/hw/rtc/m48t59.c b/hw/rtc/m48t59.c index 9f5a96a..6525206 100644 --- a/hw/rtc/m48t59.c +++ b/hw/rtc/m48t59.c @@ -45,12 +45,8 @@ #define TYPE_M48TXX_SYS_BUS "sysbus-m48txx" typedef struct M48txxSysBusDeviceClass M48txxSysBusDeviceClass; typedef struct M48txxSysBusState M48txxSysBusState; -#define M48TXX_SYS_BUS_GET_CLASS(obj) \ - OBJECT_GET_CLASS(M48txxSysBusDeviceClass, (obj), TYPE_M48TXX_SYS_BUS) -#define M48TXX_SYS_BUS_CLASS(klass) \ - OBJECT_CLASS_CHECK(M48txxSysBusDeviceClass, (klass), TYPE_M48TXX_SYS_BUS) -#define M48TXX_SYS_BUS(obj) \ - OBJECT_CHECK(M48txxSysBusState, (obj), TYPE_M48TXX_SYS_BUS) +DECLARE_OBJ_CHECKERS(M48txxSysBusState, M48txxSysBusDeviceClass, + M48TXX_SYS_BUS, TYPE_M48TXX_SYS_BUS) /* * Chipset docs: diff --git a/hw/rtc/sun4v-rtc.c b/hw/rtc/sun4v-rtc.c index b5ebefd..18979d2 100644 --- a/hw/rtc/sun4v-rtc.c +++ b/hw/rtc/sun4v-rtc.c @@ -21,7 +21,8 @@ #define TYPE_SUN4V_RTC "sun4v_rtc" typedef struct Sun4vRtc Sun4vRtc; -#define SUN4V_RTC(obj) OBJECT_CHECK(Sun4vRtc, (obj), TYPE_SUN4V_RTC) +DECLARE_INSTANCE_CHECKER(Sun4vRtc, SUN4V_RTC, + TYPE_SUN4V_RTC) struct Sun4vRtc { SysBusDevice parent_obj; diff --git a/hw/rtc/twl92230.c b/hw/rtc/twl92230.c index d46f214..4f83eff 100644 --- a/hw/rtc/twl92230.c +++ b/hw/rtc/twl92230.c @@ -35,7 +35,8 @@ #define TYPE_TWL92230 "twl92230" typedef struct MenelausState MenelausState; -#define TWL92230(obj) OBJECT_CHECK(MenelausState, (obj), TYPE_TWL92230) +DECLARE_INSTANCE_CHECKER(MenelausState, TWL92230, + TYPE_TWL92230) struct MenelausState { I2CSlave parent_obj; diff --git a/hw/rx/rx-gdbsim.c b/hw/rx/rx-gdbsim.c index ed7f695..417ec05 100644 --- a/hw/rx/rx-gdbsim.c +++ b/hw/rx/rx-gdbsim.c @@ -54,13 +54,9 @@ typedef struct RxGdbSimMachineState RxGdbSimMachineState; #define TYPE_RX_GDBSIM_MACHINE MACHINE_TYPE_NAME("rx62n-common") -#define RX_GDBSIM_MACHINE(obj) \ - OBJECT_CHECK(RxGdbSimMachineState, (obj), TYPE_RX_GDBSIM_MACHINE) +DECLARE_OBJ_CHECKERS(RxGdbSimMachineState, RxGdbSimMachineClass, + RX_GDBSIM_MACHINE, TYPE_RX_GDBSIM_MACHINE) -#define RX_GDBSIM_MACHINE_CLASS(klass) \ - OBJECT_CLASS_CHECK(RxGdbSimMachineClass, (klass), TYPE_RX_GDBSIM_MACHINE) -#define RX_GDBSIM_MACHINE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(RxGdbSimMachineClass, (obj), TYPE_RX_GDBSIM_MACHINE) static void rx_load_image(RXCPU *cpu, const char *filename, uint32_t start, uint32_t size) diff --git a/hw/rx/rx62n.c b/hw/rx/rx62n.c index d2935c5..6eb4eea 100644 --- a/hw/rx/rx62n.c +++ b/hw/rx/rx62n.c @@ -72,10 +72,8 @@ struct RX62NClass { }; typedef struct RX62NClass RX62NClass; -#define RX62N_MCU_CLASS(klass) \ - OBJECT_CLASS_CHECK(RX62NClass, (klass), TYPE_RX62N_MCU) -#define RX62N_MCU_GET_CLASS(obj) \ - OBJECT_GET_CLASS(RX62NClass, (obj), TYPE_RX62N_MCU) +DECLARE_CLASS_CHECKERS(RX62NClass, RX62N_MCU, + TYPE_RX62N_MCU) /* * IRQ -> IPR mapping table diff --git a/hw/s390x/ccw-device.h b/hw/s390x/ccw-device.h index 867547b..cf7d492 100644 --- a/hw/s390x/ccw-device.h +++ b/hw/s390x/ccw-device.h @@ -47,10 +47,7 @@ static inline CcwDevice *to_ccw_dev_fast(DeviceState *d) #define TYPE_CCW_DEVICE "ccw-device" -#define CCW_DEVICE(obj) OBJECT_CHECK(CcwDevice, (obj), TYPE_CCW_DEVICE) -#define CCW_DEVICE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(CCWDeviceClass, (obj), TYPE_CCW_DEVICE) -#define CCW_DEVICE_CLASS(klass) \ - OBJECT_CLASS_CHECK(CCWDeviceClass, (klass), TYPE_CCW_DEVICE) +DECLARE_OBJ_CHECKERS(CcwDevice, CCWDeviceClass, + CCW_DEVICE, TYPE_CCW_DEVICE) #endif diff --git a/hw/s390x/ipl.h b/hw/s390x/ipl.h index 282b22c..9e6061a 100644 --- a/hw/s390x/ipl.h +++ b/hw/s390x/ipl.h @@ -154,7 +154,8 @@ typedef struct QemuIplParameters QemuIplParameters; #define TYPE_S390_IPL "s390-ipl" typedef struct S390IPLState S390IPLState; -#define S390_IPL(obj) OBJECT_CHECK(S390IPLState, (obj), TYPE_S390_IPL) +DECLARE_INSTANCE_CHECKER(S390IPLState, S390_IPL, + TYPE_S390_IPL) struct S390IPLState { /*< private >*/ diff --git a/hw/s390x/s390-pci-bus.h b/hw/s390x/s390-pci-bus.h index 06f046e..0458059 100644 --- a/hw/s390x/s390-pci-bus.h +++ b/hw/s390x/s390-pci-bus.h @@ -38,17 +38,17 @@ #define UID_CHECKING_ENABLED 0x01 typedef struct S390pciState S390pciState; -#define S390_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(S390pciState, (obj), TYPE_S390_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(S390pciState, S390_PCI_HOST_BRIDGE, + TYPE_S390_PCI_HOST_BRIDGE) typedef struct S390PCIBus S390PCIBus; -#define S390_PCI_BUS(obj) \ - OBJECT_CHECK(S390PCIBus, (obj), TYPE_S390_PCI_BUS) +DECLARE_INSTANCE_CHECKER(S390PCIBus, S390_PCI_BUS, + TYPE_S390_PCI_BUS) typedef struct S390PCIBusDevice S390PCIBusDevice; -#define S390_PCI_DEVICE(obj) \ - OBJECT_CHECK(S390PCIBusDevice, (obj), TYPE_S390_PCI_DEVICE) +DECLARE_INSTANCE_CHECKER(S390PCIBusDevice, S390_PCI_DEVICE, + TYPE_S390_PCI_DEVICE) typedef struct S390PCIIOMMU S390PCIIOMMU; -#define S390_PCI_IOMMU(obj) \ - OBJECT_CHECK(S390PCIIOMMU, (obj), TYPE_S390_PCI_IOMMU) +DECLARE_INSTANCE_CHECKER(S390PCIIOMMU, S390_PCI_IOMMU, + TYPE_S390_PCI_IOMMU) #define HP_EVENT_TO_CONFIGURED 0x0301 #define HP_EVENT_RESERVED_TO_STANDBY 0x0302 diff --git a/hw/s390x/virtio-ccw.h b/hw/s390x/virtio-ccw.h index c046c81..cea2596 100644 --- a/hw/s390x/virtio-ccw.h +++ b/hw/s390x/virtio-ccw.h @@ -56,23 +56,15 @@ #define TYPE_VIRTIO_CCW_DEVICE "virtio-ccw-device" typedef struct VirtIOCCWDeviceClass VirtIOCCWDeviceClass; typedef struct VirtioCcwDevice VirtioCcwDevice; -#define VIRTIO_CCW_DEVICE(obj) \ - OBJECT_CHECK(VirtioCcwDevice, (obj), TYPE_VIRTIO_CCW_DEVICE) -#define VIRTIO_CCW_DEVICE_CLASS(klass) \ - OBJECT_CLASS_CHECK(VirtIOCCWDeviceClass, (klass), TYPE_VIRTIO_CCW_DEVICE) -#define VIRTIO_CCW_DEVICE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(VirtIOCCWDeviceClass, (obj), TYPE_VIRTIO_CCW_DEVICE) +DECLARE_OBJ_CHECKERS(VirtioCcwDevice, VirtIOCCWDeviceClass, + VIRTIO_CCW_DEVICE, TYPE_VIRTIO_CCW_DEVICE) typedef struct VirtioBusState VirtioCcwBusState; typedef struct VirtioBusClass VirtioCcwBusClass; #define TYPE_VIRTIO_CCW_BUS "virtio-ccw-bus" -#define VIRTIO_CCW_BUS(obj) \ - OBJECT_CHECK(VirtioCcwBusState, (obj), TYPE_VIRTIO_CCW_BUS) -#define VIRTIO_CCW_BUS_GET_CLASS(obj) \ - OBJECT_GET_CLASS(VirtioCcwBusClass, (obj), TYPE_VIRTIO_CCW_BUS) -#define VIRTIO_CCW_BUS_CLASS(klass) \ - OBJECT_CLASS_CHECK(VirtioCcwBusClass, klass, TYPE_VIRTIO_CCW_BUS) +DECLARE_OBJ_CHECKERS(VirtioCcwBusState, VirtioCcwBusClass, + VIRTIO_CCW_BUS, TYPE_VIRTIO_CCW_BUS) struct VirtIOCCWDeviceClass { @@ -114,8 +106,8 @@ static inline int virtio_ccw_rev_max(VirtioCcwDevice *dev) #define TYPE_VIRTIO_SCSI_CCW "virtio-scsi-ccw" typedef struct VirtIOSCSICcw VirtIOSCSICcw; -#define VIRTIO_SCSI_CCW(obj) \ - OBJECT_CHECK(VirtIOSCSICcw, (obj), TYPE_VIRTIO_SCSI_CCW) +DECLARE_INSTANCE_CHECKER(VirtIOSCSICcw, VIRTIO_SCSI_CCW, + TYPE_VIRTIO_SCSI_CCW) struct VirtIOSCSICcw { VirtioCcwDevice parent_obj; @@ -127,8 +119,8 @@ struct VirtIOSCSICcw { #define TYPE_VHOST_SCSI_CCW "vhost-scsi-ccw" typedef struct VHostSCSICcw VHostSCSICcw; -#define VHOST_SCSI_CCW(obj) \ - OBJECT_CHECK(VHostSCSICcw, (obj), TYPE_VHOST_SCSI_CCW) +DECLARE_INSTANCE_CHECKER(VHostSCSICcw, VHOST_SCSI_CCW, + TYPE_VHOST_SCSI_CCW) struct VHostSCSICcw { VirtioCcwDevice parent_obj; @@ -140,8 +132,8 @@ struct VHostSCSICcw { #define TYPE_VIRTIO_BLK_CCW "virtio-blk-ccw" typedef struct VirtIOBlkCcw VirtIOBlkCcw; -#define VIRTIO_BLK_CCW(obj) \ - OBJECT_CHECK(VirtIOBlkCcw, (obj), TYPE_VIRTIO_BLK_CCW) +DECLARE_INSTANCE_CHECKER(VirtIOBlkCcw, VIRTIO_BLK_CCW, + TYPE_VIRTIO_BLK_CCW) struct VirtIOBlkCcw { VirtioCcwDevice parent_obj; @@ -152,8 +144,8 @@ struct VirtIOBlkCcw { #define TYPE_VIRTIO_BALLOON_CCW "virtio-balloon-ccw" typedef struct VirtIOBalloonCcw VirtIOBalloonCcw; -#define VIRTIO_BALLOON_CCW(obj) \ - OBJECT_CHECK(VirtIOBalloonCcw, (obj), TYPE_VIRTIO_BALLOON_CCW) +DECLARE_INSTANCE_CHECKER(VirtIOBalloonCcw, VIRTIO_BALLOON_CCW, + TYPE_VIRTIO_BALLOON_CCW) struct VirtIOBalloonCcw { VirtioCcwDevice parent_obj; @@ -164,8 +156,8 @@ struct VirtIOBalloonCcw { #define TYPE_VIRTIO_SERIAL_CCW "virtio-serial-ccw" typedef struct VirtioSerialCcw VirtioSerialCcw; -#define VIRTIO_SERIAL_CCW(obj) \ - OBJECT_CHECK(VirtioSerialCcw, (obj), TYPE_VIRTIO_SERIAL_CCW) +DECLARE_INSTANCE_CHECKER(VirtioSerialCcw, VIRTIO_SERIAL_CCW, + TYPE_VIRTIO_SERIAL_CCW) struct VirtioSerialCcw { VirtioCcwDevice parent_obj; @@ -176,8 +168,8 @@ struct VirtioSerialCcw { #define TYPE_VIRTIO_NET_CCW "virtio-net-ccw" typedef struct VirtIONetCcw VirtIONetCcw; -#define VIRTIO_NET_CCW(obj) \ - OBJECT_CHECK(VirtIONetCcw, (obj), TYPE_VIRTIO_NET_CCW) +DECLARE_INSTANCE_CHECKER(VirtIONetCcw, VIRTIO_NET_CCW, + TYPE_VIRTIO_NET_CCW) struct VirtIONetCcw { VirtioCcwDevice parent_obj; @@ -188,8 +180,8 @@ struct VirtIONetCcw { #define TYPE_VIRTIO_RNG_CCW "virtio-rng-ccw" typedef struct VirtIORNGCcw VirtIORNGCcw; -#define VIRTIO_RNG_CCW(obj) \ - OBJECT_CHECK(VirtIORNGCcw, (obj), TYPE_VIRTIO_RNG_CCW) +DECLARE_INSTANCE_CHECKER(VirtIORNGCcw, VIRTIO_RNG_CCW, + TYPE_VIRTIO_RNG_CCW) struct VirtIORNGCcw { VirtioCcwDevice parent_obj; @@ -200,8 +192,8 @@ struct VirtIORNGCcw { #define TYPE_VIRTIO_CRYPTO_CCW "virtio-crypto-ccw" typedef struct VirtIOCryptoCcw VirtIOCryptoCcw; -#define VIRTIO_CRYPTO_CCW(obj) \ - OBJECT_CHECK(VirtIOCryptoCcw, (obj), TYPE_VIRTIO_CRYPTO_CCW) +DECLARE_INSTANCE_CHECKER(VirtIOCryptoCcw, VIRTIO_CRYPTO_CCW, + TYPE_VIRTIO_CRYPTO_CCW) struct VirtIOCryptoCcw { VirtioCcwDevice parent_obj; @@ -215,8 +207,8 @@ VirtIODevice *virtio_ccw_get_vdev(SubchDev *sch); #define TYPE_VIRTIO_9P_CCW "virtio-9p-ccw" typedef struct V9fsCCWState V9fsCCWState; -#define VIRTIO_9P_CCW(obj) \ - OBJECT_CHECK(V9fsCCWState, (obj), TYPE_VIRTIO_9P_CCW) +DECLARE_INSTANCE_CHECKER(V9fsCCWState, VIRTIO_9P_CCW, + TYPE_VIRTIO_9P_CCW) struct V9fsCCWState { VirtioCcwDevice parent_obj; @@ -228,8 +220,8 @@ struct V9fsCCWState { #ifdef CONFIG_VHOST_VSOCK #define TYPE_VHOST_VSOCK_CCW "vhost-vsock-ccw" typedef struct VHostVSockCCWState VHostVSockCCWState; -#define VHOST_VSOCK_CCW(obj) \ - OBJECT_CHECK(VHostVSockCCWState, (obj), TYPE_VHOST_VSOCK_CCW) +DECLARE_INSTANCE_CHECKER(VHostVSockCCWState, VHOST_VSOCK_CCW, + TYPE_VHOST_VSOCK_CCW) struct VHostVSockCCWState { VirtioCcwDevice parent_obj; @@ -240,8 +232,8 @@ struct VHostVSockCCWState { #define TYPE_VIRTIO_GPU_CCW "virtio-gpu-ccw" typedef struct VirtIOGPUCcw VirtIOGPUCcw; -#define VIRTIO_GPU_CCW(obj) \ - OBJECT_CHECK(VirtIOGPUCcw, (obj), TYPE_VIRTIO_GPU_CCW) +DECLARE_INSTANCE_CHECKER(VirtIOGPUCcw, VIRTIO_GPU_CCW, + TYPE_VIRTIO_GPU_CCW) struct VirtIOGPUCcw { VirtioCcwDevice parent_obj; @@ -250,8 +242,8 @@ struct VirtIOGPUCcw { #define TYPE_VIRTIO_INPUT_CCW "virtio-input-ccw" typedef struct VirtIOInputCcw VirtIOInputCcw; -#define VIRTIO_INPUT_CCW(obj) \ - OBJECT_CHECK(VirtIOInputCcw, (obj), TYPE_VIRTIO_INPUT_CCW) +DECLARE_INSTANCE_CHECKER(VirtIOInputCcw, VIRTIO_INPUT_CCW, + TYPE_VIRTIO_INPUT_CCW) struct VirtIOInputCcw { VirtioCcwDevice parent_obj; @@ -263,8 +255,8 @@ struct VirtIOInputCcw { #define TYPE_VIRTIO_MOUSE_CCW "virtio-mouse-ccw" #define TYPE_VIRTIO_TABLET_CCW "virtio-tablet-ccw" typedef struct VirtIOInputHIDCcw VirtIOInputHIDCcw; -#define VIRTIO_INPUT_HID_CCW(obj) \ - OBJECT_CHECK(VirtIOInputHIDCcw, (obj), TYPE_VIRTIO_INPUT_HID_CCW) +DECLARE_INSTANCE_CHECKER(VirtIOInputHIDCcw, VIRTIO_INPUT_HID_CCW, + TYPE_VIRTIO_INPUT_HID_CCW) struct VirtIOInputHIDCcw { VirtioCcwDevice parent_obj; diff --git a/hw/scsi/esp-pci.c b/hw/scsi/esp-pci.c index 544f5f1..2ce96dc 100644 --- a/hw/scsi/esp-pci.c +++ b/hw/scsi/esp-pci.c @@ -38,8 +38,8 @@ #define TYPE_AM53C974_DEVICE "am53c974" typedef struct PCIESPState PCIESPState; -#define PCI_ESP(obj) \ - OBJECT_CHECK(PCIESPState, (obj), TYPE_AM53C974_DEVICE) +DECLARE_INSTANCE_CHECKER(PCIESPState, PCI_ESP, + TYPE_AM53C974_DEVICE) #define DMA_CMD 0x0 #define DMA_STC 0x1 @@ -417,8 +417,8 @@ struct DC390State { typedef struct DC390State DC390State; #define TYPE_DC390_DEVICE "dc390" -#define DC390(obj) \ - OBJECT_CHECK(DC390State, obj, TYPE_DC390_DEVICE) +DECLARE_INSTANCE_CHECKER(DC390State, DC390, + TYPE_DC390_DEVICE) #define EE_ADAPT_SCSI_ID 64 #define EE_MODE2 65 diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index 0e40587..e8354a4 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -310,8 +310,8 @@ typedef struct LSIState LSIState; #define TYPE_LSI53C810 "lsi53c810" #define TYPE_LSI53C895A "lsi53c895a" -#define LSI53C895A(obj) \ - OBJECT_CHECK(LSIState, (obj), TYPE_LSI53C895A) +DECLARE_INSTANCE_CHECKER(LSIState, LSI53C895A, + TYPE_LSI53C895A) static const char *scsi_phases[] = { "DOUT", diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c index aab0b36..e90c008 100644 --- a/hw/scsi/megasas.c +++ b/hw/scsi/megasas.c @@ -134,13 +134,9 @@ typedef struct MegasasBaseClass MegasasBaseClass; #define TYPE_MEGASAS_GEN1 "megasas" #define TYPE_MEGASAS_GEN2 "megasas-gen2" -#define MEGASAS(obj) \ - OBJECT_CHECK(MegasasState, (obj), TYPE_MEGASAS_BASE) +DECLARE_OBJ_CHECKERS(MegasasState, MegasasBaseClass, + MEGASAS, TYPE_MEGASAS_BASE) -#define MEGASAS_CLASS(oc) \ - OBJECT_CLASS_CHECK(MegasasBaseClass, (oc), TYPE_MEGASAS_BASE) -#define MEGASAS_GET_CLASS(oc) \ - OBJECT_GET_CLASS(MegasasBaseClass, (oc), TYPE_MEGASAS_BASE) #define MEGASAS_INTR_DISABLED_MASK 0xFFFFFFFF diff --git a/hw/scsi/mptsas.h b/hw/scsi/mptsas.h index 2e76bda..b85ac1a 100644 --- a/hw/scsi/mptsas.h +++ b/hw/scsi/mptsas.h @@ -16,8 +16,8 @@ typedef struct MPTSASRequest MPTSASRequest; #define TYPE_MPTSAS1068 "mptsas1068" typedef struct MPTSASState MPTSASState; -#define MPT_SAS(obj) \ - OBJECT_CHECK(MPTSASState, (obj), TYPE_MPTSAS1068) +DECLARE_INSTANCE_CHECKER(MPTSASState, MPT_SAS, + TYPE_MPTSAS1068) enum { DOORBELL_NONE, diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c index ea66422..1f0388a 100644 --- a/hw/scsi/scsi-disk.c +++ b/hw/scsi/scsi-disk.c @@ -57,12 +57,8 @@ typedef struct SCSIDiskClass SCSIDiskClass; typedef struct SCSIDiskState SCSIDiskState; -#define SCSI_DISK_BASE(obj) \ - OBJECT_CHECK(SCSIDiskState, (obj), TYPE_SCSI_DISK_BASE) -#define SCSI_DISK_BASE_CLASS(klass) \ - OBJECT_CLASS_CHECK(SCSIDiskClass, (klass), TYPE_SCSI_DISK_BASE) -#define SCSI_DISK_BASE_GET_CLASS(obj) \ - OBJECT_GET_CLASS(SCSIDiskClass, (obj), TYPE_SCSI_DISK_BASE) +DECLARE_OBJ_CHECKERS(SCSIDiskState, SCSIDiskClass, + SCSI_DISK_BASE, TYPE_SCSI_DISK_BASE) struct SCSIDiskClass { SCSIDeviceClass parent_class; diff --git a/hw/scsi/spapr_vscsi.c b/hw/scsi/spapr_vscsi.c index 3c64f45..c3e6d1e 100644 --- a/hw/scsi/spapr_vscsi.c +++ b/hw/scsi/spapr_vscsi.c @@ -92,8 +92,8 @@ typedef struct vscsi_req { #define TYPE_VIO_SPAPR_VSCSI_DEVICE "spapr-vscsi" typedef struct VSCSIState VSCSIState; -#define VIO_SPAPR_VSCSI_DEVICE(obj) \ - OBJECT_CHECK(VSCSIState, (obj), TYPE_VIO_SPAPR_VSCSI_DEVICE) +DECLARE_INSTANCE_CHECKER(VSCSIState, VIO_SPAPR_VSCSI_DEVICE, + TYPE_VIO_SPAPR_VSCSI_DEVICE) struct VSCSIState { SpaprVioDevice vdev; diff --git a/hw/scsi/vmw_pvscsi.c b/hw/scsi/vmw_pvscsi.c index aa0d57b..40095be 100644 --- a/hw/scsi/vmw_pvscsi.c +++ b/hw/scsi/vmw_pvscsi.c @@ -65,12 +65,9 @@ typedef struct PVSCSIClass PVSCSIClass; #define TYPE_PVSCSI "pvscsi" typedef struct PVSCSIState PVSCSIState; -#define PVSCSI(obj) OBJECT_CHECK(PVSCSIState, (obj), TYPE_PVSCSI) +DECLARE_OBJ_CHECKERS(PVSCSIState, PVSCSIClass, + PVSCSI, TYPE_PVSCSI) -#define PVSCSI_CLASS(klass) \ - OBJECT_CLASS_CHECK(PVSCSIClass, (klass), TYPE_PVSCSI) -#define PVSCSI_GET_CLASS(obj) \ - OBJECT_GET_CLASS(PVSCSIClass, (obj), TYPE_PVSCSI) /* Compatibility flags for migration */ #define PVSCSI_COMPAT_OLD_PCI_CONFIGURATION_BIT 0 diff --git a/hw/sd/milkymist-memcard.c b/hw/sd/milkymist-memcard.c index 0da5b84..4d3ec28 100644 --- a/hw/sd/milkymist-memcard.c +++ b/hw/sd/milkymist-memcard.c @@ -65,8 +65,8 @@ enum { #define TYPE_MILKYMIST_MEMCARD "milkymist-memcard" typedef struct MilkymistMemcardState MilkymistMemcardState; -#define MILKYMIST_MEMCARD(obj) \ - OBJECT_CHECK(MilkymistMemcardState, (obj), TYPE_MILKYMIST_MEMCARD) +DECLARE_INSTANCE_CHECKER(MilkymistMemcardState, MILKYMIST_MEMCARD, + TYPE_MILKYMIST_MEMCARD) #define TYPE_MILKYMIST_SDBUS "milkymist-sdbus" diff --git a/hw/sd/pl181.c b/hw/sd/pl181.c index cb2ef0f..7829e93 100644 --- a/hw/sd/pl181.c +++ b/hw/sd/pl181.c @@ -24,7 +24,8 @@ #define TYPE_PL181 "pl181" typedef struct PL181State PL181State; -#define PL181(obj) OBJECT_CHECK(PL181State, (obj), TYPE_PL181) +DECLARE_INSTANCE_CHECKER(PL181State, PL181, + TYPE_PL181) #define TYPE_PL181_BUS "pl181-bus" diff --git a/hw/sd/ssi-sd.c b/hw/sd/ssi-sd.c index 517c17a..dd07258 100644 --- a/hw/sd/ssi-sd.c +++ b/hw/sd/ssi-sd.c @@ -55,7 +55,8 @@ struct ssi_sd_state { typedef struct ssi_sd_state ssi_sd_state; #define TYPE_SSI_SD "ssi-sd" -#define SSI_SD(obj) OBJECT_CHECK(ssi_sd_state, (obj), TYPE_SSI_SD) +DECLARE_INSTANCE_CHECKER(ssi_sd_state, SSI_SD, + TYPE_SSI_SD) /* State word bits. */ #define SSI_SDR_LOCKED 0x0001 diff --git a/hw/sh4/sh_pci.c b/hw/sh4/sh_pci.c index 378d44b..dc73845 100644 --- a/hw/sh4/sh_pci.c +++ b/hw/sh4/sh_pci.c @@ -36,8 +36,8 @@ #define TYPE_SH_PCI_HOST_BRIDGE "sh_pci" typedef struct SHPCIState SHPCIState; -#define SH_PCI_HOST_BRIDGE(obj) \ - OBJECT_CHECK(SHPCIState, (obj), TYPE_SH_PCI_HOST_BRIDGE) +DECLARE_INSTANCE_CHECKER(SHPCIState, SH_PCI_HOST_BRIDGE, + TYPE_SH_PCI_HOST_BRIDGE) struct SHPCIState { PCIHostState parent_obj; diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c index 1bc3ede..256033b 100644 --- a/hw/sparc/sun4m.c +++ b/hw/sparc/sun4m.c @@ -583,8 +583,8 @@ static void idreg_init(hwaddr addr) } typedef struct IDRegState IDRegState; -#define MACIO_ID_REGISTER(obj) \ - OBJECT_CHECK(IDRegState, (obj), TYPE_MACIO_ID_REGISTER) +DECLARE_INSTANCE_CHECKER(IDRegState, MACIO_ID_REGISTER, + TYPE_MACIO_ID_REGISTER) struct IDRegState { SysBusDevice parent_obj; @@ -626,7 +626,8 @@ static const TypeInfo idreg_info = { #define TYPE_TCX_AFX "tcx_afx" typedef struct AFXState AFXState; -#define TCX_AFX(obj) OBJECT_CHECK(AFXState, (obj), TYPE_TCX_AFX) +DECLARE_INSTANCE_CHECKER(AFXState, TCX_AFX, + TYPE_TCX_AFX) struct AFXState { SysBusDevice parent_obj; @@ -680,7 +681,8 @@ static const TypeInfo afx_info = { #define TYPE_OPENPROM "openprom" typedef struct PROMState PROMState; -#define OPENPROM(obj) OBJECT_CHECK(PROMState, (obj), TYPE_OPENPROM) +DECLARE_INSTANCE_CHECKER(PROMState, OPENPROM, + TYPE_OPENPROM) struct PROMState { SysBusDevice parent_obj; @@ -769,7 +771,8 @@ static const TypeInfo prom_info = { #define TYPE_SUN4M_MEMORY "memory" typedef struct RamDevice RamDevice; -#define SUN4M_RAM(obj) OBJECT_CHECK(RamDevice, (obj), TYPE_SUN4M_MEMORY) +DECLARE_INSTANCE_CHECKER(RamDevice, SUN4M_RAM, + TYPE_SUN4M_MEMORY) struct RamDevice { SysBusDevice parent_obj; diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c index 7aab59d..6798541 100644 --- a/hw/sparc64/sun4u.c +++ b/hw/sparc64/sun4u.c @@ -93,7 +93,8 @@ struct EbusState { typedef struct EbusState EbusState; #define TYPE_EBUS "ebus" -#define EBUS(obj) OBJECT_CHECK(EbusState, (obj), TYPE_EBUS) +DECLARE_INSTANCE_CHECKER(EbusState, EBUS, + TYPE_EBUS) const char *fw_cfg_arch_key_name(uint16_t key) { @@ -229,7 +230,8 @@ typedef struct ResetData { #define TYPE_SUN4U_POWER "power" typedef struct PowerDevice PowerDevice; -#define SUN4U_POWER(obj) OBJECT_CHECK(PowerDevice, (obj), TYPE_SUN4U_POWER) +DECLARE_INSTANCE_CHECKER(PowerDevice, SUN4U_POWER, + TYPE_SUN4U_POWER) struct PowerDevice { SysBusDevice parent_obj; @@ -403,7 +405,8 @@ static const TypeInfo ebus_info = { #define TYPE_OPENPROM "openprom" typedef struct PROMState PROMState; -#define OPENPROM(obj) OBJECT_CHECK(PROMState, (obj), TYPE_OPENPROM) +DECLARE_INSTANCE_CHECKER(PROMState, OPENPROM, + TYPE_OPENPROM) struct PROMState { SysBusDevice parent_obj; @@ -492,7 +495,8 @@ static const TypeInfo prom_info = { #define TYPE_SUN4U_MEMORY "memory" typedef struct RamDevice RamDevice; -#define SUN4U_RAM(obj) OBJECT_CHECK(RamDevice, (obj), TYPE_SUN4U_MEMORY) +DECLARE_INSTANCE_CHECKER(RamDevice, SUN4U_RAM, + TYPE_SUN4U_MEMORY) struct RamDevice { SysBusDevice parent_obj; diff --git a/hw/ssi/ssi.c b/hw/ssi/ssi.c index 5366a80..faf7633 100644 --- a/hw/ssi/ssi.c +++ b/hw/ssi/ssi.c @@ -24,7 +24,8 @@ struct SSIBus { }; #define TYPE_SSI_BUS "SSI" -#define SSI_BUS(obj) OBJECT_CHECK(SSIBus, (obj), TYPE_SSI_BUS) +DECLARE_INSTANCE_CHECKER(SSIBus, SSI_BUS, + TYPE_SSI_BUS) static const TypeInfo ssi_bus_info = { .name = TYPE_SSI_BUS, diff --git a/hw/ssi/xilinx_spi.c b/hw/ssi/xilinx_spi.c index 8ed83be..34fc8da 100644 --- a/hw/ssi/xilinx_spi.c +++ b/hw/ssi/xilinx_spi.c @@ -80,7 +80,8 @@ #define TYPE_XILINX_SPI "xlnx.xps-spi" typedef struct XilinxSPI XilinxSPI; -#define XILINX_SPI(obj) OBJECT_CHECK(XilinxSPI, (obj), TYPE_XILINX_SPI) +DECLARE_INSTANCE_CHECKER(XilinxSPI, XILINX_SPI, + TYPE_XILINX_SPI) struct XilinxSPI { SysBusDevice parent_obj; diff --git a/hw/timer/altera_timer.c b/hw/timer/altera_timer.c index 93bd5b9..c694c98 100644 --- a/hw/timer/altera_timer.c +++ b/hw/timer/altera_timer.c @@ -46,8 +46,8 @@ #define TYPE_ALTERA_TIMER "ALTR.timer" typedef struct AlteraTimer AlteraTimer; -#define ALTERA_TIMER(obj) \ - OBJECT_CHECK(AlteraTimer, (obj), TYPE_ALTERA_TIMER) +DECLARE_INSTANCE_CHECKER(AlteraTimer, ALTERA_TIMER, + TYPE_ALTERA_TIMER) struct AlteraTimer { SysBusDevice busdev; diff --git a/hw/timer/arm_timer.c b/hw/timer/arm_timer.c index d728a80..79117f4 100644 --- a/hw/timer/arm_timer.c +++ b/hw/timer/arm_timer.c @@ -192,7 +192,8 @@ static arm_timer_state *arm_timer_init(uint32_t freq) #define TYPE_SP804 "sp804" typedef struct SP804State SP804State; -#define SP804(obj) OBJECT_CHECK(SP804State, (obj), TYPE_SP804) +DECLARE_INSTANCE_CHECKER(SP804State, SP804, + TYPE_SP804) struct SP804State { SysBusDevice parent_obj; @@ -313,8 +314,8 @@ static void sp804_realize(DeviceState *dev, Error **errp) #define TYPE_INTEGRATOR_PIT "integrator_pit" typedef struct icp_pit_state icp_pit_state; -#define INTEGRATOR_PIT(obj) \ - OBJECT_CHECK(icp_pit_state, (obj), TYPE_INTEGRATOR_PIT) +DECLARE_INSTANCE_CHECKER(icp_pit_state, INTEGRATOR_PIT, + TYPE_INTEGRATOR_PIT) struct icp_pit_state { SysBusDevice parent_obj; diff --git a/hw/timer/cadence_ttc.c b/hw/timer/cadence_ttc.c index 24de679..52e6375 100644 --- a/hw/timer/cadence_ttc.c +++ b/hw/timer/cadence_ttc.c @@ -71,8 +71,8 @@ typedef struct { #define TYPE_CADENCE_TTC "cadence_ttc" typedef struct CadenceTTCState CadenceTTCState; -#define CADENCE_TTC(obj) \ - OBJECT_CHECK(CadenceTTCState, (obj), TYPE_CADENCE_TTC) +DECLARE_INSTANCE_CHECKER(CadenceTTCState, CADENCE_TTC, + TYPE_CADENCE_TTC) struct CadenceTTCState { SysBusDevice parent_obj; diff --git a/hw/timer/etraxfs_timer.c b/hw/timer/etraxfs_timer.c index 92b8999..48f2e3a 100644 --- a/hw/timer/etraxfs_timer.c +++ b/hw/timer/etraxfs_timer.c @@ -50,8 +50,8 @@ #define TYPE_ETRAX_FS_TIMER "etraxfs,timer" typedef struct ETRAXTimerState ETRAXTimerState; -#define ETRAX_TIMER(obj) \ - OBJECT_CHECK(ETRAXTimerState, (obj), TYPE_ETRAX_FS_TIMER) +DECLARE_INSTANCE_CHECKER(ETRAXTimerState, ETRAX_TIMER, + TYPE_ETRAX_FS_TIMER) struct ETRAXTimerState { SysBusDevice parent_obj; diff --git a/hw/timer/exynos4210_mct.c b/hw/timer/exynos4210_mct.c index aa8753d..0329cae 100644 --- a/hw/timer/exynos4210_mct.c +++ b/hw/timer/exynos4210_mct.c @@ -244,8 +244,8 @@ typedef struct { #define TYPE_EXYNOS4210_MCT "exynos4210.mct" typedef struct Exynos4210MCTState Exynos4210MCTState; -#define EXYNOS4210_MCT(obj) \ - OBJECT_CHECK(Exynos4210MCTState, (obj), TYPE_EXYNOS4210_MCT) +DECLARE_INSTANCE_CHECKER(Exynos4210MCTState, EXYNOS4210_MCT, + TYPE_EXYNOS4210_MCT) struct Exynos4210MCTState { SysBusDevice parent_obj; diff --git a/hw/timer/exynos4210_pwm.c b/hw/timer/exynos4210_pwm.c index 3422402..5340fc0 100644 --- a/hw/timer/exynos4210_pwm.c +++ b/hw/timer/exynos4210_pwm.c @@ -104,8 +104,8 @@ typedef struct { #define TYPE_EXYNOS4210_PWM "exynos4210.pwm" typedef struct Exynos4210PWMState Exynos4210PWMState; -#define EXYNOS4210_PWM(obj) \ - OBJECT_CHECK(Exynos4210PWMState, (obj), TYPE_EXYNOS4210_PWM) +DECLARE_INSTANCE_CHECKER(Exynos4210PWMState, EXYNOS4210_PWM, + TYPE_EXYNOS4210_PWM) struct Exynos4210PWMState { SysBusDevice parent_obj; diff --git a/hw/timer/grlib_gptimer.c b/hw/timer/grlib_gptimer.c index 91d4283..e539fc2 100644 --- a/hw/timer/grlib_gptimer.c +++ b/hw/timer/grlib_gptimer.c @@ -57,8 +57,8 @@ #define TIMER_BASE 0x10 typedef struct GPTimerUnit GPTimerUnit; -#define GRLIB_GPTIMER(obj) \ - OBJECT_CHECK(GPTimerUnit, (obj), TYPE_GRLIB_GPTIMER) +DECLARE_INSTANCE_CHECKER(GPTimerUnit, GRLIB_GPTIMER, + TYPE_GRLIB_GPTIMER) typedef struct GPTimer GPTimer; diff --git a/hw/timer/hpet.c b/hw/timer/hpet.c index 07b3c0f..44bbe3a 100644 --- a/hw/timer/hpet.c +++ b/hw/timer/hpet.c @@ -49,7 +49,8 @@ #define HPET_MSI_SUPPORT 0 typedef struct HPETState HPETState; -#define HPET(obj) OBJECT_CHECK(HPETState, (obj), TYPE_HPET) +DECLARE_INSTANCE_CHECKER(HPETState, HPET, + TYPE_HPET) struct HPETState; typedef struct HPETTimer { /* timers */ diff --git a/hw/timer/i8254.c b/hw/timer/i8254.c index 54639d1..c01ee2c 100644 --- a/hw/timer/i8254.c +++ b/hw/timer/i8254.c @@ -38,8 +38,8 @@ #define RW_STATE_WORD1 4 typedef struct PITClass PITClass; -#define PIT_CLASS(class) OBJECT_CLASS_CHECK(PITClass, (class), TYPE_I8254) -#define PIT_GET_CLASS(obj) OBJECT_GET_CLASS(PITClass, (obj), TYPE_I8254) +DECLARE_CLASS_CHECKERS(PITClass, PIT, + TYPE_I8254) struct PITClass { PITCommonClass parent_class; diff --git a/hw/timer/lm32_timer.c b/hw/timer/lm32_timer.c index 807ceb5..93ecb51 100644 --- a/hw/timer/lm32_timer.c +++ b/hw/timer/lm32_timer.c @@ -57,7 +57,8 @@ enum { #define TYPE_LM32_TIMER "lm32-timer" typedef struct LM32TimerState LM32TimerState; -#define LM32_TIMER(obj) OBJECT_CHECK(LM32TimerState, (obj), TYPE_LM32_TIMER) +DECLARE_INSTANCE_CHECKER(LM32TimerState, LM32_TIMER, + TYPE_LM32_TIMER) struct LM32TimerState { SysBusDevice parent_obj; diff --git a/hw/timer/milkymist-sysctl.c b/hw/timer/milkymist-sysctl.c index 3667a09..29500e0 100644 --- a/hw/timer/milkymist-sysctl.c +++ b/hw/timer/milkymist-sysctl.c @@ -64,8 +64,8 @@ enum { #define TYPE_MILKYMIST_SYSCTL "milkymist-sysctl" typedef struct MilkymistSysctlState MilkymistSysctlState; -#define MILKYMIST_SYSCTL(obj) \ - OBJECT_CHECK(MilkymistSysctlState, (obj), TYPE_MILKYMIST_SYSCTL) +DECLARE_INSTANCE_CHECKER(MilkymistSysctlState, MILKYMIST_SYSCTL, + TYPE_MILKYMIST_SYSCTL) struct MilkymistSysctlState { SysBusDevice parent_obj; diff --git a/hw/timer/puv3_ost.c b/hw/timer/puv3_ost.c index 8d61c67..3a35ac2 100644 --- a/hw/timer/puv3_ost.c +++ b/hw/timer/puv3_ost.c @@ -22,7 +22,8 @@ #define TYPE_PUV3_OST "puv3_ost" typedef struct PUV3OSTState PUV3OSTState; -#define PUV3_OST(obj) OBJECT_CHECK(PUV3OSTState, (obj), TYPE_PUV3_OST) +DECLARE_INSTANCE_CHECKER(PUV3OSTState, PUV3_OST, + TYPE_PUV3_OST) /* puv3 ostimer implementation. */ struct PUV3OSTState { diff --git a/hw/timer/pxa2xx_timer.c b/hw/timer/pxa2xx_timer.c index c73cc72..8c3a1f5 100644 --- a/hw/timer/pxa2xx_timer.c +++ b/hw/timer/pxa2xx_timer.c @@ -68,8 +68,8 @@ static int pxa2xx_timer4_freq[8] = { #define TYPE_PXA2XX_TIMER "pxa2xx-timer" typedef struct PXA2xxTimerInfo PXA2xxTimerInfo; -#define PXA2XX_TIMER(obj) \ - OBJECT_CHECK(PXA2xxTimerInfo, (obj), TYPE_PXA2XX_TIMER) +DECLARE_INSTANCE_CHECKER(PXA2xxTimerInfo, PXA2XX_TIMER, + TYPE_PXA2XX_TIMER) typedef struct { diff --git a/hw/timer/slavio_timer.c b/hw/timer/slavio_timer.c index 28d6123..08d6888 100644 --- a/hw/timer/slavio_timer.c +++ b/hw/timer/slavio_timer.c @@ -61,8 +61,8 @@ typedef struct CPUTimerState { #define TYPE_SLAVIO_TIMER "slavio_timer" typedef struct SLAVIO_TIMERState SLAVIO_TIMERState; -#define SLAVIO_TIMER(obj) \ - OBJECT_CHECK(SLAVIO_TIMERState, (obj), TYPE_SLAVIO_TIMER) +DECLARE_INSTANCE_CHECKER(SLAVIO_TIMERState, SLAVIO_TIMER, + TYPE_SLAVIO_TIMER) struct SLAVIO_TIMERState { SysBusDevice parent_obj; diff --git a/hw/timer/xilinx_timer.c b/hw/timer/xilinx_timer.c index c262f6d..1eb927e 100644 --- a/hw/timer/xilinx_timer.c +++ b/hw/timer/xilinx_timer.c @@ -62,8 +62,8 @@ struct xlx_timer }; #define TYPE_XILINX_TIMER "xlnx.xps-timer" -#define XILINX_TIMER(obj) \ - OBJECT_CHECK(struct timerblock, (obj), TYPE_XILINX_TIMER) +DECLARE_INSTANCE_CHECKER(struct timerblock, XILINX_TIMER, + TYPE_XILINX_TIMER) struct timerblock { diff --git a/hw/tpm/tpm_crb.c b/hw/tpm/tpm_crb.c index 53e89b4..aa9c00a 100644 --- a/hw/tpm/tpm_crb.c +++ b/hw/tpm/tpm_crb.c @@ -47,7 +47,8 @@ struct CRBState { }; typedef struct CRBState CRBState; -#define CRB(obj) OBJECT_CHECK(CRBState, (obj), TYPE_TPM_CRB) +DECLARE_INSTANCE_CHECKER(CRBState, CRB, + TYPE_TPM_CRB) #define CRB_INTF_TYPE_CRB_ACTIVE 0b1 #define CRB_INTF_VERSION_CRB 0b1 diff --git a/hw/tpm/tpm_spapr.c b/hw/tpm/tpm_spapr.c index 08db85b..e3775ad 100644 --- a/hw/tpm/tpm_spapr.c +++ b/hw/tpm/tpm_spapr.c @@ -31,8 +31,8 @@ #define DEBUG_SPAPR 0 typedef struct SpaprTpmState SpaprTpmState; -#define VIO_SPAPR_VTPM(obj) \ - OBJECT_CHECK(SpaprTpmState, (obj), TYPE_TPM_SPAPR) +DECLARE_INSTANCE_CHECKER(SpaprTpmState, VIO_SPAPR_VTPM, + TYPE_TPM_SPAPR) typedef struct TpmCrq { uint8_t valid; /* 0x80: cmd; 0xc0: init crq */ diff --git a/hw/tpm/tpm_tis_isa.c b/hw/tpm/tpm_tis_isa.c index 9a0ab24..fafdcff 100644 --- a/hw/tpm/tpm_tis_isa.c +++ b/hw/tpm/tpm_tis_isa.c @@ -40,7 +40,8 @@ struct TPMStateISA { }; typedef struct TPMStateISA TPMStateISA; -#define TPM_TIS_ISA(obj) OBJECT_CHECK(TPMStateISA, (obj), TYPE_TPM_TIS_ISA) +DECLARE_INSTANCE_CHECKER(TPMStateISA, TPM_TIS_ISA, + TYPE_TPM_TIS_ISA) static int tpm_tis_pre_save_isa(void *opaque) { diff --git a/hw/tpm/tpm_tis_sysbus.c b/hw/tpm/tpm_tis_sysbus.c index 46a9218..20b28ee 100644 --- a/hw/tpm/tpm_tis_sysbus.c +++ b/hw/tpm/tpm_tis_sysbus.c @@ -40,7 +40,8 @@ struct TPMStateSysBus { }; typedef struct TPMStateSysBus TPMStateSysBus; -#define TPM_TIS_SYSBUS(obj) OBJECT_CHECK(TPMStateSysBus, (obj), TYPE_TPM_TIS_SYSBUS) +DECLARE_INSTANCE_CHECKER(TPMStateSysBus, TPM_TIS_SYSBUS, + TYPE_TPM_TIS_SYSBUS) static int tpm_tis_pre_save_sysbus(void *opaque) { diff --git a/hw/usb/ccid-card-emulated.c b/hw/usb/ccid-card-emulated.c index a84f578..5e4649d 100644 --- a/hw/usb/ccid-card-emulated.c +++ b/hw/usb/ccid-card-emulated.c @@ -47,8 +47,8 @@ do {\ #define TYPE_EMULATED_CCID "ccid-card-emulated" typedef struct EmulatedState EmulatedState; -#define EMULATED_CCID_CARD(obj) \ - OBJECT_CHECK(EmulatedState, (obj), TYPE_EMULATED_CCID) +DECLARE_INSTANCE_CHECKER(EmulatedState, EMULATED_CCID_CARD, + TYPE_EMULATED_CCID) #define BACKEND_NSS_EMULATED_NAME "nss-emulated" #define BACKEND_CERTIFICATES_NAME "certificates" diff --git a/hw/usb/ccid-card-passthru.c b/hw/usb/ccid-card-passthru.c index 9c9d685..e8e9d37 100644 --- a/hw/usb/ccid-card-passthru.c +++ b/hw/usb/ccid-card-passthru.c @@ -65,8 +65,8 @@ struct PassthruState { }; #define TYPE_CCID_PASSTHRU "ccid-card-passthru" -#define PASSTHRU_CCID_CARD(obj) \ - OBJECT_CHECK(PassthruState, (obj), TYPE_CCID_PASSTHRU) +DECLARE_INSTANCE_CHECKER(PassthruState, PASSTHRU_CCID_CARD, + TYPE_CCID_PASSTHRU) /* * VSCard protocol over chardev diff --git a/hw/usb/ccid.h b/hw/usb/ccid.h index b992d2c..ef2bb34 100644 --- a/hw/usb/ccid.h +++ b/hw/usb/ccid.h @@ -18,12 +18,8 @@ typedef struct CCIDCardInfo CCIDCardInfo; #define TYPE_CCID_CARD "ccid-card" typedef struct CCIDCardClass CCIDCardClass; -#define CCID_CARD(obj) \ - OBJECT_CHECK(CCIDCardState, (obj), TYPE_CCID_CARD) -#define CCID_CARD_CLASS(klass) \ - OBJECT_CLASS_CHECK(CCIDCardClass, (klass), TYPE_CCID_CARD) -#define CCID_CARD_GET_CLASS(obj) \ - OBJECT_GET_CLASS(CCIDCardClass, (obj), TYPE_CCID_CARD) +DECLARE_OBJ_CHECKERS(CCIDCardState, CCIDCardClass, + CCID_CARD, TYPE_CCID_CARD) /* * callbacks to be used by the CCID device (hw/usb-ccid.c) to call diff --git a/hw/usb/dev-audio.c b/hw/usb/dev-audio.c index 3fc8add..65247ca 100644 --- a/hw/usb/dev-audio.c +++ b/hw/usb/dev-audio.c @@ -657,7 +657,8 @@ struct USBAudioState { typedef struct USBAudioState USBAudioState; #define TYPE_USB_AUDIO "usb-audio" -#define USB_AUDIO(obj) OBJECT_CHECK(USBAudioState, (obj), TYPE_USB_AUDIO) +DECLARE_INSTANCE_CHECKER(USBAudioState, USB_AUDIO, + TYPE_USB_AUDIO) static void output_callback(void *opaque, int avail) { diff --git a/hw/usb/dev-hid.c b/hw/usb/dev-hid.c index 4d1de64..05cfe6b 100644 --- a/hw/usb/dev-hid.c +++ b/hw/usb/dev-hid.c @@ -47,7 +47,8 @@ struct USBHIDState { typedef struct USBHIDState USBHIDState; #define TYPE_USB_HID "usb-hid" -#define USB_HID(obj) OBJECT_CHECK(USBHIDState, (obj), TYPE_USB_HID) +DECLARE_INSTANCE_CHECKER(USBHIDState, USB_HID, + TYPE_USB_HID) enum { STR_MANUFACTURER = 1, diff --git a/hw/usb/dev-hub.c b/hw/usb/dev-hub.c index 07e395a..7a182f9 100644 --- a/hw/usb/dev-hub.c +++ b/hw/usb/dev-hub.c @@ -53,7 +53,8 @@ struct USBHubState { typedef struct USBHubState USBHubState; #define TYPE_USB_HUB "usb-hub" -#define USB_HUB(obj) OBJECT_CHECK(USBHubState, (obj), TYPE_USB_HUB) +DECLARE_INSTANCE_CHECKER(USBHubState, USB_HUB, + TYPE_USB_HUB) #define ClearHubFeature (0x2000 | USB_REQ_CLEAR_FEATURE) #define ClearPortFeature (0x2300 | USB_REQ_CLEAR_FEATURE) diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c index 6df70a0..c61c0e0 100644 --- a/hw/usb/dev-mtp.c +++ b/hw/usb/dev-mtp.c @@ -238,7 +238,8 @@ typedef struct { } QEMU_PACKED ObjectInfo; #define TYPE_USB_MTP "usb-mtp" -#define USB_MTP(obj) OBJECT_CHECK(MTPState, (obj), TYPE_USB_MTP) +DECLARE_INSTANCE_CHECKER(MTPState, USB_MTP, + TYPE_USB_MTP) #define QEMU_STORAGE_ID 0x00010001 diff --git a/hw/usb/dev-network.c b/hw/usb/dev-network.c index b60f8e5..cd32f57 100644 --- a/hw/usb/dev-network.c +++ b/hw/usb/dev-network.c @@ -656,7 +656,8 @@ struct USBNetState { typedef struct USBNetState USBNetState; #define TYPE_USB_NET "usb-net" -#define USB_NET(obj) OBJECT_CHECK(USBNetState, (obj), TYPE_USB_NET) +DECLARE_INSTANCE_CHECKER(USBNetState, USB_NET, + TYPE_USB_NET) static int is_rndis(USBNetState *s) { diff --git a/hw/usb/dev-serial.c b/hw/usb/dev-serial.c index 8f13f2f..1a58851 100644 --- a/hw/usb/dev-serial.c +++ b/hw/usb/dev-serial.c @@ -113,7 +113,8 @@ struct USBSerialState { typedef struct USBSerialState USBSerialState; #define TYPE_USB_SERIAL "usb-serial-dev" -#define USB_SERIAL_DEV(obj) OBJECT_CHECK(USBSerialState, (obj), TYPE_USB_SERIAL) +DECLARE_INSTANCE_CHECKER(USBSerialState, USB_SERIAL_DEV, + TYPE_USB_SERIAL) enum { STR_MANUFACTURER = 1, diff --git a/hw/usb/dev-smartcard-reader.c b/hw/usb/dev-smartcard-reader.c index a989818..432508c 100644 --- a/hw/usb/dev-smartcard-reader.c +++ b/hw/usb/dev-smartcard-reader.c @@ -62,7 +62,8 @@ do { \ #define CCID_DEV_NAME "usb-ccid" typedef struct USBCCIDState USBCCIDState; -#define USB_CCID_DEV(obj) OBJECT_CHECK(USBCCIDState, (obj), CCID_DEV_NAME) +DECLARE_INSTANCE_CHECKER(USBCCIDState, USB_CCID_DEV, + CCID_DEV_NAME) /* * The two options for variable sized buffers: * make them constant size, for large enough constant, @@ -1176,7 +1177,8 @@ static Property ccid_props[] = { }; #define TYPE_CCID_BUS "ccid-bus" -#define CCID_BUS(obj) OBJECT_CHECK(CCIDBus, (obj), TYPE_CCID_BUS) +DECLARE_INSTANCE_CHECKER(CCIDBus, CCID_BUS, + TYPE_CCID_BUS) static const TypeInfo ccid_bus_info = { .name = TYPE_CCID_BUS, diff --git a/hw/usb/dev-storage.c b/hw/usb/dev-storage.c index 55a0429..6483403 100644 --- a/hw/usb/dev-storage.c +++ b/hw/usb/dev-storage.c @@ -70,7 +70,8 @@ struct MSDState { typedef struct MSDState MSDState; #define TYPE_USB_STORAGE "usb-storage-dev" -#define USB_STORAGE_DEV(obj) OBJECT_CHECK(MSDState, (obj), TYPE_USB_STORAGE) +DECLARE_INSTANCE_CHECKER(MSDState, USB_STORAGE_DEV, + TYPE_USB_STORAGE) struct usb_msd_cbw { uint32_t sig; diff --git a/hw/usb/dev-uas.c b/hw/usb/dev-uas.c index 1d27bb9..c36c8e7 100644 --- a/hw/usb/dev-uas.c +++ b/hw/usb/dev-uas.c @@ -133,7 +133,8 @@ struct UASDevice { }; #define TYPE_USB_UAS "usb-uas" -#define USB_UAS(obj) OBJECT_CHECK(UASDevice, (obj), TYPE_USB_UAS) +DECLARE_INSTANCE_CHECKER(UASDevice, USB_UAS, + TYPE_USB_UAS) struct UASRequest { uint16_t tag; diff --git a/hw/usb/dev-wacom.c b/hw/usb/dev-wacom.c index e2dae6a..85c4d82 100644 --- a/hw/usb/dev-wacom.c +++ b/hw/usb/dev-wacom.c @@ -56,7 +56,8 @@ struct USBWacomState { typedef struct USBWacomState USBWacomState; #define TYPE_USB_WACOM "usb-wacom-tablet" -#define USB_WACOM(obj) OBJECT_CHECK(USBWacomState, (obj), TYPE_USB_WACOM) +DECLARE_INSTANCE_CHECKER(USBWacomState, USB_WACOM, + TYPE_USB_WACOM) enum { STR_MANUFACTURER = 1, diff --git a/hw/usb/hcd-dwc2.h b/hw/usb/hcd-dwc2.h index 71b40f0..919e3e4 100644 --- a/hw/usb/hcd-dwc2.h +++ b/hw/usb/hcd-dwc2.h @@ -181,11 +181,7 @@ struct DWC2Class { }; #define TYPE_DWC2_USB "dwc2-usb" -#define DWC2_USB(obj) \ - OBJECT_CHECK(DWC2State, (obj), TYPE_DWC2_USB) -#define DWC2_USB_CLASS(klass) \ - OBJECT_CLASS_CHECK(DWC2Class, (klass), TYPE_DWC2_USB) -#define DWC2_USB_GET_CLASS(obj) \ - OBJECT_GET_CLASS(DWC2Class, (obj), TYPE_DWC2_USB) +DECLARE_OBJ_CHECKERS(DWC2State, DWC2Class, + DWC2_USB, TYPE_DWC2_USB) #endif diff --git a/hw/usb/hcd-ehci.h b/hw/usb/hcd-ehci.h index c12c9ba..1301ce0 100644 --- a/hw/usb/hcd-ehci.h +++ b/hw/usb/hcd-ehci.h @@ -330,7 +330,8 @@ void ehci_reset(void *opaque); #define TYPE_PCI_EHCI "pci-ehci-usb" typedef struct EHCIPCIState EHCIPCIState; -#define PCI_EHCI(obj) OBJECT_CHECK(EHCIPCIState, (obj), TYPE_PCI_EHCI) +DECLARE_INSTANCE_CHECKER(EHCIPCIState, PCI_EHCI, + TYPE_PCI_EHCI) struct EHCIPCIState { /*< private >*/ @@ -351,12 +352,8 @@ struct EHCIPCIState { typedef struct EHCISysBusState EHCISysBusState; typedef struct SysBusEHCIClass SysBusEHCIClass; -#define SYS_BUS_EHCI(obj) \ - OBJECT_CHECK(EHCISysBusState, (obj), TYPE_SYS_BUS_EHCI) -#define SYS_BUS_EHCI_CLASS(class) \ - OBJECT_CLASS_CHECK(SysBusEHCIClass, (class), TYPE_SYS_BUS_EHCI) -#define SYS_BUS_EHCI_GET_CLASS(obj) \ - OBJECT_GET_CLASS(SysBusEHCIClass, (obj), TYPE_SYS_BUS_EHCI) +DECLARE_OBJ_CHECKERS(EHCISysBusState, SysBusEHCIClass, + SYS_BUS_EHCI, TYPE_SYS_BUS_EHCI) struct EHCISysBusState { /*< private >*/ @@ -378,8 +375,8 @@ struct SysBusEHCIClass { }; typedef struct FUSBH200EHCIState FUSBH200EHCIState; -#define FUSBH200_EHCI(obj) \ - OBJECT_CHECK(FUSBH200EHCIState, (obj), TYPE_FUSBH200_EHCI) +DECLARE_INSTANCE_CHECKER(FUSBH200EHCIState, FUSBH200_EHCI, + TYPE_FUSBH200_EHCI) struct FUSBH200EHCIState { /*< private >*/ diff --git a/hw/usb/hcd-ohci-pci.c b/hw/usb/hcd-ohci-pci.c index 82fe967..f8168a0 100644 --- a/hw/usb/hcd-ohci-pci.c +++ b/hw/usb/hcd-ohci-pci.c @@ -33,7 +33,8 @@ #define TYPE_PCI_OHCI "pci-ohci" typedef struct OHCIPCIState OHCIPCIState; -#define PCI_OHCI(obj) OBJECT_CHECK(OHCIPCIState, (obj), TYPE_PCI_OHCI) +DECLARE_INSTANCE_CHECKER(OHCIPCIState, PCI_OHCI, + TYPE_PCI_OHCI) struct OHCIPCIState { /*< private >*/ diff --git a/hw/usb/hcd-ohci.h b/hw/usb/hcd-ohci.h index 3e9053f..6e28e97 100644 --- a/hw/usb/hcd-ohci.h +++ b/hw/usb/hcd-ohci.h @@ -94,7 +94,8 @@ typedef struct OHCIState { #define TYPE_SYSBUS_OHCI "sysbus-ohci" typedef struct OHCISysBusState OHCISysBusState; -#define SYSBUS_OHCI(obj) OBJECT_CHECK(OHCISysBusState, (obj), TYPE_SYSBUS_OHCI) +DECLARE_INSTANCE_CHECKER(OHCISysBusState, SYSBUS_OHCI, + TYPE_SYSBUS_OHCI) struct OHCISysBusState { /*< private >*/ diff --git a/hw/usb/hcd-uhci.c b/hw/usb/hcd-uhci.c index 31ec5f4..27ca237 100644 --- a/hw/usb/hcd-uhci.c +++ b/hw/usb/hcd-uhci.c @@ -161,7 +161,8 @@ static void uhci_queue_fill(UHCIQueue *q, UHCI_TD *td); static void uhci_resume(void *opaque); #define TYPE_UHCI "pci-uhci-usb" -#define UHCI(obj) OBJECT_CHECK(UHCIState, (obj), TYPE_UHCI) +DECLARE_INSTANCE_CHECKER(UHCIState, UHCI, + TYPE_UHCI) static inline int32_t uhci_queue_token(UHCI_TD *td) { diff --git a/hw/usb/hcd-xhci.h b/hw/usb/hcd-xhci.h index 867388a..2110c03 100644 --- a/hw/usb/hcd-xhci.h +++ b/hw/usb/hcd-xhci.h @@ -28,8 +28,8 @@ #define TYPE_QEMU_XHCI "qemu-xhci" typedef struct XHCIState XHCIState; -#define XHCI(obj) \ - OBJECT_CHECK(XHCIState, (obj), TYPE_XHCI) +DECLARE_INSTANCE_CHECKER(XHCIState, XHCI, + TYPE_XHCI) #define MAXPORTS_2 15 #define MAXPORTS_3 15 diff --git a/hw/usb/host-libusb.c b/hw/usb/host-libusb.c index 30779c8..2ba1de6 100644 --- a/hw/usb/host-libusb.c +++ b/hw/usb/host-libusb.c @@ -62,8 +62,8 @@ #define TYPE_USB_HOST_DEVICE "usb-host" typedef struct USBHostDevice USBHostDevice; -#define USB_HOST_DEVICE(obj) \ - OBJECT_CHECK(USBHostDevice, (obj), TYPE_USB_HOST_DEVICE) +DECLARE_INSTANCE_CHECKER(USBHostDevice, USB_HOST_DEVICE, + TYPE_USB_HOST_DEVICE) typedef struct USBHostRequest USBHostRequest; typedef struct USBHostIsoXfer USBHostIsoXfer; diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c index 344fdc3..a079ecd 100644 --- a/hw/usb/redirect.c +++ b/hw/usb/redirect.c @@ -145,7 +145,8 @@ struct USBRedirDevice { }; #define TYPE_USB_REDIR "usb-redir" -#define USB_REDIRECT(obj) OBJECT_CHECK(USBRedirDevice, (obj), TYPE_USB_REDIR) +DECLARE_INSTANCE_CHECKER(USBRedirDevice, USB_REDIRECT, + TYPE_USB_REDIR) static void usbredir_hello(void *priv, struct usb_redir_hello_header *h); static void usbredir_device_connect(void *priv, diff --git a/hw/usb/tusb6010.c b/hw/usb/tusb6010.c index a15ee51..2bee3ae 100644 --- a/hw/usb/tusb6010.c +++ b/hw/usb/tusb6010.c @@ -32,7 +32,8 @@ #define TYPE_TUSB6010 "tusb6010" typedef struct TUSBState TUSBState; -#define TUSB(obj) OBJECT_CHECK(TUSBState, (obj), TYPE_TUSB6010) +DECLARE_INSTANCE_CHECKER(TUSBState, TUSB, + TYPE_TUSB6010) struct TUSBState { SysBusDevice parent_obj; diff --git a/hw/vfio/ap.c b/hw/vfio/ap.c index eb74e57..f399ec0 100644 --- a/hw/vfio/ap.c +++ b/hw/vfio/ap.c @@ -38,8 +38,8 @@ struct VFIOAPDevice { }; typedef struct VFIOAPDevice VFIOAPDevice; -#define VFIO_AP_DEVICE(obj) \ - OBJECT_CHECK(VFIOAPDevice, (obj), VFIO_AP_DEVICE_TYPE) +DECLARE_INSTANCE_CHECKER(VFIOAPDevice, VFIO_AP_DEVICE, + VFIO_AP_DEVICE_TYPE) static void vfio_ap_compute_needs_reset(VFIODevice *vdev) { diff --git a/hw/vfio/pci.h b/hw/vfio/pci.h index 8c1f941..846d60e 100644 --- a/hw/vfio/pci.h +++ b/hw/vfio/pci.h @@ -116,7 +116,8 @@ typedef struct VFIOMSIXInfo { #define TYPE_VFIO_PCI "vfio-pci" typedef struct VFIOPCIDevice VFIOPCIDevice; -#define PCI_VFIO(obj) OBJECT_CHECK(VFIOPCIDevice, obj, TYPE_VFIO_PCI) +DECLARE_INSTANCE_CHECKER(VFIOPCIDevice, PCI_VFIO, + TYPE_VFIO_PCI) struct VFIOPCIDevice { PCIDevice pdev; diff --git a/hw/virtio/vhost-scsi-pci.c b/hw/virtio/vhost-scsi-pci.c index b30a04d..cb71a29 100644 --- a/hw/virtio/vhost-scsi-pci.c +++ b/hw/virtio/vhost-scsi-pci.c @@ -30,8 +30,8 @@ typedef struct VHostSCSIPCI VHostSCSIPCI; * vhost-scsi-pci: This extends VirtioPCIProxy. */ #define TYPE_VHOST_SCSI_PCI "vhost-scsi-pci-base" -#define VHOST_SCSI_PCI(obj) \ - OBJECT_CHECK(VHostSCSIPCI, (obj), TYPE_VHOST_SCSI_PCI) +DECLARE_INSTANCE_CHECKER(VHostSCSIPCI, VHOST_SCSI_PCI, + TYPE_VHOST_SCSI_PCI) struct VHostSCSIPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/vhost-user-blk-pci.c b/hw/virtio/vhost-user-blk-pci.c index 51d0858..33b404d 100644 --- a/hw/virtio/vhost-user-blk-pci.c +++ b/hw/virtio/vhost-user-blk-pci.c @@ -35,8 +35,8 @@ typedef struct VHostUserBlkPCI VHostUserBlkPCI; * vhost-user-blk-pci: This extends VirtioPCIProxy. */ #define TYPE_VHOST_USER_BLK_PCI "vhost-user-blk-pci-base" -#define VHOST_USER_BLK_PCI(obj) \ - OBJECT_CHECK(VHostUserBlkPCI, (obj), TYPE_VHOST_USER_BLK_PCI) +DECLARE_INSTANCE_CHECKER(VHostUserBlkPCI, VHOST_USER_BLK_PCI, + TYPE_VHOST_USER_BLK_PCI) struct VHostUserBlkPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/vhost-user-fs-pci.c b/hw/virtio/vhost-user-fs-pci.c index 6b01561..8bb389b 100644 --- a/hw/virtio/vhost-user-fs-pci.c +++ b/hw/virtio/vhost-user-fs-pci.c @@ -26,8 +26,8 @@ typedef struct VHostUserFSPCI VHostUserFSPCI; #define TYPE_VHOST_USER_FS_PCI "vhost-user-fs-pci-base" -#define VHOST_USER_FS_PCI(obj) \ - OBJECT_CHECK(VHostUserFSPCI, (obj), TYPE_VHOST_USER_FS_PCI) +DECLARE_INSTANCE_CHECKER(VHostUserFSPCI, VHOST_USER_FS_PCI, + TYPE_VHOST_USER_FS_PCI) static Property vhost_user_fs_pci_properties[] = { DEFINE_PROP_UINT32("vectors", VirtIOPCIProxy, nvectors, diff --git a/hw/virtio/vhost-user-input-pci.c b/hw/virtio/vhost-user-input-pci.c index b072fb5..c9d3e91 100644 --- a/hw/virtio/vhost-user-input-pci.c +++ b/hw/virtio/vhost-user-input-pci.c @@ -16,8 +16,8 @@ typedef struct VHostUserInputPCI VHostUserInputPCI; #define TYPE_VHOST_USER_INPUT_PCI "vhost-user-input-pci" -#define VHOST_USER_INPUT_PCI(obj) \ - OBJECT_CHECK(VHostUserInputPCI, (obj), TYPE_VHOST_USER_INPUT_PCI) +DECLARE_INSTANCE_CHECKER(VHostUserInputPCI, VHOST_USER_INPUT_PCI, + TYPE_VHOST_USER_INPUT_PCI) struct VHostUserInputPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/vhost-user-scsi-pci.c b/hw/virtio/vhost-user-scsi-pci.c index 773104e..d534341 100644 --- a/hw/virtio/vhost-user-scsi-pci.c +++ b/hw/virtio/vhost-user-scsi-pci.c @@ -36,8 +36,8 @@ typedef struct VHostUserSCSIPCI VHostUserSCSIPCI; #define TYPE_VHOST_USER_SCSI_PCI "vhost-user-scsi-pci-base" -#define VHOST_USER_SCSI_PCI(obj) \ - OBJECT_CHECK(VHostUserSCSIPCI, (obj), TYPE_VHOST_USER_SCSI_PCI) +DECLARE_INSTANCE_CHECKER(VHostUserSCSIPCI, VHOST_USER_SCSI_PCI, + TYPE_VHOST_USER_SCSI_PCI) struct VHostUserSCSIPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/vhost-user-vsock-pci.c b/hw/virtio/vhost-user-vsock-pci.c index 65bfc91..763f899 100644 --- a/hw/virtio/vhost-user-vsock-pci.c +++ b/hw/virtio/vhost-user-vsock-pci.c @@ -21,8 +21,8 @@ typedef struct VHostUserVSockPCI VHostUserVSockPCI; * vhost-user-vsock-pci: This extends VirtioPCIProxy. */ #define TYPE_VHOST_USER_VSOCK_PCI "vhost-user-vsock-pci-base" -#define VHOST_USER_VSOCK_PCI(obj) \ - OBJECT_CHECK(VHostUserVSockPCI, (obj), TYPE_VHOST_USER_VSOCK_PCI) +DECLARE_INSTANCE_CHECKER(VHostUserVSockPCI, VHOST_USER_VSOCK_PCI, + TYPE_VHOST_USER_VSOCK_PCI) struct VHostUserVSockPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/vhost-vsock-pci.c b/hw/virtio/vhost-vsock-pci.c index 49fcddc..e56067b 100644 --- a/hw/virtio/vhost-vsock-pci.c +++ b/hw/virtio/vhost-vsock-pci.c @@ -25,8 +25,8 @@ typedef struct VHostVSockPCI VHostVSockPCI; * vhost-vsock-pci: This extends VirtioPCIProxy. */ #define TYPE_VHOST_VSOCK_PCI "vhost-vsock-pci-base" -#define VHOST_VSOCK_PCI(obj) \ - OBJECT_CHECK(VHostVSockPCI, (obj), TYPE_VHOST_VSOCK_PCI) +DECLARE_INSTANCE_CHECKER(VHostVSockPCI, VHOST_VSOCK_PCI, + TYPE_VHOST_VSOCK_PCI) struct VHostVSockPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-9p-pci.c b/hw/virtio/virtio-9p-pci.c index 8ea357b..e07adcd 100644 --- a/hw/virtio/virtio-9p-pci.c +++ b/hw/virtio/virtio-9p-pci.c @@ -27,8 +27,8 @@ #define TYPE_VIRTIO_9P_PCI "virtio-9p-pci-base" typedef struct V9fsPCIState V9fsPCIState; -#define VIRTIO_9P_PCI(obj) \ - OBJECT_CHECK(V9fsPCIState, (obj), TYPE_VIRTIO_9P_PCI) +DECLARE_INSTANCE_CHECKER(V9fsPCIState, VIRTIO_9P_PCI, + TYPE_VIRTIO_9P_PCI) struct V9fsPCIState { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-balloon-pci.c b/hw/virtio/virtio-balloon-pci.c index 35378c7..a2c5cc7 100644 --- a/hw/virtio/virtio-balloon-pci.c +++ b/hw/virtio/virtio-balloon-pci.c @@ -27,8 +27,8 @@ typedef struct VirtIOBalloonPCI VirtIOBalloonPCI; * virtio-balloon-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_BALLOON_PCI "virtio-balloon-pci-base" -#define VIRTIO_BALLOON_PCI(obj) \ - OBJECT_CHECK(VirtIOBalloonPCI, (obj), TYPE_VIRTIO_BALLOON_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOBalloonPCI, VIRTIO_BALLOON_PCI, + TYPE_VIRTIO_BALLOON_PCI) struct VirtIOBalloonPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-blk-pci.c b/hw/virtio/virtio-blk-pci.c index a2aa614..9d57958 100644 --- a/hw/virtio/virtio-blk-pci.c +++ b/hw/virtio/virtio-blk-pci.c @@ -30,8 +30,8 @@ typedef struct VirtIOBlkPCI VirtIOBlkPCI; * virtio-blk-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_BLK_PCI "virtio-blk-pci-base" -#define VIRTIO_BLK_PCI(obj) \ - OBJECT_CHECK(VirtIOBlkPCI, (obj), TYPE_VIRTIO_BLK_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOBlkPCI, VIRTIO_BLK_PCI, + TYPE_VIRTIO_BLK_PCI) struct VirtIOBlkPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-crypto-pci.c b/hw/virtio/virtio-crypto-pci.c index 518a87a..0783dc2 100644 --- a/hw/virtio/virtio-crypto-pci.c +++ b/hw/virtio/virtio-crypto-pci.c @@ -29,8 +29,8 @@ typedef struct VirtIOCryptoPCI VirtIOCryptoPCI; * virtio-crypto-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_CRYPTO_PCI "virtio-crypto-pci" -#define VIRTIO_CRYPTO_PCI(obj) \ - OBJECT_CHECK(VirtIOCryptoPCI, (obj), TYPE_VIRTIO_CRYPTO_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOCryptoPCI, VIRTIO_CRYPTO_PCI, + TYPE_VIRTIO_CRYPTO_PCI) struct VirtIOCryptoPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-input-host-pci.c b/hw/virtio/virtio-input-host-pci.c index 4d8479c..0ac360d 100644 --- a/hw/virtio/virtio-input-host-pci.c +++ b/hw/virtio/virtio-input-host-pci.c @@ -16,8 +16,8 @@ typedef struct VirtIOInputHostPCI VirtIOInputHostPCI; #define TYPE_VIRTIO_INPUT_HOST_PCI "virtio-input-host-pci" -#define VIRTIO_INPUT_HOST_PCI(obj) \ - OBJECT_CHECK(VirtIOInputHostPCI, (obj), TYPE_VIRTIO_INPUT_HOST_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOInputHostPCI, VIRTIO_INPUT_HOST_PCI, + TYPE_VIRTIO_INPUT_HOST_PCI) struct VirtIOInputHostPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-input-pci.c b/hw/virtio/virtio-input-pci.c index 429dd4d..85acd3d 100644 --- a/hw/virtio/virtio-input-pci.c +++ b/hw/virtio/virtio-input-pci.c @@ -20,8 +20,8 @@ typedef struct VirtIOInputHIDPCI VirtIOInputHIDPCI; /* * virtio-input-pci: This extends VirtioPCIProxy. */ -#define VIRTIO_INPUT_PCI(obj) \ - OBJECT_CHECK(VirtIOInputPCI, (obj), TYPE_VIRTIO_INPUT_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOInputPCI, VIRTIO_INPUT_PCI, + TYPE_VIRTIO_INPUT_PCI) struct VirtIOInputPCI { VirtIOPCIProxy parent_obj; @@ -32,8 +32,8 @@ struct VirtIOInputPCI { #define TYPE_VIRTIO_KEYBOARD_PCI "virtio-keyboard-pci" #define TYPE_VIRTIO_MOUSE_PCI "virtio-mouse-pci" #define TYPE_VIRTIO_TABLET_PCI "virtio-tablet-pci" -#define VIRTIO_INPUT_HID_PCI(obj) \ - OBJECT_CHECK(VirtIOInputHIDPCI, (obj), TYPE_VIRTIO_INPUT_HID_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOInputHIDPCI, VIRTIO_INPUT_HID_PCI, + TYPE_VIRTIO_INPUT_HID_PCI) struct VirtIOInputHIDPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-iommu-pci.c b/hw/virtio/virtio-iommu-pci.c index 17451f5..76540e5 100644 --- a/hw/virtio/virtio-iommu-pci.c +++ b/hw/virtio/virtio-iommu-pci.c @@ -24,8 +24,8 @@ typedef struct VirtIOIOMMUPCI VirtIOIOMMUPCI; * virtio-iommu-pci: This extends VirtioPCIProxy. * */ -#define VIRTIO_IOMMU_PCI(obj) \ - OBJECT_CHECK(VirtIOIOMMUPCI, (obj), TYPE_VIRTIO_IOMMU_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOIOMMUPCI, VIRTIO_IOMMU_PCI, + TYPE_VIRTIO_IOMMU_PCI) struct VirtIOIOMMUPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-mem-pci.h b/hw/virtio/virtio-mem-pci.h index 65b86be..e636e1a 100644 --- a/hw/virtio/virtio-mem-pci.h +++ b/hw/virtio/virtio-mem-pci.h @@ -23,8 +23,8 @@ typedef struct VirtIOMEMPCI VirtIOMEMPCI; * virtio-mem-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_MEM_PCI "virtio-mem-pci-base" -#define VIRTIO_MEM_PCI(obj) \ - OBJECT_CHECK(VirtIOMEMPCI, (obj), TYPE_VIRTIO_MEM_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOMEMPCI, VIRTIO_MEM_PCI, + TYPE_VIRTIO_MEM_PCI) struct VirtIOMEMPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-net-pci.c b/hw/virtio/virtio-net-pci.c index 498fc02..292d13d 100644 --- a/hw/virtio/virtio-net-pci.c +++ b/hw/virtio/virtio-net-pci.c @@ -30,8 +30,8 @@ typedef struct VirtIONetPCI VirtIONetPCI; * virtio-net-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_NET_PCI "virtio-net-pci-base" -#define VIRTIO_NET_PCI(obj) \ - OBJECT_CHECK(VirtIONetPCI, (obj), TYPE_VIRTIO_NET_PCI) +DECLARE_INSTANCE_CHECKER(VirtIONetPCI, VIRTIO_NET_PCI, + TYPE_VIRTIO_NET_PCI) struct VirtIONetPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-pci.h b/hw/virtio/virtio-pci.h index d59ac97..47b6bb4 100644 --- a/hw/virtio/virtio-pci.h +++ b/hw/virtio/virtio-pci.h @@ -27,12 +27,8 @@ typedef struct VirtioBusState VirtioPCIBusState; typedef struct VirtioBusClass VirtioPCIBusClass; #define TYPE_VIRTIO_PCI_BUS "virtio-pci-bus" -#define VIRTIO_PCI_BUS(obj) \ - OBJECT_CHECK(VirtioPCIBusState, (obj), TYPE_VIRTIO_PCI_BUS) -#define VIRTIO_PCI_BUS_GET_CLASS(obj) \ - OBJECT_GET_CLASS(VirtioPCIBusClass, obj, TYPE_VIRTIO_PCI_BUS) -#define VIRTIO_PCI_BUS_CLASS(klass) \ - OBJECT_CLASS_CHECK(VirtioPCIBusClass, klass, TYPE_VIRTIO_PCI_BUS) +DECLARE_OBJ_CHECKERS(VirtioPCIBusState, VirtioPCIBusClass, + VIRTIO_PCI_BUS, TYPE_VIRTIO_PCI_BUS) enum { VIRTIO_PCI_FLAG_BUS_MASTER_BUG_MIGRATION_BIT, @@ -96,12 +92,8 @@ typedef struct { */ #define TYPE_VIRTIO_PCI "virtio-pci" typedef struct VirtioPCIClass VirtioPCIClass; -#define VIRTIO_PCI_GET_CLASS(obj) \ - OBJECT_GET_CLASS(VirtioPCIClass, obj, TYPE_VIRTIO_PCI) -#define VIRTIO_PCI_CLASS(klass) \ - OBJECT_CLASS_CHECK(VirtioPCIClass, klass, TYPE_VIRTIO_PCI) -#define VIRTIO_PCI(obj) \ - OBJECT_CHECK(VirtIOPCIProxy, (obj), TYPE_VIRTIO_PCI) +DECLARE_OBJ_CHECKERS(VirtIOPCIProxy, VirtioPCIClass, + VIRTIO_PCI, TYPE_VIRTIO_PCI) struct VirtioPCIClass { PCIDeviceClass parent_class; diff --git a/hw/virtio/virtio-pmem-pci.h b/hw/virtio/virtio-pmem-pci.h index 5ac8099..63cfe72 100644 --- a/hw/virtio/virtio-pmem-pci.h +++ b/hw/virtio/virtio-pmem-pci.h @@ -24,8 +24,8 @@ typedef struct VirtIOPMEMPCI VirtIOPMEMPCI; * virtio-pmem-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_PMEM_PCI "virtio-pmem-pci-base" -#define VIRTIO_PMEM_PCI(obj) \ - OBJECT_CHECK(VirtIOPMEMPCI, (obj), TYPE_VIRTIO_PMEM_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOPMEMPCI, VIRTIO_PMEM_PCI, + TYPE_VIRTIO_PMEM_PCI) struct VirtIOPMEMPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-rng-pci.c b/hw/virtio/virtio-rng-pci.c index 8f953df..c1f9162 100644 --- a/hw/virtio/virtio-rng-pci.c +++ b/hw/virtio/virtio-rng-pci.c @@ -23,8 +23,8 @@ typedef struct VirtIORngPCI VirtIORngPCI; * virtio-rng-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_RNG_PCI "virtio-rng-pci-base" -#define VIRTIO_RNG_PCI(obj) \ - OBJECT_CHECK(VirtIORngPCI, (obj), TYPE_VIRTIO_RNG_PCI) +DECLARE_INSTANCE_CHECKER(VirtIORngPCI, VIRTIO_RNG_PCI, + TYPE_VIRTIO_RNG_PCI) struct VirtIORngPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-scsi-pci.c b/hw/virtio/virtio-scsi-pci.c index 7a7ffa4..97fab74 100644 --- a/hw/virtio/virtio-scsi-pci.c +++ b/hw/virtio/virtio-scsi-pci.c @@ -27,8 +27,8 @@ typedef struct VirtIOSCSIPCI VirtIOSCSIPCI; * virtio-scsi-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_SCSI_PCI "virtio-scsi-pci-base" -#define VIRTIO_SCSI_PCI(obj) \ - OBJECT_CHECK(VirtIOSCSIPCI, (obj), TYPE_VIRTIO_SCSI_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOSCSIPCI, VIRTIO_SCSI_PCI, + TYPE_VIRTIO_SCSI_PCI) struct VirtIOSCSIPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/virtio/virtio-serial-pci.c b/hw/virtio/virtio-serial-pci.c index 1bd769e..35bcd96 100644 --- a/hw/virtio/virtio-serial-pci.c +++ b/hw/virtio/virtio-serial-pci.c @@ -29,8 +29,8 @@ typedef struct VirtIOSerialPCI VirtIOSerialPCI; * virtio-serial-pci: This extends VirtioPCIProxy. */ #define TYPE_VIRTIO_SERIAL_PCI "virtio-serial-pci-base" -#define VIRTIO_SERIAL_PCI(obj) \ - OBJECT_CHECK(VirtIOSerialPCI, (obj), TYPE_VIRTIO_SERIAL_PCI) +DECLARE_INSTANCE_CHECKER(VirtIOSerialPCI, VIRTIO_SERIAL_PCI, + TYPE_VIRTIO_SERIAL_PCI) struct VirtIOSerialPCI { VirtIOPCIProxy parent_obj; diff --git a/hw/watchdog/wdt_i6300esb.c b/hw/watchdog/wdt_i6300esb.c index eaa2b39..4f64899 100644 --- a/hw/watchdog/wdt_i6300esb.c +++ b/hw/watchdog/wdt_i6300esb.c @@ -105,8 +105,8 @@ struct I6300State { typedef struct I6300State I6300State; #define TYPE_WATCHDOG_I6300ESB_DEVICE "i6300esb" -#define WATCHDOG_I6300ESB_DEVICE(obj) \ - OBJECT_CHECK(I6300State, (obj), TYPE_WATCHDOG_I6300ESB_DEVICE) +DECLARE_INSTANCE_CHECKER(I6300State, WATCHDOG_I6300ESB_DEVICE, + TYPE_WATCHDOG_I6300ESB_DEVICE) /* This function is called when the watchdog has either been enabled * (hence it starts counting down) or has been keep-alived. diff --git a/hw/watchdog/wdt_ib700.c b/hw/watchdog/wdt_ib700.c index 1a7a8f6..177aaa5 100644 --- a/hw/watchdog/wdt_ib700.c +++ b/hw/watchdog/wdt_ib700.c @@ -38,7 +38,8 @@ #define TYPE_IB700 "ib700" typedef struct IB700state IB700State; -#define IB700(obj) OBJECT_CHECK(IB700State, (obj), TYPE_IB700) +DECLARE_INSTANCE_CHECKER(IB700State, IB700, + TYPE_IB700) struct IB700state { ISADevice parent_obj; diff --git a/hw/xen/xen_pt.h b/hw/xen/xen_pt.h index c367c7d..f46971e 100644 --- a/hw/xen/xen_pt.h +++ b/hw/xen/xen_pt.h @@ -40,8 +40,8 @@ typedef struct XenPTReg XenPTReg; typedef struct XenPCIPassthroughState XenPCIPassthroughState; #define TYPE_XEN_PT_DEVICE "xen-pci-passthrough" -#define XEN_PT_DEVICE(obj) \ - OBJECT_CHECK(XenPCIPassthroughState, (obj), TYPE_XEN_PT_DEVICE) +DECLARE_INSTANCE_CHECKER(XenPCIPassthroughState, XEN_PT_DEVICE, + TYPE_XEN_PT_DEVICE) uint32_t igd_read_opregion(XenPCIPassthroughState *s); void igd_write_opregion(XenPCIPassthroughState *s, uint32_t val); |