You need to sign in or sign up before continuing.
  • A
    pseries: Rework irq assignment to avoid carrying qemu_irqs around · a307d594
    Alexey Kardashevskiy 提交于
    Currently, the interfaces in the pseries machine code for assignment
    and setup of interrupts pass around qemu_irq objects.  That was done
    in an attempt not to be too closely linked to the specific XICS
    interrupt controller.  However interactions with the device tree setup
    made that attempt rather futile, and XICS is part of the PAPR spec
    anyway, so this really just meant we had to carry both the qemu_irq
    pointers and the XICS irq numbers around.
    
    This mess will just get worse when we add upcoming PCI MSI support,
    since that will require tracking a bunch more interrupt.  Therefore,
    this patch reworks the spapr code to just use XICS irq numbers
    (roughly equivalent to GSIs on x86) and only retrieve the qemu_irq
    pointers from the XICS code when we need them (a trivial lookup).
    
    This is a reworked and generalized version of an earlier spapr_pci
    specific patch from Alexey Kardashevskiy.
    Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
    Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
    [agraf: fix checkpath warning]
    Signed-off-by: NAlexander Graf <agraf@suse.de>
    a307d594
xics.h 1.7 KB