qemu/hw/char
Markus Armbruster d71b22bb6a hw: Mark devices picking up char backends actively FIXME
Character devices defined with -serial and -parallel are for board
initialization to wire up.  Board code examines serial_hds[] and
parallel_hds[] to find them, and creates devices with their qdev
chardev properties set accordingly.

Except a few devices go on a fishing expedition for a suitable backend
instead of exposing a chardev property for board code to set: they use
serial_hds[] (often via qemu_char_get_next_serial()) or parallel_hds[]
in their realize() or init() method to connect to a backend.

Picking up backends that way works when the devices are created by
board code.  But it's inappropriate for -device or device_add.  Not
only is it inconsistent with how the other characrer device models
work (they connect to a backend explicitly identified by a "chardev"
property), it breaks when the backend has been picked up by the board
or a previous -device / device_add already.

Example:

    $ qemu-system-ppc64 -M bamboo -S -device i82378 -device pc87312 -device pc87312
    qemu-system-ppc64: -device pc87312: Property 'isa-parallel.chardev' can't take value 'parallel0', it's in use

Mark them with suitable FIXME comments.

Cc: Li Guang <lig.fnst@cn.fujitsu.com>
Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Cc: Antony Pavlov <antonynpavlov@gmail.com>
Cc: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
Cc: Michael Walle <michael@walle.cc>
Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Cc: "Andreas Färber" <andreas.faerber@web.de>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
2015-04-02 15:30:28 +02:00
..
cadence_uart.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
debugcon.c qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
digic-uart.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
escc.c savevm: Remove all the unneeded version_minimum_id_old (ppc) 2014-06-16 04:55:26 +02:00
etraxfs_ser.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
exynos4210_uart.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
grlib_apbuart.c grlib_apbuart: QOM cast cleanup 2013-07-29 21:06:27 +02:00
imx_serial.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
ipoctal232.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
lm32_juart.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
lm32_uart.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
Makefile.objs stm32f2xx_USART: Add the stm32f2xx USART Controller 2015-03-11 13:21:05 +00:00
mcf_uart.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
milkymist-uart.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
omap_uart.c omap: Fix warnings from Sparse 2015-03-19 11:11:55 +03:00
parallel.c parallel: parallel_hds_isa_init() shouldn't fail 2015-02-24 00:19:06 +01:00
pl011.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
sclpconsole-lm.c s390x/sclpconsole-lm: Fix hanging SCLP line mode console 2014-11-05 16:35:56 +01:00
sclpconsole.c s390x/sclpconsole: Avoid hanging SCLP ASCII console 2014-11-05 16:35:56 +01:00
serial-isa.c serial: serial_hds_isa_init() shouldn't fail 2015-02-24 00:19:06 +01:00
serial-pci.c serial-pci: Convert to realize 2015-02-26 12:42:17 +01:00
serial.c error: Use error_report_err() where appropriate 2015-02-18 10:51:09 +01:00
sh_serial.c sh4: Fix serial line access for Linux kernels later than 3.2 2013-10-02 22:55:28 +04:00
spapr_vty.c spapr_vio: Convert to realize() 2015-03-09 15:00:07 +01:00
stm32f2xx_usart.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
virtio-console.c serial: poll the serial console with G_IO_HUP 2014-06-30 15:04:34 +02:00
virtio-serial-bus.c virtio-serial: fix virtio config size 2015-03-25 13:39:25 +01:00
xen_console.c sysemu: avoid proliferation of include/ subdirectories 2013-04-15 18:19:25 +02:00
xilinx_uartlite.c hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00