• Grant Likely's avatar
    irqdomain: Relax failure path on setting up mappings · 5e1cda5b
    Grant Likely authored
    Commit 98aa468e, "irqdomain: Support for static IRQ mapping and
    association" introduced an API for directly associating blocks of hwirqs
    to linux irqs. However, if any irq in that block failed to map (say if
    the mapping functions returns an error because the irq is already
    mapped) then the whole thing will fail and roll back. This is probably
    too aggressive since there are valid reasons why a mapping may fail.
    ie. Firmware may have a particular IRQ marked as unusable.
    
    This patch drops the error path out of irq_domain_associate(). If a
    mapping fails, then it is simply skipped. There is no reason to fail the
    entire allocation.
    
    v2: Still output an information message on failed mappings and make sure
        attempted mapping gets cleared out of the irq_data structure.
    Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
    Cc: Paul Mundt <lethal@linux-sh.org>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    5e1cda5b
irqdomain.c 25.7 KB