Displaying 20 results from an estimated 34 matches for "__virtio_driver".
2020 Jun 15
4
[PATCH v2 0/1] s390: virtio: let's arch choose to accept devices without IOMMU feature
An architecture protecting the guest memory against unauthorized host
access may want to enforce VIRTIO I/O device protection through the
use of VIRTIO_F_IOMMU_PLATFORM.
Let's give a chance to the architecture to accept or not devices
without VIRTIO_F_IOMMU_PLATFORM.
Pierre Morel (1):
s390: virtio: let arch accept devices without IOMMU feature
arch/s390/mm/init.c | 6 ++++++
2020 Jun 17
6
[PATCH v3 0/1] s390: virtio: let arch choose to accept devices without IOMMU feature
An architecture protecting the guest memory against unauthorized host
access may want to enforce VIRTIO I/O device protection through the
use of VIRTIO_F_IOMMU_PLATFORM.
Let's give a chance to the architecture to accept or not devices
without VIRTIO_F_IOMMU_PLATFORM.
Pierre Morel (1):
s390: virtio: let arch accept devices without IOMMU feature
arch/s390/mm/init.c | 6 ++++++
2020 Jun 16
2
[PATCH v2 1/1] s390: virtio: let arch accept devices without IOMMU feature
...{
> diff --git a/include/linux/virtio.h b/include/linux/virtio.h
> index a493eac08393..2c46b310c38c 100644
> --- a/include/linux/virtio.h
> +++ b/include/linux/virtio.h
> @@ -195,4 +195,6 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> #define module_virtio_driver(__virtio_driver) \
> module_driver(__virtio_driver, register_virtio_driver, \
> unregister_virtio_driver)
> +
> +int arch_needs_iommu_platform(struct virtio_device *dev);
> #endif /* _LINUX_VIRTIO_H */
>
2020 Jun 16
2
[PATCH v2 1/1] s390: virtio: let arch accept devices without IOMMU feature
...{
> diff --git a/include/linux/virtio.h b/include/linux/virtio.h
> index a493eac08393..2c46b310c38c 100644
> --- a/include/linux/virtio.h
> +++ b/include/linux/virtio.h
> @@ -195,4 +195,6 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> #define module_virtio_driver(__virtio_driver) \
> module_driver(__virtio_driver, register_virtio_driver, \
> unregister_virtio_driver)
> +
> +int arch_needs_iommu_platform(struct virtio_device *dev);
> #endif /* _LINUX_VIRTIO_H */
>
2023 Feb 21
2
[PATCH vhost 07/10] virtio_ring: add api virtio_dma_map() for advance dma
...clude <linux/dma-mapping.h>
> > >
> > > /**
> > > * struct virtqueue - a queue to register buffers for sending or receiving.
> > > @@ -216,4 +217,12 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> > > #define module_virtio_driver(__virtio_driver) \
> > > module_driver(__virtio_driver, register_virtio_driver, \
> > > unregister_virtio_driver)
> > > +
> > > +dma_addr_t virtio_dma_map_page(struct device *dev, struct page *page, size_t offset,
> > > +...
2023 Feb 21
2
[PATCH vhost 07/10] virtio_ring: add api virtio_dma_map() for advance dma
...clude <linux/dma-mapping.h>
> > >
> > > /**
> > > * struct virtqueue - a queue to register buffers for sending or receiving.
> > > @@ -216,4 +217,12 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> > > #define module_virtio_driver(__virtio_driver) \
> > > module_driver(__virtio_driver, register_virtio_driver, \
> > > unregister_virtio_driver)
> > > +
> > > +dma_addr_t virtio_dma_map_page(struct device *dev, struct page *page, size_t offset,
> > > +...
2023 Feb 20
1
[PATCH vhost 07/10] virtio_ring: add api virtio_dma_map() for advance dma
.../gfp.h>
> > +#include <linux/dma-mapping.h>
> >
> > /**
> > * struct virtqueue - a queue to register buffers for sending or receiving.
> > @@ -216,4 +217,12 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> > #define module_virtio_driver(__virtio_driver) \
> > module_driver(__virtio_driver, register_virtio_driver, \
> > unregister_virtio_driver)
> > +
> > +dma_addr_t virtio_dma_map_page(struct device *dev, struct page *page, size_t offset,
> > + unsigned int...
2020 Jun 15
0
[PATCH v2 1/1] s390: virtio: let arch accept devices without IOMMU feature
...VIRTIO_CONFIG_S_FEATURES_OK)) {
diff --git a/include/linux/virtio.h b/include/linux/virtio.h
index a493eac08393..2c46b310c38c 100644
--- a/include/linux/virtio.h
+++ b/include/linux/virtio.h
@@ -195,4 +195,6 @@ void unregister_virtio_driver(struct virtio_driver *drv);
#define module_virtio_driver(__virtio_driver) \
module_driver(__virtio_driver, register_virtio_driver, \
unregister_virtio_driver)
+
+int arch_needs_iommu_platform(struct virtio_device *dev);
#endif /* _LINUX_VIRTIO_H */
--
2.25.1
2013 Feb 11
1
[PATCH] virtio: Add module driver macro for virtio drivers.
...);
+
+/* module_virtio_driver() - Helper macro for drivers that don't do
+ * anything special in module init/exit. This eliminates a lot of
+ * boilerplate. Each module may only use this macro once, and
+ * calling it replaces module_init() and module_exit()
+ */
+#define module_virtio_driver(__virtio_driver) \
+ module_driver(__virtio_driver, register_virtio_driver, \
+ unregister_virtio_driver)
#endif /* _LINUX_VIRTIO_H */
--
1.7.5.4
2013 Feb 11
1
[PATCH] virtio: Add module driver macro for virtio drivers.
...);
+
+/* module_virtio_driver() - Helper macro for drivers that don't do
+ * anything special in module init/exit. This eliminates a lot of
+ * boilerplate. Each module may only use this macro once, and
+ * calling it replaces module_init() and module_exit()
+ */
+#define module_virtio_driver(__virtio_driver) \
+ module_driver(__virtio_driver, register_virtio_driver, \
+ unregister_virtio_driver)
#endif /* _LINUX_VIRTIO_H */
--
1.7.5.4
2020 Jun 16
0
[PATCH v2 1/1] s390: virtio: let arch accept devices without IOMMU feature
...include/linux/virtio.h b/include/linux/virtio.h
>> index a493eac08393..2c46b310c38c 100644
>> --- a/include/linux/virtio.h
>> +++ b/include/linux/virtio.h
>> @@ -195,4 +195,6 @@ void unregister_virtio_driver(struct virtio_driver *drv);
>> #define module_virtio_driver(__virtio_driver) \
>> module_driver(__virtio_driver, register_virtio_driver, \
>> unregister_virtio_driver)
>> +
>> +int arch_needs_iommu_platform(struct virtio_device *dev);
>> #endif /* _LINUX_VIRTIO_H */
>>
--
Pierre Morel
IBM Lab Boeblingen
2020 Jun 17
0
[PATCH v3 1/1] s390: virtio: let arch accept devices without IOMMU feature
...VIRTIO_CONFIG_S_FEATURES_OK)) {
diff --git a/include/linux/virtio.h b/include/linux/virtio.h
index a493eac08393..e8526ae3463e 100644
--- a/include/linux/virtio.h
+++ b/include/linux/virtio.h
@@ -195,4 +195,6 @@ void unregister_virtio_driver(struct virtio_driver *drv);
#define module_virtio_driver(__virtio_driver) \
module_driver(__virtio_driver, register_virtio_driver, \
unregister_virtio_driver)
+
+int arch_needs_virtio_iommu_platform(struct virtio_device *dev);
#endif /* _LINUX_VIRTIO_H */
--
2.25.1
2020 Jun 16
1
[PATCH v2 1/1] s390: virtio: let arch accept devices without IOMMU feature
...{
> diff --git a/include/linux/virtio.h b/include/linux/virtio.h
> index a493eac08393..2c46b310c38c 100644
> --- a/include/linux/virtio.h
> +++ b/include/linux/virtio.h
> @@ -195,4 +195,6 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> #define module_virtio_driver(__virtio_driver) \
> module_driver(__virtio_driver, register_virtio_driver, \
> unregister_virtio_driver)
> +
> +int arch_needs_iommu_platform(struct virtio_device *dev);
> #endif /* _LINUX_VIRTIO_H */
2014 Oct 07
0
[PATCH RFC 03/11] virtio: endianess conversion helpers
...return !(dev->features & (1ULL << VIRTIO_F_VERSION_1));
+}
+
int register_virtio_device(struct virtio_device *dev);
void unregister_virtio_device(struct virtio_device *dev);
@@ -149,4 +155,38 @@ void unregister_virtio_driver(struct virtio_driver *drv);
#define module_virtio_driver(__virtio_driver) \
module_driver(__virtio_driver, register_virtio_driver, \
unregister_virtio_driver)
+
+/*
+ * v1.0 specifies LE headers, legacy was native endian. Therefore, we must
+ * convert from/to LE if and only if vdev is not legacy.
+ */
+static inline u16 virtio_to_cpu_u16(const struct virtio_devic...
2014 Oct 07
0
[PATCH RFC 03/11] virtio: endianess conversion helpers
...return !(dev->features & (1ULL << VIRTIO_F_VERSION_1));
+}
+
int register_virtio_device(struct virtio_device *dev);
void unregister_virtio_device(struct virtio_device *dev);
@@ -149,4 +155,38 @@ void unregister_virtio_driver(struct virtio_driver *drv);
#define module_virtio_driver(__virtio_driver) \
module_driver(__virtio_driver, register_virtio_driver, \
unregister_virtio_driver)
+
+/*
+ * v1.0 specifies LE headers, legacy was native endian. Therefore, we must
+ * convert from/to LE if and only if vdev is not legacy.
+ */
+static inline u16 virtio_to_cpu_u16(const struct virtio_devic...
2023 Mar 02
1
[PATCH vhost 07/10] virtio_ring: add api virtio_dma_map() for advance dma
...gt; >
> > > > > /**
> > > > > * struct virtqueue - a queue to register buffers for sending or receiving.
> > > > > @@ -216,4 +217,12 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> > > > > #define module_virtio_driver(__virtio_driver) \
> > > > > module_driver(__virtio_driver, register_virtio_driver, \
> > > > > unregister_virtio_driver)
> > > > > +
> > > > > +dma_addr_t virtio_dma_map_page(struct device *dev, struct page *page, size_t o...
2023 Mar 02
1
[PATCH vhost 07/10] virtio_ring: add api virtio_dma_map() for advance dma
...gt; > > > /**
> > > > > > * struct virtqueue - a queue to register buffers for sending or receiving.
> > > > > > @@ -216,4 +217,12 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> > > > > > #define module_virtio_driver(__virtio_driver) \
> > > > > > module_driver(__virtio_driver, register_virtio_driver, \
> > > > > > unregister_virtio_driver)
> > > > > > +
> > > > > > +dma_addr_t virtio_dma_map_page(struct device *dev, struct...
2023 Mar 02
2
[PATCH vhost 07/10] virtio_ring: add api virtio_dma_map() for advance dma
...gt; > > > > * struct virtqueue - a queue to register buffers for sending or receiving.
> > > > > > > > > @@ -216,4 +217,12 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> > > > > > > > > #define module_virtio_driver(__virtio_driver) \
> > > > > > > > > module_driver(__virtio_driver, register_virtio_driver, \
> > > > > > > > > unregister_virtio_driver)
> > > > > > > > > +
> > > > > > > > >...
2023 Mar 02
1
[PATCH vhost 07/10] virtio_ring: add api virtio_dma_map() for advance dma
...gt; /**
> > > > > > > * struct virtqueue - a queue to register buffers for sending or receiving.
> > > > > > > @@ -216,4 +217,12 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> > > > > > > #define module_virtio_driver(__virtio_driver) \
> > > > > > > module_driver(__virtio_driver, register_virtio_driver, \
> > > > > > > unregister_virtio_driver)
> > > > > > > +
> > > > > > > +dma_addr_t virtio_dma_map_page(struct...
2020 Jun 17
1
[PATCH v3 1/1] s390: virtio: let arch accept devices without IOMMU feature
...{
> diff --git a/include/linux/virtio.h b/include/linux/virtio.h
> index a493eac08393..e8526ae3463e 100644
> --- a/include/linux/virtio.h
> +++ b/include/linux/virtio.h
> @@ -195,4 +195,6 @@ void unregister_virtio_driver(struct virtio_driver *drv);
> #define module_virtio_driver(__virtio_driver) \
> module_driver(__virtio_driver, register_virtio_driver, \
> unregister_virtio_driver)
> +
> +int arch_needs_virtio_iommu_platform(struct virtio_device *dev);
> #endif /* _LINUX_VIRTIO_H */
>