Example #1
0
static int virtio_mmio_read(struct virtio_mmio_dev *m,
			    u32 offset, u32 *dst)
{
	/* Device specific config write */
	if (offset >= VMM_VIRTIO_MMIO_CONFIG) {
		offset -= VMM_VIRTIO_MMIO_CONFIG;
		return vmm_virtio_config_read(&m->dev, offset, dst, 4);
	}

	return virtio_mmio_config_read(m, offset, dst, 4);
}
Example #2
0
static int virtio_mmio_read(struct vmm_emudev *edev,
			    physical_addr_t offset,
			    void *dst, u32 dst_len)
{
	struct virtio_mmio_dev *m = edev->priv;

	/* Device specific config write */
	if (offset >= VIRTIO_MMIO_CONFIG) {
		offset -= VIRTIO_MMIO_CONFIG;
		return virtio_config_read(&m->dev, (u32)offset, dst, dst_len);
	}

	return virtio_mmio_config_read(m, (u32)offset, dst, dst_len);
}