summaryrefslogtreecommitdiffstats
path: root/drivers/virtio/config.c
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2007-10-22 03:03:36 +0200
committerRusty Russell <rusty@rustcorp.com.au>2007-10-23 07:49:54 +0200
commitec3d41c4db4c21164332826ea8d812f94f2f6886 (patch)
tree9b947e900745cfcc4df7409c6ba5583428964215 /drivers/virtio/config.c
parentBoot with virtual == physical to get closer to native Linux. (diff)
downloadlinux-ec3d41c4db4c21164332826ea8d812f94f2f6886.tar.xz
linux-ec3d41c4db4c21164332826ea8d812f94f2f6886.zip
Virtio interface
This attempts to implement a "virtual I/O" layer which should allow common drivers to be efficiently used across most virtual I/O mechanisms. It will no-doubt need further enhancement. The virtio drivers add buffers to virtio queues; as the buffers are consumed the driver "interrupt" callbacks are invoked. There is also a generic implementation of config space which drivers can query to get setup information from the host. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Cc: Dor Laor <dor.laor@qumranet.com> Cc: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'drivers/virtio/config.c')
-rw-r--r--drivers/virtio/config.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/virtio/config.c b/drivers/virtio/config.c
new file mode 100644
index 000000000000..983d482fba40
--- /dev/null
+++ b/drivers/virtio/config.c
@@ -0,0 +1,13 @@
+/* Configuration space parsing helpers for virtio.
+ *
+ * The configuration is [type][len][... len bytes ...] fields.
+ *
+ * Copyright 2007 Rusty Russell, IBM Corporation.
+ * GPL v2 or later.
+ */
+#include <linux/err.h>
+#include <linux/virtio.h>
+#include <linux/virtio_config.h>
+#include <linux/bug.h>
+#include <asm/system.h>
+