summaryrefslogtreecommitdiff
path: root/drivers/net/caif/Kconfig
diff options
context:
space:
mode:
authorErwan Yvin <erwan.yvin@stericsson.com>2013-03-20 13:52:24 +1030
committerRusty Russell <rusty@rustcorp.com.au>2013-03-20 14:06:06 +1030
commit0d2e1a2926b1839a4b74519e660739b2566c9386 (patch)
tree29f6397b0f544c60bfdbc8d9ad0aae5337fc7532 /drivers/net/caif/Kconfig
parent3beee86a4b9374e38dba36b44e81f1423a0d6b54 (diff)
downloadlwn-0d2e1a2926b1839a4b74519e660739b2566c9386.tar.gz
lwn-0d2e1a2926b1839a4b74519e660739b2566c9386.zip
caif_virtio: Introduce caif over virtio
Add the CAIF Virtio shared memory driver for talking to a modem. This CAIF Link layer communicates to the modem over shared memory. It is implemented as a virtio_driver. The underlying virtio device is managed by the remoteproc framework. The Virtio queue is used for transmitting data to the modem, and the new vringh is used for receiving data. Genalloc is used for managing the shared memory used for TX data. The default dma-alloc-coherent allocator can only allocate whole pages, and this wastes too much shared memory. Flow control is implemented by stopping the TX-queues if the virtio queues go full or we run out of memory. Queued are reopened when queues are below the watermark. NAPI is used in RX path, and a dedicated tasklet is used for releasing TX buffers. Signed-off-by: Erwan Yvin <erwan.yvin@stericsson.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (minor fixes)
Diffstat (limited to 'drivers/net/caif/Kconfig')
-rw-r--r--drivers/net/caif/Kconfig14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/net/caif/Kconfig b/drivers/net/caif/Kconfig
index 60c2142373c9..893f9154011e 100644
--- a/drivers/net/caif/Kconfig
+++ b/drivers/net/caif/Kconfig
@@ -47,3 +47,17 @@ config CAIF_HSI
The caif low level driver for CAIF over HSI.
Be aware that if you enable this then you also need to
enable a low-level HSI driver.
+
+config CAIF_VIRTIO
+ tristate "CAIF virtio transport driver"
+ depends on CAIF
+ select VHOST_RING
+ select VIRTIO
+ select GENERIC_ALLOCATOR
+ default n
+ ---help---
+ The caif driver for CAIF over Virtio.
+
+if CAIF_VIRTIO
+source "drivers/vhost/Kconfig"
+endif