else
dev->kdrv = RTE_KDRV_UNKNOWN;
} else
- dev->kdrv = RTE_KDRV_UNKNOWN;
+ dev->kdrv = RTE_KDRV_NONE;
/* device is valid, add in list (sorted) */
if (TAILQ_EMPTY(&pci_device_list)) {
}
}
-#if defined(RTE_ARCH_X86_64) || defined(RTE_ARCH_I686)
+#if defined(RTE_ARCH_X86)
static int
pci_ioport_map(struct rte_pci_device *dev, int bar __rte_unused,
struct rte_pci_ioport *p)
rte_eal_pci_ioport_map(struct rte_pci_device *dev, int bar,
struct rte_pci_ioport *p)
{
- int ret;
+ int ret = -1;
switch (dev->kdrv) {
#ifdef VFIO_PRESENT
case RTE_KDRV_VFIO:
- ret = -1;
if (pci_vfio_is_enabled())
ret = pci_vfio_ioport_map(dev, bar, p);
break;
#endif
case RTE_KDRV_IGB_UIO:
+ ret = pci_uio_ioport_map(dev, bar, p);
+ break;
case RTE_KDRV_UIO_GENERIC:
ret = pci_uio_ioport_map(dev, bar, p);
break;
- default:
-#if defined(RTE_ARCH_X86_64) || defined(RTE_ARCH_I686)
- /* special case for x86 ... */
+ case RTE_KDRV_NONE:
+#if defined(RTE_ARCH_X86)
ret = pci_ioport_map(dev, bar, p);
-#else
- ret = -1;
#endif
break;
+ default:
+ break;
}
if (!ret)
break;
#endif
case RTE_KDRV_IGB_UIO:
+ pci_uio_ioport_read(p, data, len, offset);
+ break;
case RTE_KDRV_UIO_GENERIC:
pci_uio_ioport_read(p, data, len, offset);
break;
- default:
-#if defined(RTE_ARCH_X86_64) || defined(RTE_ARCH_I686)
- /* special case for x86 ... */
+ case RTE_KDRV_NONE:
+#if defined(RTE_ARCH_X86)
pci_uio_ioport_read(p, data, len, offset);
#endif
break;
+ default:
+ break;
}
}
break;
#endif
case RTE_KDRV_IGB_UIO:
+ pci_uio_ioport_write(p, data, len, offset);
+ break;
case RTE_KDRV_UIO_GENERIC:
pci_uio_ioport_write(p, data, len, offset);
break;
- default:
-#if defined(RTE_ARCH_X86_64) || defined(RTE_ARCH_I686)
- /* special case for x86 ... */
+ case RTE_KDRV_NONE:
+#if defined(RTE_ARCH_X86)
pci_uio_ioport_write(p, data, len, offset);
#endif
break;
+ default:
+ break;
}
}
int
rte_eal_pci_ioport_unmap(struct rte_pci_ioport *p)
{
- int ret;
+ int ret = -1;
switch (p->dev->kdrv) {
#ifdef VFIO_PRESENT
case RTE_KDRV_VFIO:
- ret = -1;
if (pci_vfio_is_enabled())
ret = pci_vfio_ioport_unmap(p);
break;
#endif
case RTE_KDRV_IGB_UIO:
+ ret = pci_uio_ioport_unmap(p);
+ break;
case RTE_KDRV_UIO_GENERIC:
ret = pci_uio_ioport_unmap(p);
break;
- default:
-#if defined(RTE_ARCH_X86_64) || defined(RTE_ARCH_I686)
- /* special case for x86 ... nothing to do */
+ case RTE_KDRV_NONE:
+#if defined(RTE_ARCH_X86)
ret = 0;
-#else
- ret = -1;
#endif
break;
+ default:
+ break;
}
return ret;