• Cédric Le Goater's avatar
    powerpc/pseries/pci: Add MSI domains · a5f3d2c1
    Cédric Le Goater authored
    Two IRQ domains are added on top of default machine IRQ domain.
    
    First, the top level "pSeries-PCI-MSI" domain deals with the MSI
    specificities. In this domain, the HW IRQ numbers are generated by the
    PCI MSI layer, they compose a unique ID for an MSI source with the PCI
    device identifier and the MSI vector number.
    
    These numbers can be quite large on a pSeries machine running under
    the IBM Hypervisor and /sys/kernel/irq/ and /proc/interrupts will
    require small fixes to show them correctly.
    
    Second domain is the in-the-middle "pSeries-MSI" domain which acts as
    a proxy between the PCI MSI subsystem and the machine IRQ subsystem.
    It usually allocate the MSI vector numbers but, on pSeries machines,
    this is done by the RTAS FW and RTAS returns IRQ numbers in the IRQ
    number space of the machine. This is why the in-the-middle "pSeries-MSI"
    domain has the same HW IRQ numbers as its parent domain.
    
    Only the XIVE (P9/P10) parent domain is supported for now. We still
    need to add support for IRQ domain hierarchy under XICS.
    Signed-off-by: default avatarCédric Le Goater <clg@kaod.org>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/20210701132750.1475580-6-clg@kaod.org
    a5f3d2c1
pci-bridge.h 9.26 KB