.. _OPAL_PCI_MAP_PE_MMIO_WINDOW: OPAL_PCI_MAP_PE_MMIO_WINDOW =========================== .. code-block:: c #define OPAL_PCI_MAP_PE_MMIO_WINDOW 29 int64_t opal_pci_map_pe_mmio_window(uint64_t phb_id, uint64_t pe_number, uint16_t window_type, uint16_t window_num, uint16_t segment_num); .. note:: Appears to be POWER7 p7ioc specific. Likely to be removed soon. **WARNING:** following documentation is from old sources, and is possibly not representative of OPALv3 as implemented by skiboot. This should be used as a starting point for full documentation. The host calls this function to map a segment of MMIO address space to a PE. ``phb_id`` is the value from the PHB node ibm,opal-phbid property. ``window_type`` specifies 32-bit or 64-bit PCI memory '0' selects PCI IO Space. ibm,opal-ioda2 PHBs do not support IO space, and OPAL returns opal_unsupported if called for IO windows. '1' selects 32-bit PCI memory space '2' selects 64 bit PCI memory space ``window_num`` is the MMIO window number within the specified PCI memory space ``segment_num`` is an index from 0 to the number of segments minus 1 defined or this window, and selects a particular segment within the specified window. Return value: .. code-block:: c if (!phb) return OPAL_PARAMETER; if (!phb->ops->map_pe_mmio_window) return OPAL_UNSUPPORTED;