Lines Matching refs:devices

84     /** Array of PCI devices. */
85 R3PTRTYPE(PPCIDEVICE) devices[256];
128 * These count how many devices asserted
517 R3PTRTYPE(PCIDevice *) pci_dev = pGlobals->PciBus.devices[iDevice];
564 R3PTRTYPE(PCIDevice *) pci_dev = pGlobals->PciBus.devices[iDevice];
1005 /* Init devices behind the bridge and possibly other bridges as well. */
1218 * Iterate thru all the devices.
1220 for (uint32_t i = 0; i < RT_ELEMENTS(pBus->devices); i++)
1222 PPCIDEVICE pDev = pBus->devices[i];
1281 * This table defines the fields for normal devices and bridge devices, and
1455 * Iterate thru all the devices and write 0 to the COMMAND register so
1462 for (i = 0; i < RT_ELEMENTS(pBus->devices); i++)
1464 PPCIDEVICE pDev = pBus->devices[i];
1475 * Iterate all the devices.
1488 if ( u32 >= RT_ELEMENTS(pBus->devices)
1495 /* skip forward to the device checking that no new devices are present. */
1498 if (pBus->devices[i])
1500 LogRel(("New device in slot %#x, %s (vendor=%#06x device=%#06x)\n", i, pBus->devices[i]->name,
1501 PCIDevGetVendorId(pBus->devices[i]), PCIDevGetDeviceId(pBus->devices[i])));
1504 i, pBus->devices[i]->name, PCIDevGetVendorId(pBus->devices[i]), PCIDevGetDeviceId(pBus->devices[i]));
1527 pDev = pBus->devices[i];
1598 * The devices.
1627 && !pBus->devices[9])
1632 && !pBus->devices[0xf8])
1637 for (iDev = pBus->iDevSearch; iDev < (int)RT_ELEMENTS(pBus->devices); iDev += 8)
1638 if ( !pBus->devices[iDev]
1639 && !pBus->devices[iDev + 1]
1640 && !pBus->devices[iDev + 2]
1641 && !pBus->devices[iDev + 3]
1642 && !pBus->devices[iDev + 4]
1643 && !pBus->devices[iDev + 5]
1644 && !pBus->devices[iDev + 6]
1645 && !pBus->devices[iDev + 7])
1647 if (iDev >= (int)RT_ELEMENTS(pBus->devices))
1663 * ourselves to function 0 devices.
1665 * If you start setting devices + function in the
1666 * config, do it for all pci devices!
1669 if (pBus->devices[iDev])
1673 iDev, pszName, pBus->devices[iDev]->name));
1674 if ( pciDevIsRequestedDevfunc(pBus->devices[iDev])
1675 || (pBus->devices[iDev + 1] && pciDevIsRequestedDevfunc(pBus->devices[iDev + 1]))
1676 || (pBus->devices[iDev + 2] && pciDevIsRequestedDevfunc(pBus->devices[iDev + 2]))
1677 || (pBus->devices[iDev + 3] && pciDevIsRequestedDevfunc(pBus->devices[iDev + 3]))
1678 || (pBus->devices[iDev + 4] && pciDevIsRequestedDevfunc(pBus->devices[iDev + 4]))
1679 || (pBus->devices[iDev + 5] && pciDevIsRequestedDevfunc(pBus->devices[iDev + 5]))
1680 || (pBus->devices[iDev + 6] && pciDevIsRequestedDevfunc(pBus->devices[iDev + 6]))
1681 || (pBus->devices[iDev + 7] && pciDevIsRequestedDevfunc(pBus->devices[iDev + 7])))
1684 pszName, pBus->devices[iDev]->name, iDev));
1689 for (iDevRel = pBus->iDevSearch; iDevRel < (int)RT_ELEMENTS(pBus->devices); iDevRel += 8)
1691 if ( !pBus->devices[iDevRel]
1692 && !pBus->devices[iDevRel + 1]
1693 && !pBus->devices[iDevRel + 2]
1694 && !pBus->devices[iDevRel + 3]
1695 && !pBus->devices[iDevRel + 4]
1696 && !pBus->devices[iDevRel + 5]
1697 && !pBus->devices[iDevRel + 6]
1698 && !pBus->devices[iDevRel + 7])
1703 if (!pBus->devices[iDev + i])
1705 Log(("PCI: relocating '%s' from slot %#x to %#x\n", pBus->devices[iDev + i]->name, iDev + i, iDevRel + i));
1706 pBus->devices[iDevRel + i] = pBus->devices[iDev + i];
1707 pBus->devices[iDevRel + i]->devfn = iDevRel + i;
1708 pBus->devices[iDev + i] = NULL;
1712 if (pBus->devices[iDev])
1721 Assert(!pBus->devices[iDev]);
1729 pBus->devices[iDev] = pPciDev;
1732 AssertMsg(pBus->cBridges < RT_ELEMENTS(pBus->devices), ("Number of bridges exceeds the number of possible devices on the bus\n"));
1758 || iDev >= (int)RT_ELEMENTS(pBus->devices)
1876 * Init the devices.
1939 for (uint32_t iDev = 0; iDev < RT_ELEMENTS(pBus->devices); iDev++)
1941 PPCIDEVICE pPciDev = pBus->devices[iDev];
1947 * For passthrough devices MSI/MSI-X mostly reflects the way interrupts delivered to the guest,
1948 * as host driver handles real devices interrupts.
2072 /* Relocate RC pointers for the attached pci devices. */
2073 for (uint32_t i = 0; i < RT_ELEMENTS(pBus->devices); i++)
2075 if (pBus->devices[i])
2076 pBus->devices[i]->Int.s.pBusRC += offDelta;
2144 * RT_ELEMENTS(pGlobals->PciBus.devices));
2363 PPCIDEVICE pPciDev = pBus->devices[iDevice];
2396 PPCIDEVICE pPciDev = pBus->devices[iDevice];
2442 || iDev >= (int)RT_ELEMENTS(pBus->devices))
2477 /* Relocate RC pointers for the attached pci devices. */
2478 for (uint32_t i = 0; i < RT_ELEMENTS(pBus->devices); i++)
2480 if (pBus->devices[i])
2481 pBus->devices[i]->Int.s.pBusRC += offDelta;
2521 pBus->papBridgesR3 = (PPCIDEVICE *)PDMDevHlpMMHeapAllocZ(pDevIns, sizeof(PPCIDEVICE) * RT_ELEMENTS(pBus->devices));
2561 * devices attached to the bus is unaffected.