• Linus Torvalds's avatar
    Revert "of/irq: of_irq_find_parent: check for parent equal to child" · b4bbb029
    Linus Torvalds authored
    This reverts commit dc937280.
    
    As requested by Ben Herrenschmidt:
      "This breaks some powerpc platforms at least.  The practice of having
       a node provide an explicit "interrupt-parent" property pointing to
       itself is an old trick that we've used in the past to allow a
       device-node to have interrupts routed to different controllers.
    
       In that case, the node also contains an interrupt-map, so the node is
       its own parent, the interrupt resolution hits the map, which then can
       route each individual interrupt to a different parent."
    
    Grant says:
      "Ah, nuts, yes that is broken then.  Yes, please revert the commit and
       Rob & I will come up with a better solution.
    
       Rob, I think it can be done by explicitly checking for np ==
       desc->interrupt_parent in of_irq_init() instead of relying on
       of_irq_find_parent() returning NULL."
    Requested-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    Acked-by: default avatarGrant Likely <grant.likely@secretlab.ca>
    Cc: Rob Herring <rob.herring@calxeda.com>
    Cc: devicetree-discuss@lists.ozlabs.org
    Cc: linuxppc-dev <linuxppc-dev@lists.ozlabs.org>
    Cc: Tanmay Inamdar <tinamdar@apm.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    b4bbb029
irq.c 13.6 KB