1. 20 Feb, 2019 1 commit
    • Guo Ren's avatar
      irqchip/csky: fixup handle_irq_perbit break irq · dad4502d
      Guo Ren authored
      [ Upstream commit 56752b21 ]
      
      The handle_irq_perbit function loop every bit in hwirq local variable.
      
      handle_irq_perbit(hwirq) {
        for_everyt_bit_in(hwirq) {
      	handle_domain_irq()
      		->irq_exit()
      		->invoke_softirq()
      		->__do_softirq()
      		->local_irq_enable() // Here will cause new interrupt.
        }
      }
      
      When new interrupt coming at local_irq_enable, it will finish another
      interrupt handler and pull down the interrupt source. But hwirq is the
      local variable for handle_irq_perbit(), it can't get new interrupt
      controller pending reg status. So we need update hwirq with pending reg
      in every loop.
      
      Also change write_relax to writel could prevent stw from fast retire.
      When local_irq is enabled, intc regs is really set-in.
      Signed-off-by: Guo Ren's avatarGuo Ren <ren_guo@c-sky.com>
      Cc: Lu Baoquan <lu.baoquan@intellif.com>
      Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
      dad4502d
  2. 12 Feb, 2019 1 commit
  3. 31 Jan, 2019 1 commit
  4. 01 Nov, 2018 1 commit
  5. 25 Oct, 2018 2 commits
  6. 23 Oct, 2018 2 commits
  7. 03 Oct, 2018 2 commits
  8. 02 Oct, 2018 17 commits
  9. 06 Sep, 2018 1 commit
  10. 22 Aug, 2018 1 commit
  11. 20 Aug, 2018 3 commits
  12. 13 Aug, 2018 4 commits
  13. 06 Aug, 2018 1 commit
  14. 03 Aug, 2018 2 commits
    • Palmer Dabbelt's avatar
      genirq/irqchip: Remove MULTI_IRQ_HANDLER as it's now obselete · 4f7799d9
      Palmer Dabbelt authored
      Now that every user of MULTI_IRQ_HANDLER has been convereted over to use
      GENERIC_IRQ_MULTI_HANDLER remove the references to MULTI_IRQ_HANDLER.
      Signed-off-by: default avatarPalmer Dabbelt <palmer@sifive.com>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: linux@armlinux.org.uk
      Cc: catalin.marinas@arm.com
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: jonas@southpole.se
      Cc: stefan.kristiansson@saunalahti.fi
      Cc: shorne@gmail.com
      Cc: jason@lakedaemon.net
      Cc: marc.zyngier@arm.com
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: nicolas.pitre@linaro.org
      Cc: vladimir.murzin@arm.com
      Cc: keescook@chromium.org
      Cc: jinb.park7@gmail.com
      Cc: yamada.masahiro@socionext.com
      Cc: alexandre.belloni@bootlin.com
      Cc: pombredanne@nexb.com
      Cc: Greg KH <gregkh@linuxfoundation.org>
      Cc: kstewart@linuxfoundation.org
      Cc: jhogan@kernel.org
      Cc: mark.rutland@arm.com
      Cc: ard.biesheuvel@linaro.org
      Cc: james.morse@arm.com
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: openrisc@lists.librecores.org
      Link: https://lkml.kernel.org/r/20180622170126.6308-6-palmer@sifive.com
      4f7799d9
    • Palmer Dabbelt's avatar
      irqchip: Port the ARM IRQ drivers to GENERIC_IRQ_MULTI_HANDLER · 08fb550c
      Palmer Dabbelt authored
      GENERIC_IRQ_MULTI_HANDLER is incompatible with MULTI_IRQ_HANDLER because
      they define the same symbols.  Multiple generic irqchip drivers select
      MULTI_IRQ_HANDLER, which is now defined on all architectures that
      provide set_handle_irq().
      
      To solve this select GENERIC_IRQ_MULTI_HANDLER for all drivers that used to
      select MULTI_IRQ_HANDLER, but only when MULTI_IRQ_HANDLER doesn't exist.
      
      After that every architecture can be converted over from MULTI_IRQ_HANDLER
      to GENERIC_IRQ_MULTI_HANDLER before removing the extra MULTI_IRQ_HANDLER
      scaffolding.
      Signed-off-by: default avatarPalmer Dabbelt <palmer@sifive.com>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: linux@armlinux.org.uk
      Cc: catalin.marinas@arm.com
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: jonas@southpole.se
      Cc: stefan.kristiansson@saunalahti.fi
      Cc: shorne@gmail.com
      Cc: jason@lakedaemon.net
      Cc: marc.zyngier@arm.com
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: nicolas.pitre@linaro.org
      Cc: vladimir.murzin@arm.com
      Cc: keescook@chromium.org
      Cc: jinb.park7@gmail.com
      Cc: yamada.masahiro@socionext.com
      Cc: alexandre.belloni@bootlin.com
      Cc: pombredanne@nexb.com
      Cc: Greg KH <gregkh@linuxfoundation.org>
      Cc: kstewart@linuxfoundation.org
      Cc: jhogan@kernel.org
      Cc: mark.rutland@arm.com
      Cc: ard.biesheuvel@linaro.org
      Cc: james.morse@arm.com
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: openrisc@lists.librecores.org
      Cc: Shea Levy <shea@shealevy.com>
      Link: https://lkml.kernel.org/r/20180622170126.6308-2-palmer@sifive.com
      08fb550c
  15. 27 Jul, 2018 1 commit