• Daniel Hellstrom's avatar
    sparc32, sun4d: Implemented SMP IPIs support for SUN4D machines · 55dd23ec
    Daniel Hellstrom authored
    The sun4d does not seem to have a distingstion between soft and hard
    IRQs. When generating IPIs the generated IRQ looks like a hard IRQ,
    this patch adds a "IPI check" in the sun4d irq trap handler at a
    predefined IRQ number (SUN4D_IPI_IRQ). Before generating an IPI
    a per-cpu memory structure is modified for the "IPI check" to
    successfully detect a IPI request to a specific processor, the check
    clears the IPI work requested.
    
    All three IPIs (resched, single and cpu-mask) use the same IRQ
    number.
    
    The IPI IRQ should preferrably be on a separate IRQ and definitly
    not shared with IRQ handlers requesting IRQ with IRQF_SHARED.
    Signed-off-by: default avatarDaniel Hellstrom <daniel@gaisler.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    55dd23ec
sun4d_smp.c 10.2 KB