linux/drivers/char/hw_random/virtio-rng.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Randomness driver for virtio
 *  Copyright (C) 2007, 2008 Rusty Russell IBM Corporation
 */

#include <asm/barrier.h>
#include <linux/err.h>
#include <linux/hw_random.h>
#include <linux/scatterlist.h>
#include <linux/spinlock.h>
#include <linux/virtio.h>
#include <linux/virtio_rng.h>
#include <linux/module.h>
#include <linux/slab.h>

static DEFINE_IDA(rng_index_ida);

struct virtrng_info {};

static void random_recv_done(struct virtqueue *vq)
{}

static void request_entropy(struct virtrng_info *vi)
{}

static unsigned int copy_data(struct virtrng_info *vi, void *buf,
			      unsigned int size)
{}

static int virtio_read(struct hwrng *rng, void *buf, size_t size, bool wait)
{}

static void virtio_cleanup(struct hwrng *rng)
{}

static int probe_common(struct virtio_device *vdev)
{}

static void remove_common(struct virtio_device *vdev)
{}

static int virtrng_probe(struct virtio_device *vdev)
{}

static void virtrng_remove(struct virtio_device *vdev)
{}

static void virtrng_scan(struct virtio_device *vdev)
{}

static int virtrng_freeze(struct virtio_device *vdev)
{}

static int virtrng_restore(struct virtio_device *vdev)
{}

static const struct virtio_device_id id_table[] =;

static struct virtio_driver virtio_rng_driver =;

module_virtio_driver();
MODULE_DEVICE_TABLE(virtio, id_table);
MODULE_DESCRIPTION();
MODULE_LICENSE();