qemu-e2k/include/hw
Paul Durrant 82a29e3048 xen: add xenstore watcher infrastructure
A Xen PV frontend communicates its state to the PV backend by writing to
the 'state' key in the frontend area in xenstore. It is therefore
necessary for a XenDevice implementation to be notified whenever the
value of this key changes.

This patch adds code to do this as follows:

- an 'fd handler' is registered on the libxenstore handle which will be
  triggered whenever a 'watch' event occurs
- primitives are added to xen-bus-helper to add or remove watch events
- a list of Notifier objects is added to XenBus to provide a mechanism
  to call the appropriate 'watch handler' when its associated event
  occurs

The xen-block implementation is extended with a 'frontend_changed' method,
which calls as-yet stub 'connect' and 'disconnect' functions when the
relevant frontend state transitions occur. A subsequent patch will supply
a full implementation for these functions.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Reviewed-by: Anthony Perard <anthony.perard@citrix.com>
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
2019-01-14 13:45:40 +00:00
..
acpi avoid TABs in files that only contain a few 2019-01-11 15:46:56 +01:00
adc
arm arm: Add Clock peripheral stub to NRF51 SOC 2019-01-07 15:23:47 +00:00
audio audio: use TYPE_MV88W8618_AUDIO instead of hardcoded string 2018-10-29 13:50:15 +01:00
block block: Remove deprecated -drive option serial 2018-08-15 12:50:39 +02:00
char arm: Add header to host common definition for nRF51 SOC peripherals 2019-01-07 15:23:47 +00:00
core
cpu hw/cpu: introduce CPU clusters 2019-01-07 15:23:45 +00:00
cris
display edid: fix vendor default 2018-10-05 11:26:56 +02:00
dma hw/dma/pl080: Don't use CPU address space for DMA accesses 2018-08-20 11:24:33 +01:00
firmware hw/smbios: Move to the hw/firmware/ subdirectory 2018-12-19 16:48:16 -05:00
gpio hw/gpio/nrf51_gpio: Add nRF51 GPIO peripheral 2019-01-07 15:23:47 +00:00
hyperv hyperv: process POST_MESSAGE hypercall 2018-10-19 13:44:14 +02:00
i2c i2c: Move typedef of bitbang_i2c_interface to i2c.h 2018-12-12 10:01:13 +01:00
i386 Machine queue, 2019-01-10 2019-01-11 13:35:48 +00:00
ide avoid TABs in files that only contain a few 2019-01-11 15:46:56 +01:00
input
intc qom: make interface types abstract 2018-12-11 15:45:22 -02:00
ipack
ipmi qom: make interface types abstract 2018-12-11 15:45:22 -02:00
isa qom: make interface types abstract 2018-12-11 15:45:22 -02:00
kvm
lm32
m68k
mem qom: make interface types abstract 2018-12-11 15:45:22 -02:00
mips
misc hw/misc/nrf51_rng: Add NRF51 random number generator peripheral 2019-01-07 15:23:47 +00:00
net net: cadence_gem: Add support for selecting the DMA MemoryRegion 2018-10-16 17:13:49 +01:00
nvram fw_cfg: import & use linux/qemu_fw_cfg.h 2018-08-23 18:46:25 +02:00
pci pci: allow cleanup/unregistration of PCI root buses 2019-01-09 09:28:14 +11:00
pci-bridge
pci-host spapr: Eliminate SPAPR_PCI_2_7_MMIO_WIN_SIZE macro 2019-01-09 22:10:00 -02:00
ppc spapr: enable XIVE MMIOs at reset 2019-01-09 09:28:14 +11:00
riscv sifive_uart: Implement interrupt pending register 2018-12-20 12:08:43 -08:00
s390x hw/s390x: Fix bad mask in time2tod() 2018-12-20 17:07:24 +01:00
scsi scsi: esp: Defer command completion until previous interrupts have been handled 2019-01-11 13:57:24 +01:00
sd
sh4 avoid TABs in files that only contain a few 2019-01-11 15:46:56 +01:00
sparc
ssi hw/ssi/pl022: Allow use as embedded-struct device 2018-08-24 13:17:44 +01:00
timer hw/timer/nrf51_timer: Add nRF51 Timer peripheral 2019-01-07 15:23:47 +00:00
tricore
unicore32
usb
vfio qemu/queue.h: typedef QTAILQ heads 2019-01-11 15:46:55 +01:00
virtio virtio-gpu: pass down VirtIOGPU pointer to a bunch of functions 2018-09-03 08:31:50 +02:00
watchdog hw/watchdog/cmsdk_apb_watchdog: Implement CMSDK APB watchdog module 2018-08-20 11:24:33 +01:00
xen xen: add xenstore watcher infrastructure 2019-01-14 13:45:40 +00:00
xtensa
boards.h compat: replace PC_COMPAT_2_1 & HW_COMPAT_2_1 macros 2019-01-07 16:18:42 +04:00
bt.h
devices.h
elf_ops.h avoid TABs in files that only contain a few 2019-01-11 15:46:56 +01:00
empty_slot.h
fw-path-provider.h qom: make interface types abstract 2018-12-11 15:45:22 -02:00
hotplug.h qom: make interface types abstract 2018-12-11 15:45:22 -02:00
hw.h
ide.h
irq.h
loader-fit.h
loader.h Support u-boot noload images for arm as used by, NetBSD/evbarm GENERIC kernel. 2019-01-07 15:46:20 +00:00
nmi.h qom: make interface types abstract 2018-12-11 15:45:22 -02:00
or-irq.h
pcmcia.h
platform-bus.h
ptimer.h ptimer: Add TRIGGER_ONLY_ON_DECREMENT policy option 2018-07-09 14:51:34 +01:00
qdev-core.h qemu/queue.h: simplify reverse access to QTAILQ 2019-01-11 15:46:55 +01:00
qdev-dma.h
qdev-properties.h qapi: Define PCIe link speed and width properties 2018-12-19 16:48:16 -05:00
qdev.h
register.h
registerfields.h
stream.h qom: make interface types abstract 2018-12-11 15:45:22 -02:00
sysbus.h core/sysbus: remove the SysBusDeviceClass::init path 2018-12-13 13:48:03 +00:00
usb.h qemu/queue.h: simplify reverse access to QTAILQ 2019-01-11 15:46:55 +01:00