lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 13 Feb 2018 17:09:18 +0800 From: Greentime Hu <green.hu@...il.com> To: greentime@...estech.com, linux-kernel@...r.kernel.org, arnd@...db.de, linux-arch@...r.kernel.org, tglx@...utronix.de, jason@...edaemon.net, marc.zyngier@....com, robh+dt@...nel.org, netdev@...r.kernel.org, deanbo422@...il.com, devicetree@...r.kernel.org, viro@...iv.linux.org.uk, dhowells@...hat.com, will.deacon@....com, daniel.lezcano@...aro.org, linux-serial@...r.kernel.org, geert.uytterhoeven@...il.com, linus.walleij@...aro.org, mark.rutland@....com, greg@...ah.com, ren_guo@...ky.com, rdunlap@...radead.org, davem@...emloft.net, jonas@...thpole.se, stefan.kristiansson@...nalahti.fi, shorne@...il.com Cc: green.hu@...il.com, Vincent Chen <vincentc@...estech.com> Subject: [PATCH v7 14/37] nds32: IRQ handling This patch includes irq related functions and irqchip_init(). Signed-off-by: Vincent Chen <vincentc@...estech.com> Signed-off-by: Greentime Hu <greentime@...estech.com> Acked-by: Arnd Bergmann <arnd@...db.de> --- arch/nds32/include/asm/irqflags.h | 36 ++++++++++++++++++++++++++++++++++++ arch/nds32/kernel/irq.c | 9 +++++++++ 2 files changed, 45 insertions(+) create mode 100644 arch/nds32/include/asm/irqflags.h create mode 100644 arch/nds32/kernel/irq.c diff --git a/arch/nds32/include/asm/irqflags.h b/arch/nds32/include/asm/irqflags.h new file mode 100644 index 000000000000..2bfd00f8bc48 --- /dev/null +++ b/arch/nds32/include/asm/irqflags.h @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: GPL-2.0 +// Copyright (C) 2005-2017 Andes Technology Corporation + +#include <asm/nds32.h> +#include <nds32_intrinsic.h> + +#define arch_local_irq_disable() \ + GIE_DISABLE(); + +#define arch_local_irq_enable() \ + GIE_ENABLE(); +static inline unsigned long arch_local_irq_save(void) +{ + unsigned long flags; + flags = __nds32__mfsr(NDS32_SR_PSW) & PSW_mskGIE; + GIE_DISABLE(); + return flags; +} + +static inline unsigned long arch_local_save_flags(void) +{ + unsigned long flags; + flags = __nds32__mfsr(NDS32_SR_PSW) & PSW_mskGIE; + return flags; +} + +static inline void arch_local_irq_restore(unsigned long flags) +{ + if(flags) + GIE_ENABLE(); +} + +static inline int arch_irqs_disabled_flags(unsigned long flags) +{ + return !flags; +} diff --git a/arch/nds32/kernel/irq.c b/arch/nds32/kernel/irq.c new file mode 100644 index 000000000000..6ff5a672be27 --- /dev/null +++ b/arch/nds32/kernel/irq.c @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0 +// Copyright (C) 2005-2017 Andes Technology Corporation + +#include <linux/irqchip.h> + +void __init init_IRQ(void) +{ + irqchip_init(); +} -- 2.16.1
Powered by blists - more mailing lists