qemu-e2k/include/hw/misc
Paolo Bonzini fe04f0b4a1 hw/display/xlnx_dp: Move problematic code from instance_init to realize
aux_create_slave() calls qdev_init_nofail() which in turn "realizes"
the corresponding object. This is unlike qdev_create(), and it is wrong
because qdev_init_nofail() must not be called from an instance_init
function.  Move qdev_init_nofail() and the subsequent aux_map_slave into
the caller's realize function.

There are two more bugs that needs to be fixed here, too, where the
objects are created but not added as children.  Therefore when
you call object_unparent on them, nothing happens.

In particular dpcd and edid give you an infinite loop in bus_unparent,
because device_unparent is not called and does not remove them from
the list of devices on the bus.

Reported-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-id: 1531745974-17187-17-git-send-email-thuth@redhat.com
[thuth: Added Paolo's fixup for the dpcd and edid unparenting]
Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2018-07-17 13:12:49 +01:00
..
macio mac_newworld: add PMU device 2018-06-16 16:32:33 +10:00
a9scu.h a9mpcore: Embed A9SCUState 2013-11-05 17:47:29 +01:00
arm11scu.h arm11mpcore: Split off SCU device 2013-11-05 17:47:30 +01:00
arm_integrator_debug.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
aspeed_scu.h aspeed: Implement write-1-{set, clear} for AST2500 strapping 2018-07-16 17:18:41 +01:00
aspeed_sdmc.h aspeed: add a ram_size property to the memory controller 2016-09-22 18:13:06 +01:00
auxbus.h hw/display/xlnx_dp: Move problematic code from instance_init to realize 2018-07-17 13:12:49 +01:00
bcm2835_mbox.h hw: Do not include "exec/address-spaces.h" if it is not necessary 2018-06-01 14:15:10 +02:00
bcm2835_mbox_defs.h bcm2835_mbox: add BCM2835 mailboxes 2016-02-03 14:56:32 +00:00
bcm2835_property.h hw: Do not include "exec/address-spaces.h" if it is not necessary 2018-06-01 14:15:10 +02:00
bcm2835_rng.h target-arm: Implement BCM2835 hardware RNG 2017-02-28 12:08:13 +00:00
imx2_wdt.h i.MX: Add code to emulate i.MX2 watchdog IP block 2018-02-09 10:40:29 +00:00
imx6_ccm.h i.MX: Add i.MX6 CCM and ANALOG device. 2016-03-16 17:42:18 +00:00
imx6_src.h i.MX: Add i.MX6 System Reset Controller device. 2016-05-12 13:22:28 +01:00
imx7_ccm.h i.MX: Add code to emulate i.MX7 CCM, PMU and ANALOG IP blocks 2018-02-09 10:40:29 +00:00
imx7_gpr.h i.MX: Add implementation of i.MX7 GPR IP block 2018-02-09 10:40:30 +00:00
imx7_snvs.h i.MX: Add code to emulate i.MX7 SNVS IP-block 2018-02-09 10:40:30 +00:00
imx25_ccm.h i.MX: Add an i.MX25 specific CCM class/instance 2015-12-17 13:37:16 +00:00
imx31_ccm.h i.MX: move i.MX31 CCM object to register array 2016-01-11 15:52:18 +00:00
imx_ccm.h i.MX: split the GPT timer implementation into per SOC definitions 2016-07-07 13:47:01 +01:00
iotkit-secctl.h hw/misc/iotkit-secctl.c: Implement SECMPCINTSTATUS 2018-06-22 13:28:40 +01:00
ivshmem.h ivshmem: add check on protocol version in QEMU 2015-10-24 18:03:18 +02:00
mips_cmgcr.h hw/mips_cmgcr: allow GCR base to be moved 2017-02-21 22:24:58 +00:00
mips_cpc.h hw/mips: add initial Cluster Power Controller support 2016-03-30 09:13:59 +01:00
mips_itu.h hw/misc/mips_itu: Cleanup includes 2018-06-01 14:15:10 +02:00
mmio_interface.h introduce mmio_interface 2017-06-27 15:09:15 +02:00
mos6522.h mos6522: expose mos6522_update_irq() through MOS6522DeviceClass 2018-06-16 16:32:33 +10:00
mps2-fpgaio.h hw/misc/mps2-fpgaio: FPGA control block for MPS2 AN505 2018-03-02 11:03:45 +00:00
mps2-scc.h hw/misc/mps2_scc: Implement MPS2 Serial Communication Controller 2017-07-17 13:36:08 +01:00
msf2-sysreg.h msf2: Microsemi Smartfusion2 System Register block 2017-09-21 16:36:56 +01:00
pca9552.h misc: add pca9552 LED blinker model 2018-06-08 13:15:32 +01:00
pca9552_regs.h misc: add pca9552 LED blinker model 2018-06-08 13:15:32 +01:00
pvpanic.h hw/misc/pvpanic: extract public API from i386/pc to "hw/misc/pvpanic.h" 2017-12-18 17:07:02 +03:00
stm32f2xx_syscfg.h stm32f2xx_SYSCFG: Add the stm32f2xx SYSCFG 2015-03-11 13:21:05 +00:00
tmp105_regs.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
tz-mpc.h hw/misc/tz-mpc.c: Implement registers 2018-06-22 13:28:39 +01:00
tz-ppc.h hw/misc/tz-ppc: Model TrustZone peripheral protection controller 2018-03-02 11:03:45 +00:00
unimp.h hw/misc/unimp: Move struct to header file 2018-03-02 11:03:45 +00:00
vmcoreinfo.h hw/misc: add vmcoreinfo device 2017-10-15 05:54:40 +03:00
zynq-xadc.h hw/misc: Add support for ADC controller in Xilinx Zynq 7000 2015-11-12 21:30:42 +00:00