MIPS: Select CONFIG_HANDLE_DOMAIN_IRQ and make it work.
authorDavid Daney <david.daney@cavium.com>
Tue, 9 Feb 2016 19:00:07 +0000 (11:00 -0800)
committerRalf Baechle <ralf@linux-mips.org>
Fri, 13 May 2016 12:01:40 +0000 (14:01 +0200)
Per the subject, always select HANDLE_DOMAIN_IRQ, and implement
set_irq_regs() so that it actually works.

Signed-off-by: David Daney <david.daney@cavium.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/12496/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/Kconfig
arch/mips/include/asm/irq_regs.h

index c049c0667559b012074d5564bcfc3d7b38be640d..2352917a47a1f15c0e557174610cba86a026d628 100644 (file)
@@ -62,6 +62,7 @@ config MIPS
        select HAVE_IRQ_TIME_ACCOUNTING
        select GENERIC_TIME_VSYSCALL
        select ARCH_CLOCKSOURCE_DATA
+       select HANDLE_DOMAIN_IRQ
 
 menu "Machine selection"
 
index 33bd2a06de577ece986977f07c495fd0e3b5daea..8c48d6dd1d7894d59aaade09ef7843695f854b0c 100644 (file)
@@ -18,4 +18,14 @@ static inline struct pt_regs *get_irq_regs(void)
        return current_thread_info()->regs;
 }
 
+static inline struct pt_regs *set_irq_regs(struct pt_regs *new_regs)
+{
+       struct pt_regs *old_regs;
+
+       old_regs = get_irq_regs();
+       current_thread_info()->regs = new_regs;
+
+       return old_regs;
+}
+
 #endif /* __ASM_IRQ_REGS_H */