summaryrefslogtreecommitdiff
path: root/tools/lguest
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2015-02-11 07:47:01 +0300
committerRusty Russell <rusty@rustcorp.com.au>2015-02-11 09:17:39 +0300
commit0d5b5d399f8cecfeebefdd010048b2d608eab463 (patch)
treea9d5eeea6b02d52c26b249d00a9964a68d45a7e2 /tools/lguest
parentbf6d40344d7006f29da1a2782f45188cdbbb0904 (diff)
downloadlinux-0d5b5d399f8cecfeebefdd010048b2d608eab463.tar.xz
lguest: Convert entropy device to virtio 1.0 PCI.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'tools/lguest')
-rw-r--r--tools/lguest/lguest.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/tools/lguest/lguest.c b/tools/lguest/lguest.c
index b6c88a10a4c9..842c82bd76ff 100644
--- a/tools/lguest/lguest.c
+++ b/tools/lguest/lguest.c
@@ -71,7 +71,7 @@ typedef uint8_t u8;
#include "../../include/uapi/linux/virtio_net.h"
#include "../../include/uapi/linux/virtio_blk.h"
#include <linux/virtio_console.h>
-#include <linux/virtio_rng.h>
+#include "../../include/uapi/linux/virtio_rng.h"
#include <linux/virtio_ring.h>
#include "../../include/uapi/linux/virtio_pci.h"
#include <asm/bootparam.h>
@@ -2224,7 +2224,6 @@ static void init_pci_config(struct pci_config *pci, u16 type,
*
* eg :
* VIRTIO_ID_CONSOLE: class = 0x07, subclass = 0x00
- * VIRTIO_ID_RNG: class = 0xff, subclass = 0
*/
pci->class = class;
pci->subclass = subclass;
@@ -2816,13 +2815,16 @@ static void setup_rng(void)
rng_info->rfd = open_or_die("/dev/urandom", O_RDONLY);
/* Create the new device. */
- dev = new_device("rng", VIRTIO_ID_RNG);
+ dev = new_pci_device("rng", VIRTIO_ID_RNG, 0xff, 0);
dev->priv = rng_info;
/* The device has one virtqueue, where the Guest places inbufs. */
- add_virtqueue(dev, VIRTQUEUE_NUM, rng_input);
+ add_pci_virtqueue(dev, rng_input);
- verbose("device %u: rng\n", devices.device_num++);
+ /* We don't have any configuration space */
+ no_device_config(dev);
+
+ verbose("device %u: rng\n", devices.device_num);
}
/* That's the end of device setup. */