From patchwork Mon Mar 4 17:32:28 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 224776 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 603E92C0325 for ; Tue, 5 Mar 2013 04:33:09 +1100 (EST) Received: from localhost ([::1]:59028 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UCZG7-0003c9-JT for incoming@patchwork.ozlabs.org; Mon, 04 Mar 2013 12:33:07 -0500 Received: from eggs.gnu.org ([208.118.235.92]:43878) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UCZFg-0003bR-Go for qemu-devel@nongnu.org; Mon, 04 Mar 2013 12:32:45 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UCZFa-0008Mc-JE for qemu-devel@nongnu.org; Mon, 04 Mar 2013 12:32:40 -0500 Received: from mail-we0-x234.google.com ([2a00:1450:400c:c03::234]:60466) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UCZFa-0008MT-3X for qemu-devel@nongnu.org; Mon, 04 Mar 2013 12:32:34 -0500 Received: by mail-we0-f180.google.com with SMTP id k14so4638336wer.39 for ; Mon, 04 Mar 2013 09:32:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:sender:from:to:cc:subject:date:message-id:x-mailer; bh=T/lrEqBYY72rw+nnvFqHMeD6c1D5I4lkQXe60x/3Ymw=; b=VgX4/6HRnhE2VOogodY8CMg2qOy8yCege7nAo/Rx+S4PqT2HyjOs/uG96ribSfGoC+ mdcSSEOFrp3p3oFt9D8nSYk3yivsChge+/cc+Op96X8NBclVfWWqWYUCDW0WpAVRcBmM dXlmpdD7mn0JmCeZz9LTElxYUtLZZ6+przW1yTMqbjtvkPhxlQ9nIUy3dbbLQo9d75i+ gv7cvFN+TPKOnyZLeHw5OIpfETi0X/paYqxW9gdgG9p5B9g7GWo/RoGGrjA9l/VVH7Lq j35XqsrGooDScXGxATv0EnjCQ2BAe/MGsNZnE7FUEt/22Legli/qNAac40hGj74eurW4 Zu/g== X-Received: by 10.194.176.165 with SMTP id cj5mr33543292wjc.37.1362418353083; Mon, 04 Mar 2013 09:32:33 -0800 (PST) Received: from playground.lan (93-34-176-20.ip50.fastwebnet.it. [93.34.176.20]) by mx.google.com with ESMTPS id o8sm15436207wix.7.2013.03.04.09.32.30 (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Mon, 04 Mar 2013 09:32:31 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Mon, 4 Mar 2013 18:32:28 +0100 Message-Id: <1362418348-27398-1-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.1.4 X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:400c:c03::234 Cc: blauwirbel@gmail.com, peter.maydell@linaro.org Subject: [Qemu-devel] [PATCH] sysbus: add no_user for devices using mmio or IRQ or GPIO X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org These features require creating the device specially from board code. Therefore, devices that use it cannot be created with -device. (And some of them are even visible in binaries for qemu-system-x86_64, for example the sysbus EHCI device). Mass-mark these devices as no_user. Signed-off-by: Paolo Bonzini --- hw/a9scu.c | 1 + hw/apb_pci.c | 1 + hw/arm_sysctl.c | 1 + hw/arm_timer.c | 2 ++ hw/armv7m.c | 1 + hw/bitbang_i2c.c | 1 + hw/cadence_ttc.c | 1 + hw/cadence_uart.c | 1 + hw/cs4231.c | 1 + hw/ds1225y.c | 1 + hw/eccmemctl.c | 1 + hw/empty_slot.c | 1 + hw/escc.c | 1 + hw/esp.c | 1 + hw/etraxfs_pic.c | 1 + hw/etraxfs_ser.c | 1 + hw/etraxfs_timer.c | 1 + hw/exynos4210_combiner.c | 1 + hw/exynos4210_fimd.c | 1 + hw/exynos4210_gic.c | 2 ++ hw/exynos4210_i2c.c | 1 + hw/exynos4210_mct.c | 1 + hw/exynos4210_pmu.c | 1 + hw/exynos4210_pwm.c | 1 + hw/exynos4210_rtc.c | 1 + hw/exynos4210_uart.c | 1 + hw/fdc.c | 2 ++ hw/g364fb.c | 1 + hw/ide/ahci.c | 1 + hw/imx_avic.c | 1 + hw/imx_ccm.c | 1 + hw/imx_serial.c | 1 + hw/imx_timer.c | 2 ++ hw/integratorcp.c | 1 + hw/jazz_led.c | 1 + hw/lan9118.c | 1 + hw/lm32_timer.c | 1 + hw/lm32_uart.c | 1 + hw/marvell_88w8618_audio.c | 1 + hw/milkymist-ac97.c | 1 + hw/milkymist-hpdmc.c | 1 + hw/milkymist-memcard.c | 1 + hw/milkymist-minimac2.c | 1 + hw/milkymist-softusb.c | 1 + hw/mipsnet.c | 1 + hw/mpc8544_guts.c | 1 + hw/mst_fpga.c | 1 + hw/musicpal.c | 8 ++++++++ hw/omap_gpio.c | 2 ++ hw/omap_i2c.c | 1 + hw/omap_intc.c | 2 ++ hw/onenand.c | 1 + hw/opencores_eth.c | 1 + hw/openpic.c | 1 + hw/pc_sysfw.c | 1 + hw/pflash_cfi01.c | 1 + hw/pflash_cfi02.c | 1 + hw/pl011.c | 4 ++++ hw/pl022.c | 1 + hw/pl050.c | 2 ++ hw/pl061.c | 2 ++ hw/pl080.c | 2 ++ hw/ppc/e500.c | 1 + hw/ppce500_pci.c | 1 + hw/ppce500_spin.c | 1 + hw/puv3_dma.c | 2 ++ hw/puv3_gpio.c | 2 ++ hw/puv3_intc.c | 2 ++ hw/puv3_ost.c | 2 ++ hw/puv3_pm.c | 2 ++ hw/pxa2xx.c | 4 ++++ hw/pxa2xx_dma.c | 1 + hw/pxa2xx_gpio.c | 1 + hw/pxa2xx_pic.c | 1 + hw/pxa2xx_timer.c | 2 ++ hw/realview_gic.c | 2 ++ hw/sdhci.c | 1 + hw/sh_pci.c | 2 ++ hw/slavio_intctl.c | 1 + hw/slavio_misc.c | 3 +++ hw/slavio_timer.c | 1 + hw/smc91c111.c | 1 + hw/sparc32_dma.c | 1 + hw/spitz.c | 3 +++ hw/stellaris.c | 6 ++++++ hw/stellaris_enet.c | 1 + hw/strongarm.c | 5 +++++ hw/sun4m.c | 6 ++++++ hw/sun4m_iommu.c | 1 + hw/tcx.c | 1 + hw/tusb6010.c | 1 + hw/usb/hcd-ehci-sysbus.c | 1 + hw/usb/hcd-ohci.c | 1 + hw/versatile_i2c.c | 2 ++ hw/versatile_pci.c | 2 ++ hw/xgmac.c | 1 + hw/xilinx_axidma.c | 1 + hw/xilinx_axienet.c | 1 + hw/xilinx_ethlite.c | 1 + hw/xilinx_intc.c | 1 + hw/xilinx_spi.c | 1 + hw/xilinx_spips.c | 1 + hw/xilinx_timer.c | 1 + hw/xilinx_uartlite.c | 2 ++ hw/zaurus.c | 1 + hw/zynq_slcr.c | 1 + 106 files changed, 157 insertions(+) diff --git a/hw/a9scu.c b/hw/a9scu.c index 0e9e54d..a3f6bfb 100644 --- a/hw/a9scu.c +++ b/hw/a9scu.c @@ -147,6 +147,7 @@ static void a9_scu_class_init(ObjectClass *klass, void *data) dc->props = a9_scu_properties; dc->vmsd = &vmstate_a9_scu; dc->reset = a9_scu_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo a9_scu_info = { diff --git a/hw/apb_pci.c b/hw/apb_pci.c index 7eb0c2b..9198de7 100644 --- a/hw/apb_pci.c +++ b/hw/apb_pci.c @@ -500,6 +500,7 @@ static void pbm_host_class_init(ObjectClass *klass, void *data) k->init = pci_pbm_init_device; dc->reset = pci_pbm_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pbm_host_info = { diff --git a/hw/arm_sysctl.c b/hw/arm_sysctl.c index 7ecb7da..391709a 100644 --- a/hw/arm_sysctl.c +++ b/hw/arm_sysctl.c @@ -411,6 +411,7 @@ static void arm_sysctl_class_init(ObjectClass *klass, void *data) dc->reset = arm_sysctl_reset; dc->vmsd = &vmstate_arm_sysctl; dc->props = arm_sysctl_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo arm_sysctl_info = { diff --git a/hw/arm_timer.c b/hw/arm_timer.c index c1e56be..5d7182a 100644 --- a/hw/arm_timer.c +++ b/hw/arm_timer.c @@ -359,6 +359,7 @@ static void icp_pit_class_init(ObjectClass *klass, void *data) SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); sdc->init = icp_pit_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo icp_pit_info = { @@ -381,6 +382,7 @@ static void sp804_class_init(ObjectClass *klass, void *data) sdc->init = sp804_init; k->props = sp804_properties; + k->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo sp804_info = { diff --git a/hw/armv7m.c b/hw/armv7m.c index 904696c..f9da127 100644 --- a/hw/armv7m.c +++ b/hw/armv7m.c @@ -267,6 +267,7 @@ static void bitband_class_init(ObjectClass *klass, void *data) k->init = bitband_init; dc->props = bitband_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo bitband_info = { diff --git a/hw/bitbang_i2c.c b/hw/bitbang_i2c.c index 114508f..a153a98 100644 --- a/hw/bitbang_i2c.c +++ b/hw/bitbang_i2c.c @@ -228,6 +228,7 @@ static void gpio_i2c_class_init(ObjectClass *klass, void *data) k->init = gpio_i2c_init; dc->desc = "Virtual GPIO to I2C bridge"; + dc->no_user = 1; /* for gpio pins */ } static const TypeInfo gpio_i2c_info = { diff --git a/hw/cadence_ttc.c b/hw/cadence_ttc.c index 67028a3..7a7aff4 100644 --- a/hw/cadence_ttc.c +++ b/hw/cadence_ttc.c @@ -472,6 +472,7 @@ static void cadence_ttc_class_init(ObjectClass *klass, void *data) sdc->init = cadence_ttc_init; dc->vmsd = &vmstate_cadence_ttc; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo cadence_ttc_info = { diff --git a/hw/cadence_uart.c b/hw/cadence_uart.c index 5766d38..7d40d0e 100644 --- a/hw/cadence_uart.c +++ b/hw/cadence_uart.c @@ -500,6 +500,7 @@ static void cadence_uart_class_init(ObjectClass *klass, void *data) sdc->init = cadence_uart_init; dc->vmsd = &vmstate_cadence_uart; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo cadence_uart_info = { diff --git a/hw/cs4231.c b/hw/cs4231.c index ae384b9..ce7c020 100644 --- a/hw/cs4231.c +++ b/hw/cs4231.c @@ -164,6 +164,7 @@ static void cs4231_class_init(ObjectClass *klass, void *data) dc->reset = cs_reset; dc->vmsd = &vmstate_cs4231; dc->props = cs4231_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo cs4231_info = { diff --git a/hw/ds1225y.c b/hw/ds1225y.c index a6219a7..cb5b835 100644 --- a/hw/ds1225y.c +++ b/hw/ds1225y.c @@ -148,6 +148,7 @@ static void nvram_sysbus_class_init(ObjectClass *klass, void *data) k->init = nvram_sysbus_initfn; dc->vmsd = &vmstate_nvram; dc->props = nvram_sysbus_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo nvram_sysbus_info = { diff --git a/hw/eccmemctl.c b/hw/eccmemctl.c index dbac2c2..6f28a6b 100644 --- a/hw/eccmemctl.c +++ b/hw/eccmemctl.c @@ -322,6 +322,7 @@ static void ecc_class_init(ObjectClass *klass, void *data) dc->reset = ecc_reset; dc->vmsd = &vmstate_ecc; dc->props = ecc_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo ecc_info = { diff --git a/hw/empty_slot.c b/hw/empty_slot.c index d7b5497..8802ca7 100644 --- a/hw/empty_slot.c +++ b/hw/empty_slot.c @@ -81,6 +81,7 @@ static void empty_slot_class_init(ObjectClass *klass, void *data) SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); k->init = empty_slot_init1; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo empty_slot_info = { diff --git a/hw/escc.c b/hw/escc.c index 18c0292..49fabf0 100644 --- a/hw/escc.c +++ b/hw/escc.c @@ -921,6 +921,7 @@ static void escc_class_init(ObjectClass *klass, void *data) dc->reset = escc_reset; dc->vmsd = &vmstate_escc; dc->props = escc_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo escc_info = { diff --git a/hw/esp.c b/hw/esp.c index 2af48aa..723c221 100644 --- a/hw/esp.c +++ b/hw/esp.c @@ -710,6 +710,7 @@ static void sysbus_esp_class_init(ObjectClass *klass, void *data) k->init = sysbus_esp_init; dc->reset = sysbus_esp_hard_reset; dc->vmsd = &vmstate_sysbus_esp_scsi; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo sysbus_esp_info = { diff --git a/hw/etraxfs_pic.c b/hw/etraxfs_pic.c index 64af31c..156f006 100644 --- a/hw/etraxfs_pic.c +++ b/hw/etraxfs_pic.c @@ -163,6 +163,7 @@ static void etraxfs_pic_class_init(ObjectClass *klass, void *data) k->init = etraxfs_pic_init; dc->props = etraxfs_pic_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo etraxfs_pic_info = { diff --git a/hw/etraxfs_ser.c b/hw/etraxfs_ser.c index 72c8868..b3ca719 100644 --- a/hw/etraxfs_ser.c +++ b/hw/etraxfs_ser.c @@ -231,6 +231,7 @@ static void etraxfs_ser_class_init(ObjectClass *klass, void *data) k->init = etraxfs_ser_init; dc->reset = etraxfs_ser_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo etraxfs_ser_info = { diff --git a/hw/etraxfs_timer.c b/hw/etraxfs_timer.c index d3dac52..cc503cb 100644 --- a/hw/etraxfs_timer.c +++ b/hw/etraxfs_timer.c @@ -334,6 +334,7 @@ static void etraxfs_timer_class_init(ObjectClass *klass, void *data) SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); sdc->init = etraxfs_timer_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo etraxfs_timer_info = { diff --git a/hw/exynos4210_combiner.c b/hw/exynos4210_combiner.c index ba644b4..6caae38 100644 --- a/hw/exynos4210_combiner.c +++ b/hw/exynos4210_combiner.c @@ -438,6 +438,7 @@ static void exynos4210_combiner_class_init(ObjectClass *klass, void *data) dc->reset = exynos4210_combiner_reset; dc->props = exynos4210_combiner_properties; dc->vmsd = &vmstate_exynos4210_combiner; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo exynos4210_combiner_info = { diff --git a/hw/exynos4210_fimd.c b/hw/exynos4210_fimd.c index 3d498b7..be946d4 100644 --- a/hw/exynos4210_fimd.c +++ b/hw/exynos4210_fimd.c @@ -1910,6 +1910,7 @@ static void exynos4210_fimd_class_init(ObjectClass *klass, void *data) dc->vmsd = &exynos4210_fimd_vmstate; dc->reset = exynos4210_fimd_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ k->init = exynos4210_fimd_init; } diff --git a/hw/exynos4210_gic.c b/hw/exynos4210_gic.c index 94b138f..8a47ead 100644 --- a/hw/exynos4210_gic.c +++ b/hw/exynos4210_gic.c @@ -344,6 +344,7 @@ static void exynos4210_gic_class_init(ObjectClass *klass, void *data) k->init = exynos4210_gic_init; dc->props = exynos4210_gic_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo exynos4210_gic_info = { @@ -445,6 +446,7 @@ static void exynos4210_irq_gate_class_init(ObjectClass *klass, void *data) dc->reset = exynos4210_irq_gate_reset; dc->vmsd = &vmstate_exynos4210_irq_gate; dc->props = exynos4210_irq_gate_properties; + dc->no_user = 1; /* for sysbus irq */ } static const TypeInfo exynos4210_irq_gate_info = { diff --git a/hw/exynos4210_i2c.c b/hw/exynos4210_i2c.c index cefd736..c546aa6 100644 --- a/hw/exynos4210_i2c.c +++ b/hw/exynos4210_i2c.c @@ -316,6 +316,7 @@ static void exynos4210_i2c_class_init(ObjectClass *klass, void *data) dc->vmsd = &exynos4210_i2c_vmstate; dc->reset = exynos4210_i2c_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ sbdc->init = exynos4210_i2c_realize; } diff --git a/hw/exynos4210_mct.c b/hw/exynos4210_mct.c index d7d5904..5c66db3 100644 --- a/hw/exynos4210_mct.c +++ b/hw/exynos4210_mct.c @@ -1465,6 +1465,7 @@ static void exynos4210_mct_class_init(ObjectClass *klass, void *data) k->init = exynos4210_mct_init; dc->reset = exynos4210_mct_reset; dc->vmsd = &vmstate_exynos4210_mct_state; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo exynos4210_mct_info = { diff --git a/hw/exynos4210_pmu.c b/hw/exynos4210_pmu.c index 7c81a1b..23225ca 100644 --- a/hw/exynos4210_pmu.c +++ b/hw/exynos4210_pmu.c @@ -482,6 +482,7 @@ static void exynos4210_pmu_class_init(ObjectClass *klass, void *data) k->init = exynos4210_pmu_init; dc->reset = exynos4210_pmu_reset; dc->vmsd = &exynos4210_pmu_vmstate; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo exynos4210_pmu_info = { diff --git a/hw/exynos4210_pwm.c b/hw/exynos4210_pwm.c index c865624..1b2fd7d 100644 --- a/hw/exynos4210_pwm.c +++ b/hw/exynos4210_pwm.c @@ -405,6 +405,7 @@ static void exynos4210_pwm_class_init(ObjectClass *klass, void *data) k->init = exynos4210_pwm_init; dc->reset = exynos4210_pwm_reset; dc->vmsd = &vmstate_exynos4210_pwm_state; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo exynos4210_pwm_info = { diff --git a/hw/exynos4210_rtc.c b/hw/exynos4210_rtc.c index 5694a62..b83dfca 100644 --- a/hw/exynos4210_rtc.c +++ b/hw/exynos4210_rtc.c @@ -575,6 +575,7 @@ static void exynos4210_rtc_class_init(ObjectClass *klass, void *data) k->init = exynos4210_rtc_init; dc->reset = exynos4210_rtc_reset; dc->vmsd = &vmstate_exynos4210_rtc_state; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo exynos4210_rtc_info = { diff --git a/hw/exynos4210_uart.c b/hw/exynos4210_uart.c index bdf797a..8fbd4b8 100644 --- a/hw/exynos4210_uart.c +++ b/hw/exynos4210_uart.c @@ -659,6 +659,7 @@ static void exynos4210_uart_class_init(ObjectClass *klass, void *data) dc->reset = exynos4210_uart_reset; dc->props = exynos4210_uart_properties; dc->vmsd = &vmstate_exynos4210_uart; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo exynos4210_uart_info = { diff --git a/hw/fdc.c b/hw/fdc.c index 976a587..7fa3576 100644 --- a/hw/fdc.c +++ b/hw/fdc.c @@ -2242,6 +2242,7 @@ static void sysbus_fdc_class_init(ObjectClass *klass, void *data) dc->reset = fdctrl_external_reset_sysbus; dc->vmsd = &vmstate_sysbus_fdc; dc->props = sysbus_fdc_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo sysbus_fdc_info = { @@ -2265,6 +2266,7 @@ static void sun4m_fdc_class_init(ObjectClass *klass, void *data) dc->reset = fdctrl_external_reset_sysbus; dc->vmsd = &vmstate_sysbus_fdc; dc->props = sun4m_fdc_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo sun4m_fdc_info = { diff --git a/hw/g364fb.c b/hw/g364fb.c index 0c0c8ba..e897838 100644 --- a/hw/g364fb.c +++ b/hw/g364fb.c @@ -595,6 +595,7 @@ static void g364fb_sysbus_class_init(ObjectClass *klass, void *data) dc->reset = g364fb_sysbus_reset; dc->vmsd = &vmstate_g364fb; dc->props = g364fb_sysbus_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo g364fb_sysbus_info = { diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c index ad0094f..f27c05e 100644 --- a/hw/ide/ahci.c +++ b/hw/ide/ahci.c @@ -1321,6 +1321,7 @@ static void sysbus_ahci_class_init(ObjectClass *klass, void *data) dc->vmsd = &vmstate_sysbus_ahci; dc->props = sysbus_ahci_properties; dc->reset = sysbus_ahci_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo sysbus_ahci_info = { diff --git a/hw/imx_avic.c b/hw/imx_avic.c index f1f066c..9a4a019 100644 --- a/hw/imx_avic.c +++ b/hw/imx_avic.c @@ -391,6 +391,7 @@ static void imx_avic_class_init(ObjectClass *klass, void *data) dc->vmsd = &vmstate_imx_avic; dc->reset = imx_avic_reset; dc->desc = "i.MX Advanced Vector Interrupt Controller"; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo imx_avic_info = { diff --git a/hw/imx_ccm.c b/hw/imx_ccm.c index 477903a..e20f339 100644 --- a/hw/imx_ccm.c +++ b/hw/imx_ccm.c @@ -304,6 +304,7 @@ static void imx_ccm_class_init(ObjectClass *klass, void *data) dc->reset = imx_ccm_reset; dc->vmsd = &vmstate_imx_ccm; dc->desc = "i.MX Clock Control Module"; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo imx_ccm_info = { diff --git a/hw/imx_serial.c b/hw/imx_serial.c index 2d8253e..24fd96f 100644 --- a/hw/imx_serial.c +++ b/hw/imx_serial.c @@ -450,6 +450,7 @@ static void imx_serial_class_init(ObjectClass *klass, void *data) dc->reset = imx_serial_reset_at_boot; dc->desc = "i.MX series UART"; dc->props = imx32_serial_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo imx_serial_info = { diff --git a/hw/imx_timer.c b/hw/imx_timer.c index e924c74..feba982 100644 --- a/hw/imx_timer.c +++ b/hw/imx_timer.c @@ -654,6 +654,7 @@ static void imx_timerg_class_init(ObjectClass *klass, void *data) dc->vmsd = &vmstate_imx_timerg; dc->reset = imx_timerg_reset; dc->desc = "i.MX general timer"; + dc->no_user = 1; /* for sysbus mmio/irq */ } static void imx_timerp_class_init(ObjectClass *klass, void *data) @@ -664,6 +665,7 @@ static void imx_timerp_class_init(ObjectClass *klass, void *data) dc->vmsd = &vmstate_imx_timerp; dc->reset = imx_timerp_reset; dc->desc = "i.MX periodic timer"; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo imx_timerp_info = { diff --git a/hw/integratorcp.c b/hw/integratorcp.c index 9e3630a..dd8cd1d 100644 --- a/hw/integratorcp.c +++ b/hw/integratorcp.c @@ -534,6 +534,7 @@ static void core_class_init(ObjectClass *klass, void *data) k->init = integratorcm_init; dc->props = core_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo core_info = { diff --git a/hw/jazz_led.c b/hw/jazz_led.c index 4822c48..4e6dfd9 100644 --- a/hw/jazz_led.c +++ b/hw/jazz_led.c @@ -275,6 +275,7 @@ static void jazz_led_class_init(ObjectClass *klass, void *data) dc->desc = "Jazz LED display", dc->vmsd = &vmstate_jazz_led; dc->reset = jazz_led_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo jazz_led_info = { diff --git a/hw/lan9118.c b/hw/lan9118.c index 0e844e5..16bff88 100644 --- a/hw/lan9118.c +++ b/hw/lan9118.c @@ -1366,6 +1366,7 @@ static void lan9118_class_init(ObjectClass *klass, void *data) dc->reset = lan9118_reset; dc->props = lan9118_properties; dc->vmsd = &vmstate_lan9118; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo lan9118_info = { diff --git a/hw/lm32_timer.c b/hw/lm32_timer.c index db527e9..6da6ace 100644 --- a/hw/lm32_timer.c +++ b/hw/lm32_timer.c @@ -213,6 +213,7 @@ static void lm32_timer_class_init(ObjectClass *klass, void *data) dc->reset = timer_reset; dc->vmsd = &vmstate_lm32_timer; dc->props = lm32_timer_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo lm32_timer_info = { diff --git a/hw/lm32_uart.c b/hw/lm32_uart.c index 9c89cca..94f6aa6 100644 --- a/hw/lm32_uart.c +++ b/hw/lm32_uart.c @@ -279,6 +279,7 @@ static void lm32_uart_class_init(ObjectClass *klass, void *data) k->init = lm32_uart_init; dc->reset = uart_reset; dc->vmsd = &vmstate_lm32_uart; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo lm32_uart_info = { diff --git a/hw/marvell_88w8618_audio.c b/hw/marvell_88w8618_audio.c index c792caf..2915844 100644 --- a/hw/marvell_88w8618_audio.c +++ b/hw/marvell_88w8618_audio.c @@ -286,6 +286,7 @@ static void mv88w8618_audio_class_init(ObjectClass *klass, void *data) dc->reset = mv88w8618_audio_reset; dc->vmsd = &mv88w8618_audio_vmsd; dc->props = mv88w8618_audio_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo mv88w8618_audio_info = { diff --git a/hw/milkymist-ac97.c b/hw/milkymist-ac97.c index d51d1ac..f6e8730 100644 --- a/hw/milkymist-ac97.c +++ b/hw/milkymist-ac97.c @@ -327,6 +327,7 @@ static void milkymist_ac97_class_init(ObjectClass *klass, void *data) k->init = milkymist_ac97_init; dc->reset = milkymist_ac97_reset; dc->vmsd = &vmstate_milkymist_ac97; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo milkymist_ac97_info = { diff --git a/hw/milkymist-hpdmc.c b/hw/milkymist-hpdmc.c index ea4d210..5f77d67 100644 --- a/hw/milkymist-hpdmc.c +++ b/hw/milkymist-hpdmc.c @@ -153,6 +153,7 @@ static void milkymist_hpdmc_class_init(ObjectClass *klass, void *data) k->init = milkymist_hpdmc_init; dc->reset = milkymist_hpdmc_reset; dc->vmsd = &vmstate_milkymist_hpdmc; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo milkymist_hpdmc_info = { diff --git a/hw/milkymist-memcard.c b/hw/milkymist-memcard.c index 9d15309..8fc44b4 100644 --- a/hw/milkymist-memcard.c +++ b/hw/milkymist-memcard.c @@ -286,6 +286,7 @@ static void milkymist_memcard_class_init(ObjectClass *klass, void *data) k->init = milkymist_memcard_init; dc->reset = milkymist_memcard_reset; dc->vmsd = &vmstate_milkymist_memcard; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo milkymist_memcard_info = { diff --git a/hw/milkymist-minimac2.c b/hw/milkymist-minimac2.c index 9992dcc..7875bd8 100644 --- a/hw/milkymist-minimac2.c +++ b/hw/milkymist-minimac2.c @@ -533,6 +533,7 @@ static void milkymist_minimac2_class_init(ObjectClass *klass, void *data) dc->reset = milkymist_minimac2_reset; dc->vmsd = &vmstate_milkymist_minimac2; dc->props = milkymist_minimac2_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo milkymist_minimac2_info = { diff --git a/hw/milkymist-softusb.c b/hw/milkymist-softusb.c index 01660be..3dc6438 100644 --- a/hw/milkymist-softusb.c +++ b/hw/milkymist-softusb.c @@ -314,6 +314,7 @@ static void milkymist_softusb_class_init(ObjectClass *klass, void *data) dc->reset = milkymist_softusb_reset; dc->vmsd = &vmstate_milkymist_softusb; dc->props = milkymist_softusb_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo milkymist_softusb_info = { diff --git a/hw/mipsnet.c b/hw/mipsnet.c index ff6bf7f..5887bb2 100644 --- a/hw/mipsnet.c +++ b/hw/mipsnet.c @@ -267,6 +267,7 @@ static void mipsnet_class_init(ObjectClass *klass, void *data) dc->reset = mipsnet_sysbus_reset; dc->vmsd = &vmstate_mipsnet; dc->props = mipsnet_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo mipsnet_info = { diff --git a/hw/mpc8544_guts.c b/hw/mpc8544_guts.c index 728723c..de6d037 100644 --- a/hw/mpc8544_guts.c +++ b/hw/mpc8544_guts.c @@ -126,6 +126,7 @@ static void mpc8544_guts_class_init(ObjectClass *klass, void *data) SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); k->init = mpc8544_guts_initfn; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo mpc8544_guts_info = { diff --git a/hw/mst_fpga.c b/hw/mst_fpga.c index 7ae05e3..0a5fe7e 100644 --- a/hw/mst_fpga.c +++ b/hw/mst_fpga.c @@ -246,6 +246,7 @@ static void mst_fpga_class_init(ObjectClass *klass, void *data) k->init = mst_fpga_init; dc->desc = "Mainstone II FPGA"; dc->vmsd = &vmstate_mst_fpga_regs; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo mst_fpga_info = { diff --git a/hw/musicpal.c b/hw/musicpal.c index 272cb80..e844daf 100644 --- a/hw/musicpal.c +++ b/hw/musicpal.c @@ -641,6 +641,7 @@ static void musicpal_lcd_class_init(ObjectClass *klass, void *data) k->init = musicpal_lcd_init; dc->vmsd = &musicpal_lcd_vmsd; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo musicpal_lcd_info = { @@ -760,6 +761,7 @@ static void mv88w8618_pic_class_init(ObjectClass *klass, void *data) k->init = mv88w8618_pic_init; dc->reset = mv88w8618_pic_reset; dc->vmsd = &mv88w8618_pic_vmsd; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo mv88w8618_pic_info = { @@ -937,6 +939,7 @@ static void mv88w8618_pit_class_init(ObjectClass *klass, void *data) k->init = mv88w8618_pit_init; dc->reset = mv88w8618_pit_reset; dc->vmsd = &mv88w8618_pit_vmsd; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo mv88w8618_pit_info = { @@ -1017,6 +1020,7 @@ static void mv88w8618_flashcfg_class_init(ObjectClass *klass, void *data) k->init = mv88w8618_flashcfg_init; dc->vmsd = &mv88w8618_flashcfg_vmsd; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo mv88w8618_flashcfg_info = { @@ -1339,6 +1343,7 @@ static void musicpal_gpio_class_init(ObjectClass *klass, void *data) k->init = musicpal_gpio_init; dc->reset = musicpal_gpio_reset; dc->vmsd = &musicpal_gpio_vmsd; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo musicpal_gpio_info = { @@ -1493,6 +1498,7 @@ static void musicpal_key_class_init(ObjectClass *klass, void *data) k->init = musicpal_key_init; dc->vmsd = &musicpal_key_vmsd; + dc->no_user = 1; /* for gpio */ } static const TypeInfo musicpal_key_info = { @@ -1671,8 +1677,10 @@ machine_init(musicpal_machine_init); static void mv88w8618_wlan_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = mv88w8618_wlan_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo mv88w8618_wlan_info = { diff --git a/hw/omap_gpio.c b/hw/omap_gpio.c index aadf1cc..2d81a6a 100644 --- a/hw/omap_gpio.c +++ b/hw/omap_gpio.c @@ -745,6 +745,7 @@ static void omap_gpio_class_init(ObjectClass *klass, void *data) k->init = omap_gpio_init; dc->reset = omap_gpif_reset; dc->props = omap_gpio_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo omap_gpio_info = { @@ -774,6 +775,7 @@ static void omap2_gpio_class_init(ObjectClass *klass, void *data) k->init = omap2_gpio_init; dc->reset = omap2_gpif_reset; dc->props = omap2_gpio_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo omap2_gpio_info = { diff --git a/hw/omap_i2c.c b/hw/omap_i2c.c index 143b198..8f8c738 100644 --- a/hw/omap_i2c.c +++ b/hw/omap_i2c.c @@ -469,6 +469,7 @@ static void omap_i2c_class_init(ObjectClass *klass, void *data) k->init = omap_i2c_init; dc->props = omap_i2c_properties; dc->reset = omap_i2c_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo omap_i2c_info = { diff --git a/hw/omap_intc.c b/hw/omap_intc.c index 4b0acd0..37c1965 100644 --- a/hw/omap_intc.c +++ b/hw/omap_intc.c @@ -387,6 +387,7 @@ static void omap_intc_class_init(ObjectClass *klass, void *data) k->init = omap_intc_init; dc->reset = omap_inth_reset; dc->props = omap_intc_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo omap_intc_info = { @@ -631,6 +632,7 @@ static void omap2_intc_class_init(ObjectClass *klass, void *data) k->init = omap2_intc_init; dc->reset = omap_inth_reset; dc->props = omap2_intc_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo omap2_intc_info = { diff --git a/hw/onenand.c b/hw/onenand.c index 00a8738..ab70ca0 100644 --- a/hw/onenand.c +++ b/hw/onenand.c @@ -819,6 +819,7 @@ static void onenand_class_init(ObjectClass *klass, void *data) k->init = onenand_initfn; dc->reset = onenand_system_reset; dc->props = onenand_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo onenand_info = { diff --git a/hw/opencores_eth.c b/hw/opencores_eth.c index f9ba5ee..5f93475 100644 --- a/hw/opencores_eth.c +++ b/hw/opencores_eth.c @@ -716,6 +716,7 @@ static void open_eth_class_init(ObjectClass *klass, void *data) dc->desc = "Opencores 10/100 Mbit Ethernet"; dc->reset = qdev_open_eth_reset; dc->props = open_eth_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo open_eth_info = { diff --git a/hw/openpic.c b/hw/openpic.c index 20a479c..07dfd59 100644 --- a/hw/openpic.c +++ b/hw/openpic.c @@ -1644,6 +1644,7 @@ static void openpic_class_init(ObjectClass *klass, void *data) k->init = openpic_init; dc->props = openpic_properties; dc->reset = openpic_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo openpic_info = { diff --git a/hw/pc_sysfw.c b/hw/pc_sysfw.c index 7f6c12c..785e7f4 100644 --- a/hw/pc_sysfw.c +++ b/hw/pc_sysfw.c @@ -254,6 +254,7 @@ static void pcsysfw_class_init (ObjectClass *klass, void *data) dc->desc = "PC System Firmware"; dc->init = pcsysfw_init; dc->props = pcsysfw_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pcsysfw_info = { diff --git a/hw/pflash_cfi01.c b/hw/pflash_cfi01.c index 123b006..0524cc8 100644 --- a/hw/pflash_cfi01.c +++ b/hw/pflash_cfi01.c @@ -707,6 +707,7 @@ static void pflash_cfi01_class_init(ObjectClass *klass, void *data) k->init = pflash_cfi01_init; dc->props = pflash_cfi01_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } diff --git a/hw/pflash_cfi02.c b/hw/pflash_cfi02.c index 44bd465..ee1c530 100644 --- a/hw/pflash_cfi02.c +++ b/hw/pflash_cfi02.c @@ -734,6 +734,7 @@ static void pflash_cfi02_class_init(ObjectClass *klass, void *data) k->init = pflash_cfi02_init; dc->props = pflash_cfi02_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pflash_cfi02_info = { diff --git a/hw/pl011.c b/hw/pl011.c index 002a50e..2910684 100644 --- a/hw/pl011.c +++ b/hw/pl011.c @@ -296,8 +296,10 @@ static int pl011_luminary_init(SysBusDevice *dev) static void pl011_arm_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = pl011_arm_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl011_arm_info = { @@ -310,8 +312,10 @@ static const TypeInfo pl011_arm_info = { static void pl011_luminary_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = pl011_luminary_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl011_luminary_info = { diff --git a/hw/pl022.c b/hw/pl022.c index c160e90..2159cc4 100644 --- a/hw/pl022.c +++ b/hw/pl022.c @@ -291,6 +291,7 @@ static void pl022_class_init(ObjectClass *klass, void *data) SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); sdc->init = pl022_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl022_info = { diff --git a/hw/pl050.c b/hw/pl050.c index 5d06bc9..d3efdd9 100644 --- a/hw/pl050.c +++ b/hw/pl050.c @@ -166,6 +166,7 @@ static void pl050_kbd_class_init(ObjectClass *klass, void *data) k->init = pl050_init_keyboard; dc->vmsd = &vmstate_pl050; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl050_kbd_info = { @@ -182,6 +183,7 @@ static void pl050_mouse_class_init(ObjectClass *klass, void *data) k->init = pl050_init_mouse; dc->vmsd = &vmstate_pl050; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl050_mouse_info = { diff --git a/hw/pl061.c b/hw/pl061.c index a78e819..c919f56 100644 --- a/hw/pl061.c +++ b/hw/pl061.c @@ -302,6 +302,7 @@ static void pl061_class_init(ObjectClass *klass, void *data) k->init = pl061_init_arm; dc->vmsd = &vmstate_pl061; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl061_info = { @@ -318,6 +319,7 @@ static void pl061_luminary_class_init(ObjectClass *klass, void *data) k->init = pl061_init_luminary; dc->vmsd = &vmstate_pl061; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl061_luminary_info = { diff --git a/hw/pl080.c b/hw/pl080.c index f6bbf98..d6e52b2 100644 --- a/hw/pl080.c +++ b/hw/pl080.c @@ -384,6 +384,7 @@ static void pl080_class_init(ObjectClass *klass, void *data) k->init = pl080_init; dc->no_user = 1; dc->vmsd = &vmstate_pl080; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl080_info = { @@ -401,6 +402,7 @@ static void pl081_class_init(ObjectClass *klass, void *data) k->init = pl081_init; dc->no_user = 1; dc->vmsd = &vmstate_pl080; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pl081_info = { diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c index 451682c..6a09671 100644 --- a/hw/ppc/e500.c +++ b/hw/ppc/e500.c @@ -684,6 +684,7 @@ static void e500_ccsr_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); k->init = e500_ccsr_initfn; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo e500_ccsr_info = { diff --git a/hw/ppce500_pci.c b/hw/ppce500_pci.c index 1e1ade3..03f054a 100644 --- a/hw/ppce500_pci.c +++ b/hw/ppce500_pci.c @@ -387,6 +387,7 @@ static void e500_host_bridge_class_init(ObjectClass *klass, void *data) k->device_id = PCI_DEVICE_ID_MPC8533E; k->class_id = PCI_CLASS_PROCESSOR_POWERPC; dc->desc = "Host bridge"; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo e500_host_bridge_info = { diff --git a/hw/ppce500_spin.c b/hw/ppce500_spin.c index 5bdce52..5b4e027 100644 --- a/hw/ppce500_spin.c +++ b/hw/ppce500_spin.c @@ -205,6 +205,7 @@ static void ppce500_spin_class_init(ObjectClass *klass, void *data) SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); k->init = ppce500_spin_initfn; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo ppce500_spin_info = { diff --git a/hw/puv3_dma.c b/hw/puv3_dma.c index 9de63b4..f3731c5 100644 --- a/hw/puv3_dma.c +++ b/hw/puv3_dma.c @@ -90,8 +90,10 @@ static int puv3_dma_init(SysBusDevice *dev) static void puv3_dma_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = puv3_dma_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo puv3_dma_info = { diff --git a/hw/puv3_gpio.c b/hw/puv3_gpio.c index 152248d..2259259 100644 --- a/hw/puv3_gpio.c +++ b/hw/puv3_gpio.c @@ -122,8 +122,10 @@ static int puv3_gpio_init(SysBusDevice *dev) static void puv3_gpio_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = puv3_gpio_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo puv3_gpio_info = { diff --git a/hw/puv3_intc.c b/hw/puv3_intc.c index 07f5649..c968ed1 100644 --- a/hw/puv3_intc.c +++ b/hw/puv3_intc.c @@ -116,8 +116,10 @@ static int puv3_intc_init(SysBusDevice *dev) static void puv3_intc_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = puv3_intc_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo puv3_intc_info = { diff --git a/hw/puv3_ost.c b/hw/puv3_ost.c index 14c6f21..f5556d0 100644 --- a/hw/puv3_ost.c +++ b/hw/puv3_ost.c @@ -132,8 +132,10 @@ static int puv3_ost_init(SysBusDevice *dev) static void puv3_ost_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = puv3_ost_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo puv3_ost_info = { diff --git a/hw/puv3_pm.c b/hw/puv3_pm.c index 87a687a..9a1bcd3 100644 --- a/hw/puv3_pm.c +++ b/hw/puv3_pm.c @@ -130,8 +130,10 @@ static int puv3_pm_init(SysBusDevice *dev) static void puv3_pm_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = puv3_pm_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo puv3_pm_info = { diff --git a/hw/pxa2xx.c b/hw/pxa2xx.c index d303320..d6fe863 100644 --- a/hw/pxa2xx.c +++ b/hw/pxa2xx.c @@ -1192,6 +1192,7 @@ static void pxa2xx_rtc_sysbus_class_init(ObjectClass *klass, void *data) k->init = pxa2xx_rtc_init; dc->desc = "PXA2xx RTC Controller"; dc->vmsd = &vmstate_pxa2xx_rtc_regs; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pxa2xx_rtc_sysbus_info = { @@ -1508,6 +1509,7 @@ static void pxa2xx_i2c_class_init(ObjectClass *klass, void *data) dc->desc = "PXA2xx I2C Bus Controller"; dc->vmsd = &vmstate_pxa2xx_i2c; dc->props = pxa2xx_i2c_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pxa2xx_i2c_info = { @@ -2269,8 +2271,10 @@ PXA2xxState *pxa255_init(MemoryRegion *address_space, unsigned int sdram_size) static void pxa2xx_ssp_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = pxa2xx_ssp_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pxa2xx_ssp_info = { diff --git a/hw/pxa2xx_dma.c b/hw/pxa2xx_dma.c index c0dba45..8df1cdc 100644 --- a/hw/pxa2xx_dma.c +++ b/hw/pxa2xx_dma.c @@ -557,6 +557,7 @@ static void pxa2xx_dma_class_init(ObjectClass *klass, void *data) dc->desc = "PXA2xx DMA controller"; dc->vmsd = &vmstate_pxa2xx_dma; dc->props = pxa2xx_dma_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pxa2xx_dma_info = { diff --git a/hw/pxa2xx_gpio.c b/hw/pxa2xx_gpio.c index 05d2ad2..81bbf47 100644 --- a/hw/pxa2xx_gpio.c +++ b/hw/pxa2xx_gpio.c @@ -333,6 +333,7 @@ static void pxa2xx_gpio_class_init(ObjectClass *klass, void *data) k->init = pxa2xx_gpio_initfn; dc->desc = "PXA2xx GPIO controller"; dc->props = pxa2xx_gpio_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pxa2xx_gpio_info = { diff --git a/hw/pxa2xx_pic.c b/hw/pxa2xx_pic.c index 90b8fef..e576b93 100644 --- a/hw/pxa2xx_pic.c +++ b/hw/pxa2xx_pic.c @@ -317,6 +317,7 @@ static void pxa2xx_pic_class_init(ObjectClass *klass, void *data) k->init = pxa2xx_pic_initfn; dc->desc = "PXA2xx PIC"; dc->vmsd = &vmstate_pxa2xx_pic_regs; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pxa2xx_pic_info = { diff --git a/hw/pxa2xx_timer.c b/hw/pxa2xx_timer.c index 5c9d2e8..c21f185 100644 --- a/hw/pxa2xx_timer.c +++ b/hw/pxa2xx_timer.c @@ -540,6 +540,7 @@ static void pxa25x_timer_dev_class_init(ObjectClass *klass, void *data) dc->desc = "PXA25x timer"; dc->vmsd = &vmstate_pxa2xx_timer_regs; dc->props = pxa25x_timer_dev_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pxa25x_timer_dev_info = { @@ -565,6 +566,7 @@ static void pxa27x_timer_dev_class_init(ObjectClass *klass, void *data) dc->desc = "PXA27x timer"; dc->vmsd = &vmstate_pxa2xx_timer_regs; dc->props = pxa27x_timer_dev_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pxa27x_timer_dev_info = { diff --git a/hw/realview_gic.c b/hw/realview_gic.c index 8f2a7e2..0f2b4f1 100644 --- a/hw/realview_gic.c +++ b/hw/realview_gic.c @@ -55,8 +55,10 @@ static int realview_gic_init(SysBusDevice *dev) static void realview_gic_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = realview_gic_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo realview_gic_info = { diff --git a/hw/sdhci.c b/hw/sdhci.c index e535df9..abcb3ae 100644 --- a/hw/sdhci.c +++ b/hw/sdhci.c @@ -1265,6 +1265,7 @@ static void sdhci_class_init(ObjectClass *klass, void *data) dc->props = sdhci_properties; dc->reset = sdhci_generic_reset; dc->realize = sdhci_realize; + dc->no_user = 1; /* for sysbus mmio/irq */ k->reset = sdhci_reset; k->mem_read = sdhci_read; diff --git a/hw/sh_pci.c b/hw/sh_pci.c index 077d957..60b21ed 100644 --- a/hw/sh_pci.c +++ b/hw/sh_pci.c @@ -166,8 +166,10 @@ static const TypeInfo sh_pci_host_info = { static void sh_pci_device_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = sh_pci_device_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo sh_pci_device_info = { diff --git a/hw/slavio_intctl.c b/hw/slavio_intctl.c index 136ceeb..fdb4877 100644 --- a/hw/slavio_intctl.c +++ b/hw/slavio_intctl.c @@ -454,6 +454,7 @@ static void slavio_intctl_class_init(ObjectClass *klass, void *data) k->init = slavio_intctl_init1; dc->reset = slavio_intctl_reset; dc->vmsd = &vmstate_intctl; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo slavio_intctl_info = { diff --git a/hw/slavio_misc.c b/hw/slavio_misc.c index af24cc1..cf7cb9e 100644 --- a/hw/slavio_misc.c +++ b/hw/slavio_misc.c @@ -476,6 +476,7 @@ static void slavio_misc_class_init(ObjectClass *klass, void *data) k->init = slavio_misc_init1; dc->reset = slavio_misc_reset; dc->vmsd = &vmstate_misc; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo slavio_misc_info = { @@ -488,8 +489,10 @@ static const TypeInfo slavio_misc_info = { static void apc_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(dc); k->init = apc_init1; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo apc_info = { diff --git a/hw/slavio_timer.c b/hw/slavio_timer.c index 68a4c0c..595d1f4 100644 --- a/hw/slavio_timer.c +++ b/hw/slavio_timer.c @@ -418,6 +418,7 @@ static void slavio_timer_class_init(ObjectClass *klass, void *data) dc->reset = slavio_timer_reset; dc->vmsd = &vmstate_slavio_timer; dc->props = slavio_timer_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo slavio_timer_info = { diff --git a/hw/smc91c111.c b/hw/smc91c111.c index 67fd074..0e4e2fc 100644 --- a/hw/smc91c111.c +++ b/hw/smc91c111.c @@ -773,6 +773,7 @@ static void smc91c111_class_init(ObjectClass *klass, void *data) dc->reset = smc91c111_reset; dc->vmsd = &vmstate_smc91c111; dc->props = smc91c111_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo smc91c111_info = { diff --git a/hw/sparc32_dma.c b/hw/sparc32_dma.c index 6d0df51..26f327d 100644 --- a/hw/sparc32_dma.c +++ b/hw/sparc32_dma.c @@ -298,6 +298,7 @@ static void sparc32_dma_class_init(ObjectClass *klass, void *data) dc->reset = dma_reset; dc->vmsd = &vmstate_dma; dc->props = sparc32_dma_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo sparc32_dma_info = { diff --git a/hw/spitz.c b/hw/spitz.c index 5bc49fc..d338bd6 100644 --- a/hw/spitz.c +++ b/hw/spitz.c @@ -1024,6 +1024,7 @@ static void sl_nand_class_init(ObjectClass *klass, void *data) k->init = sl_nand_init; dc->vmsd = &vmstate_sl_nand_info; dc->props = sl_nand_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo sl_nand_info = { @@ -1059,6 +1060,7 @@ static void spitz_keyboard_class_init(ObjectClass *klass, void *data) k->init = spitz_keyboard_init; dc->vmsd = &vmstate_spitz_kbd; dc->props = spitz_keyboard_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo spitz_keyboard_info = { @@ -1088,6 +1090,7 @@ static void corgi_ssp_class_init(ObjectClass *klass, void *data) k->init = corgi_ssp_init; k->transfer = corgi_ssp_transfer; dc->vmsd = &vmstate_corgi_ssp_regs; + dc->no_user = 1; /* for gpio */ } static const TypeInfo corgi_ssp_info = { diff --git a/hw/stellaris.c b/hw/stellaris.c index 9b8f203..0786922 100644 --- a/hw/stellaris.c +++ b/hw/stellaris.c @@ -1352,8 +1352,10 @@ machine_init(stellaris_machine_init); static void stellaris_i2c_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = stellaris_i2c_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo stellaris_i2c_info = { @@ -1366,8 +1368,10 @@ static const TypeInfo stellaris_i2c_info = { static void stellaris_gptm_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = stellaris_gptm_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo stellaris_gptm_info = { @@ -1380,8 +1384,10 @@ static const TypeInfo stellaris_gptm_info = { static void stellaris_adc_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = stellaris_adc_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo stellaris_adc_info = { diff --git a/hw/stellaris_enet.c b/hw/stellaris_enet.c index 6c701fb..270862e 100644 --- a/hw/stellaris_enet.c +++ b/hw/stellaris_enet.c @@ -433,6 +433,7 @@ static void stellaris_enet_class_init(ObjectClass *klass, void *data) k->init = stellaris_enet_init; dc->props = stellaris_enet_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo stellaris_enet_info = { diff --git a/hw/strongarm.c b/hw/strongarm.c index ab736e3..ab61dec 100644 --- a/hw/strongarm.c +++ b/hw/strongarm.c @@ -210,6 +210,7 @@ static void strongarm_pic_class_init(ObjectClass *klass, void *data) k->init = strongarm_pic_initfn; dc->desc = "StrongARM PIC"; dc->vmsd = &vmstate_strongarm_pic_regs; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo strongarm_pic_info = { @@ -431,6 +432,7 @@ static void strongarm_rtc_sysbus_class_init(ObjectClass *klass, void *data) k->init = strongarm_rtc_init; dc->desc = "StrongARM RTC Controller"; dc->vmsd = &vmstate_strongarm_rtc_regs; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo strongarm_rtc_sysbus_info = { @@ -672,6 +674,7 @@ static void strongarm_gpio_class_init(ObjectClass *klass, void *data) k->init = strongarm_gpio_initfn; dc->desc = "StrongARM GPIO controller"; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo strongarm_gpio_info = { @@ -838,6 +841,7 @@ static void strongarm_ppc_class_init(ObjectClass *klass, void *data) k->init = strongarm_ppc_init; dc->desc = "StrongARM PPC controller"; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo strongarm_ppc_info = { @@ -1297,6 +1301,7 @@ static void strongarm_uart_class_init(ObjectClass *klass, void *data) dc->reset = strongarm_uart_reset; dc->vmsd = &vmstate_strongarm_uart_regs; dc->props = strongarm_uart_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo strongarm_uart_info = { diff --git a/hw/sun4m.c b/hw/sun4m.c index 9903f44..89dc058 100644 --- a/hw/sun4m.c +++ b/hw/sun4m.c @@ -629,8 +629,10 @@ static int idreg_init1(SysBusDevice *dev) static void idreg_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); k->init = idreg_init1; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo idreg_info = { @@ -671,8 +673,10 @@ static int afx_init1(SysBusDevice *dev) static void afx_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); k->init = afx_init1; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo afx_info = { @@ -750,6 +754,7 @@ static void prom_class_init(ObjectClass *klass, void *data) k->init = prom_init1; dc->props = prom_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo prom_info = { @@ -814,6 +819,7 @@ static void ram_class_init(ObjectClass *klass, void *data) k->init = ram_init1; dc->props = ram_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo ram_info = { diff --git a/hw/sun4m_iommu.c b/hw/sun4m_iommu.c index 8f9635f..8cbfeb9 100644 --- a/hw/sun4m_iommu.c +++ b/hw/sun4m_iommu.c @@ -371,6 +371,7 @@ static void iommu_class_init(ObjectClass *klass, void *data) dc->reset = iommu_reset; dc->vmsd = &vmstate_iommu; dc->props = iommu_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo iommu_info = { diff --git a/hw/tcx.c b/hw/tcx.c index 0ce2952..38681b5 100644 --- a/hw/tcx.c +++ b/hw/tcx.c @@ -714,6 +714,7 @@ static void tcx_class_init(ObjectClass *klass, void *data) dc->reset = tcx_reset; dc->vmsd = &vmstate_tcx; dc->props = tcx_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo tcx_info = { diff --git a/hw/tusb6010.c b/hw/tusb6010.c index 2c7d033..ac2357c 100644 --- a/hw/tusb6010.c +++ b/hw/tusb6010.c @@ -796,6 +796,7 @@ static void tusb6010_class_init(ObjectClass *klass, void *data) k->init = tusb6010_init; dc->reset = tusb6010_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo tusb6010_info = { diff --git a/hw/usb/hcd-ehci-sysbus.c b/hw/usb/hcd-ehci-sysbus.c index b68a66a..28f6070 100644 --- a/hw/usb/hcd-ehci-sysbus.c +++ b/hw/usb/hcd-ehci-sysbus.c @@ -56,6 +56,7 @@ static void ehci_sysbus_class_init(ObjectClass *klass, void *data) k->init = usb_ehci_sysbus_initfn; dc->vmsd = &vmstate_ehci_sysbus; dc->props = ehci_sysbus_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo ehci_type_info = { diff --git a/hw/usb/hcd-ohci.c b/hw/usb/hcd-ohci.c index 51241cd..2408e9e 100644 --- a/hw/usb/hcd-ohci.c +++ b/hw/usb/hcd-ohci.c @@ -1931,6 +1931,7 @@ static void ohci_sysbus_class_init(ObjectClass *klass, void *data) sbc->init = ohci_init_pxa; dc->desc = "OHCI USB Controller"; dc->props = ohci_sysbus_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo ohci_sysbus_info = { diff --git a/hw/versatile_i2c.c b/hw/versatile_i2c.c index ad71e9d..a5bbb42 100644 --- a/hw/versatile_i2c.c +++ b/hw/versatile_i2c.c @@ -88,8 +88,10 @@ static int versatile_i2c_init(SysBusDevice *dev) static void versatile_i2c_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); k->init = versatile_i2c_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo versatile_i2c_info = { diff --git a/hw/versatile_pci.c b/hw/versatile_pci.c index 9d99159..68a4f1a 100644 --- a/hw/versatile_pci.c +++ b/hw/versatile_pci.c @@ -143,8 +143,10 @@ static const TypeInfo pci_vpb_info = { static void pci_realview_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = pci_realview_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo pci_realview_info = { diff --git a/hw/xgmac.c b/hw/xgmac.c index 5072298..36c53de 100644 --- a/hw/xgmac.c +++ b/hw/xgmac.c @@ -416,6 +416,7 @@ static void xgmac_enet_class_init(ObjectClass *klass, void *data) sbc->init = xgmac_enet_init; dc->vmsd = &vmstate_xgmac; dc->props = xgmac_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo xgmac_enet_info = { diff --git a/hw/xilinx_axidma.c b/hw/xilinx_axidma.c index cc51584..35c7776 100644 --- a/hw/xilinx_axidma.c +++ b/hw/xilinx_axidma.c @@ -500,6 +500,7 @@ static void axidma_class_init(ObjectClass *klass, void *data) k->init = xilinx_axidma_init; dc->props = axidma_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ ssc->push = axidma_push; } diff --git a/hw/xilinx_axienet.c b/hw/xilinx_axienet.c index e5d9251..862ad08 100644 --- a/hw/xilinx_axienet.c +++ b/hw/xilinx_axienet.c @@ -892,6 +892,7 @@ static void xilinx_enet_class_init(ObjectClass *klass, void *data) k->init = xilinx_enet_init; dc->props = xilinx_enet_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ ssc->push = axienet_stream_push; } diff --git a/hw/xilinx_ethlite.c b/hw/xilinx_ethlite.c index 21c6f8c..d987d66 100644 --- a/hw/xilinx_ethlite.c +++ b/hw/xilinx_ethlite.c @@ -246,6 +246,7 @@ static void xilinx_ethlite_class_init(ObjectClass *klass, void *data) k->init = xilinx_ethlite_init; dc->props = xilinx_ethlite_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo xilinx_ethlite_info = { diff --git a/hw/xilinx_intc.c b/hw/xilinx_intc.c index 0c34149..9b8caad 100644 --- a/hw/xilinx_intc.c +++ b/hw/xilinx_intc.c @@ -173,6 +173,7 @@ static void xilinx_intc_class_init(ObjectClass *klass, void *data) k->init = xilinx_intc_init; dc->props = xilinx_intc_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo xilinx_intc_info = { diff --git a/hw/xilinx_spi.c b/hw/xilinx_spi.c index be581c2..785e858 100644 --- a/hw/xilinx_spi.c +++ b/hw/xilinx_spi.c @@ -368,6 +368,7 @@ static void xilinx_spi_class_init(ObjectClass *klass, void *data) dc->reset = xlx_spi_reset; dc->props = xilinx_spi_properties; dc->vmsd = &vmstate_xilinx_spi; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo xilinx_spi_info = { diff --git a/hw/xilinx_spips.c b/hw/xilinx_spips.c index 42e019d..91c496a 100644 --- a/hw/xilinx_spips.c +++ b/hw/xilinx_spips.c @@ -558,6 +558,7 @@ static void xilinx_spips_class_init(ObjectClass *klass, void *data) dc->reset = xilinx_spips_reset; dc->props = xilinx_spips_properties; dc->vmsd = &vmstate_xilinx_spips; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo xilinx_spips_info = { diff --git a/hw/xilinx_timer.c b/hw/xilinx_timer.c index aa162ef..3b614a6 100644 --- a/hw/xilinx_timer.c +++ b/hw/xilinx_timer.c @@ -238,6 +238,7 @@ static void xilinx_timer_class_init(ObjectClass *klass, void *data) k->init = xilinx_timer_init; dc->props = xilinx_timer_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo xilinx_timer_info = { diff --git a/hw/xilinx_uartlite.c b/hw/xilinx_uartlite.c index 9963982..e55212a 100644 --- a/hw/xilinx_uartlite.c +++ b/hw/xilinx_uartlite.c @@ -212,8 +212,10 @@ static int xilinx_uartlite_init(SysBusDevice *dev) static void xilinx_uartlite_class_init(ObjectClass *klass, void *data) { SysBusDeviceClass *sdc = SYS_BUS_DEVICE_CLASS(klass); + DeviceClass *dc = DEVICE_CLASS(klass); sdc->init = xilinx_uartlite_init; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo xilinx_uartlite_info = { diff --git a/hw/zaurus.c b/hw/zaurus.c index 2defe3b..b53f4c4 100644 --- a/hw/zaurus.c +++ b/hw/zaurus.c @@ -234,6 +234,7 @@ static void scoop_sysbus_class_init(ObjectClass *klass, void *data) dc->desc = "Scoop2 Sharp custom ASIC"; dc->vmsd = &vmstate_scoop_regs; dc->props = scoop_sysbus_properties; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo scoop_sysbus_info = { diff --git a/hw/zynq_slcr.c b/hw/zynq_slcr.c index 27b00f0..7b80c48 100644 --- a/hw/zynq_slcr.c +++ b/hw/zynq_slcr.c @@ -519,6 +519,7 @@ static void zynq_slcr_class_init(ObjectClass *klass, void *data) sdc->init = zynq_slcr_init; dc->vmsd = &vmstate_zynq_slcr; dc->reset = zynq_slcr_reset; + dc->no_user = 1; /* for sysbus mmio/irq */ } static const TypeInfo zynq_slcr_info = {