Displaying 20 results from an estimated 42 matches for "msix_init".
2015 Jan 15
3
[PATCH v3 00/16] virtio-pci: towards virtio 1.0 guest support
On Thu, Jan 15, 2015 at 10:18:18PM +0100, Gerd Hoffmann wrote:
> Hi,
>
> > QEMU side is still undergoing polishing, but is already testable.
>
> Looked art the qemu side for now, commenting here due to qemu patches
> not being posted to the list yet (guess that is at least partly already
> on your todo list):
Absolutely.
> * Both legacy and modern should be
2015 Jan 15
3
[PATCH v3 00/16] virtio-pci: towards virtio 1.0 guest support
On Thu, Jan 15, 2015 at 10:18:18PM +0100, Gerd Hoffmann wrote:
> Hi,
>
> > QEMU side is still undergoing polishing, but is already testable.
>
> Looked art the qemu side for now, commenting here due to qemu patches
> not being posted to the list yet (guess that is at least partly already
> on your todo list):
Absolutely.
> * Both legacy and modern should be
2009 Jun 05
1
[PATCHv3 05/13] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2009 Jun 05
1
[PATCHv3 05/13] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2015 May 12
0
KVM VHOST-BLK is not working
...QEMU function msix_enabled during the
initialization of the block device While the first expression
(dev->cap_present & QEMU_PCI_CAP_MSIX) is successful, the second one
(dev->config[dev->msix_cap + MSIX_CONTROL_OFFSET] &
MSIX_ENABLE_MASK) is failing.
I could not see a msix_init function from hw/block/virtio-blk.c whereas
there is one for VHOST-NET from vmxnet3_init_msix.
I will appreciate if someone could point out what I am missing here.
Thanks and Regards
Sudheer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxfou...
2015 May 12
0
KVM VHOST-BLK is not working
...QEMU function msix_enabled during the
initialization of the block device While the first expression
(dev->cap_present & QEMU_PCI_CAP_MSIX) is successful, the second one
(dev->config[dev->msix_cap + MSIX_CONTROL_OFFSET] &
MSIX_ENABLE_MASK) is failing.
I could not see a msix_init function from hw/block/virtio-blk.c whereas
there is one for VHOST-NET from vmxnet3_init_msix.
I will appreciate if someone could point out what I am missing here.
Thanks and Regards
Sudheer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxfou...
2009 Jun 21
0
[PATCHv2 RFC] qemu/msix: remove msix_supported safety flag
...le(0)
#endif
-/* Flag for interrupt controller to declare MSI-X support */
-int msix_supported;
-
/* Add MSI-X capability to the config space for the device. */
/* Given a bar and its size, add MSI-X table on top of it
* and fill MSI-X capability in the config space.
@@ -227,10 +224,6 @@ int msix_init(struct PCIDevice *dev, unsigned short nentries,
unsigned bar_nr, unsigned bar_size)
{
int ret;
- /* Nothing to do if MSI is not supported by interrupt controller */
- if (!msix_supported)
- return -ENOTSUP;
-
if (nentries > MSIX_MAX_ENTRIES)
return...
2009 Jun 21
0
[PATCHv2 RFC] qemu/msix: remove msix_supported safety flag
...le(0)
#endif
-/* Flag for interrupt controller to declare MSI-X support */
-int msix_supported;
-
/* Add MSI-X capability to the config space for the device. */
/* Given a bar and its size, add MSI-X table on top of it
* and fill MSI-X capability in the config space.
@@ -227,10 +224,6 @@ int msix_init(struct PCIDevice *dev, unsigned short nentries,
unsigned bar_nr, unsigned bar_size)
{
int ret;
- /* Nothing to do if MSI is not supported by interrupt controller */
- if (!msix_supported)
- return -ENOTSUP;
-
if (nentries > MSIX_MAX_ENTRIES)
return...
2015 Jan 16
0
[PATCH v3 00/16] virtio-pci: towards virtio 1.0 guest support
...eparate things, extra BARs
> have no cost.
Well, there are only six BARs. legacy bar, modern mmio bar, msi-x bar,
modern io bar (for fast isr). That already four out of six ...
We have a mmio bar, which we partition into subregions for virtio-1.0
anyway. Also placing msi-x there is a single msix_init() call. xhci is
doing that too:
00000000febf0000-00000000febf3fff (prio 1, RW): xhci
00000000febf0000-00000000febf003f (prio 0, RW): capabilities
00000000febf0040-00000000febf043f (prio 0, RW): operational
00000000febf0440-00000000febf044f (prio 0, RW): usb3 port #1
00...
2015 Jan 16
0
[PATCH v3 00/16] virtio-pci: towards virtio 1.0 guest support
...eparate things, extra BARs
> have no cost.
Well, there are only six BARs. legacy bar, modern mmio bar, msi-x bar,
modern io bar (for fast isr). That already four out of six ...
We have a mmio bar, which we partition into subregions for virtio-1.0
anyway. Also placing msi-x there is a single msix_init() call. xhci is
doing that too:
00000000febf0000-00000000febf3fff (prio 1, RW): xhci
00000000febf0000-00000000febf003f (prio 0, RW): capabilities
00000000febf0040-00000000febf043f (prio 0, RW): operational
00000000febf0440-00000000febf044f (prio 0, RW): usb3 port #1
00...
2009 Jun 21
1
[PATCHv6 05/12] qemu/pci: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTSUP;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+ return...
2009 Jun 21
1
[PATCHv6 05/12] qemu/pci: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTSUP;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+ return...
2009 Jun 02
0
[PATCHv2 05/13] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2009 Jun 02
0
[PATCHv2 05/13] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2009 Jun 18
0
[PATCHv5 05/13] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2009 Jun 18
0
[PATCHv5 05/13] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2009 Jun 10
0
[PATCHv4 05/13] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2009 Jun 10
0
[PATCHv4 05/13] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2009 May 25
1
[PATCH 05/11] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...
2009 May 25
1
[PATCH 05/11] qemu: MSI-X support functions
...lt;= offset)
+ return;
+ cpu_register_physical_memory(addr + offset, size - offset,
+ d->msix_mmio_index);
+}
+
+/* Initialize the MSI-X structures. Note: if MSI-X is supported, BAR size is
+ * modified, it should be retrieved with msix_bar_size. */
+int msix_init(struct PCIDevice *dev, unsigned short nentries,
+ unsigned bar_nr, unsigned bar_size)
+{
+ int ret = -ENOMEM;
+ /* Nothing to do if MSI is not supported by interrupt controller */
+ if (!msix_supported)
+ return -ENOTTY;
+
+ if (nentries > MSIX_MAX_ENTRIES)
+...