aboutsummaryrefslogtreecommitdiff
path: root/include/hw/irq.h
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2018-03-02 10:45:38 +0000
committerPeter Maydell <peter.maydell@linaro.org>2018-03-02 11:03:45 +0000
commit5edb1b3fa93217cf7adc50725a69ab0cefcea973 (patch)
tree0cce7bbddb09998b7162d7da5fcb6e2c31c7811d /include/hw/irq.h
parent4a151677a8ea80e65f519fed1df92c0db6350a02 (diff)
downloadqemu-5edb1b3fa93217cf7adc50725a69ab0cefcea973.zip
qemu-5edb1b3fa93217cf7adc50725a69ab0cefcea973.tar.gz
qemu-5edb1b3fa93217cf7adc50725a69ab0cefcea973.tar.bz2
hw/core/split-irq: Device that splits IRQ lines
In some board or SoC models it is necessary to split a qemu_irq line so that one input can feed multiple outputs. We currently have qemu_irq_split() for this, but that has several deficiencies: * it can only handle splitting a line into two * it unavoidably leaks memory, so it can't be used in a device that can be deleted Implement a qdev device that encapsulates splitting of IRQs, with a configurable number of outputs. (This is in some ways the inverse of the TYPE_OR_IRQ device.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20180220180325.29818-13-peter.maydell@linaro.org
Diffstat (limited to 'include/hw/irq.h')
-rw-r--r--include/hw/irq.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/hw/irq.h b/include/hw/irq.h
index 4c4c2ea..7a40e3e 100644
--- a/include/hw/irq.h
+++ b/include/hw/irq.h
@@ -50,7 +50,9 @@ void qemu_free_irq(qemu_irq irq);
/* Returns a new IRQ with opposite polarity. */
qemu_irq qemu_irq_invert(qemu_irq irq);
-/* Returns a new IRQ which feeds into both the passed IRQs */
+/* Returns a new IRQ which feeds into both the passed IRQs.
+ * It's probably better to use the TYPE_SPLIT_IRQ device instead.
+ */
qemu_irq qemu_irq_split(qemu_irq irq1, qemu_irq irq2);
/* Returns a new IRQ set which connects 1:1 to another IRQ set, which