File manager - Edit - /home/newsbmcs.com/public_html/static/img/logo/irqflags.h.tar
Back
usr/src/linux-headers-5.15.0-133/arch/arc/include/asm/irqflags.h 0000644 00000000553 15030342544 0017615 0 ustar 00 /* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) */ #ifndef __ASM_ARC_IRQFLAGS_H #define __ASM_ARC_IRQFLAGS_H #ifdef CONFIG_ISA_ARCOMPACT #include <asm/irqflags-compact.h> #else #include <asm/irqflags-arcv2.h> #endif #endif usr/src/linux-headers-5.15.0-133/arch/parisc/include/asm/irqflags.h 0000644 00000002026 15030344440 0020323 0 ustar 00 /* SPDX-License-Identifier: GPL-2.0 */ #ifndef __PARISC_IRQFLAGS_H #define __PARISC_IRQFLAGS_H #include <linux/types.h> #include <asm/psw.h> static inline unsigned long arch_local_save_flags(void) { unsigned long flags; asm volatile("ssm 0, %0" : "=r" (flags) : : "memory"); return flags; } static inline void arch_local_irq_disable(void) { asm volatile("rsm %0,%%r0\n" : : "i" (PSW_I) : "memory"); } static inline void arch_local_irq_enable(void) { asm volatile("ssm %0,%%r0\n" : : "i" (PSW_I) : "memory"); } static inline unsigned long arch_local_irq_save(void) { unsigned long flags; asm volatile("rsm %1,%0" : "=r" (flags) : "i" (PSW_I) : "memory"); return flags; } static inline void arch_local_irq_restore(unsigned long flags) { asm volatile("mtsm %0" : : "r" (flags) : "memory"); } static inline bool arch_irqs_disabled_flags(unsigned long flags) { return (flags & PSW_I) == 0; } static inline bool arch_irqs_disabled(void) { return arch_irqs_disabled_flags(arch_local_save_flags()); } #endif /* __PARISC_IRQFLAGS_H */ usr/src/linux-headers-5.15.0-142/arch/arc/include/asm/irqflags.h 0000644 00000000553 15030351315 0017611 0 ustar 00 /* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) */ #ifndef __ASM_ARC_IRQFLAGS_H #define __ASM_ARC_IRQFLAGS_H #ifdef CONFIG_ISA_ARCOMPACT #include <asm/irqflags-compact.h> #else #include <asm/irqflags-arcv2.h> #endif #endif usr/src/linux-headers-5.15.0-142/arch/parisc/include/asm/irqflags.h 0000644 00000002026 15030353065 0020326 0 ustar 00 /* SPDX-License-Identifier: GPL-2.0 */ #ifndef __PARISC_IRQFLAGS_H #define __PARISC_IRQFLAGS_H #include <linux/types.h> #include <asm/psw.h> static inline unsigned long arch_local_save_flags(void) { unsigned long flags; asm volatile("ssm 0, %0" : "=r" (flags) : : "memory"); return flags; } static inline void arch_local_irq_disable(void) { asm volatile("rsm %0,%%r0\n" : : "i" (PSW_I) : "memory"); } static inline void arch_local_irq_enable(void) { asm volatile("ssm %0,%%r0\n" : : "i" (PSW_I) : "memory"); } static inline unsigned long arch_local_irq_save(void) { unsigned long flags; asm volatile("rsm %1,%0" : "=r" (flags) : "i" (PSW_I) : "memory"); return flags; } static inline void arch_local_irq_restore(unsigned long flags) { asm volatile("mtsm %0" : : "r" (flags) : "memory"); } static inline bool arch_irqs_disabled_flags(unsigned long flags) { return (flags & PSW_I) == 0; } static inline bool arch_irqs_disabled(void) { return arch_irqs_disabled_flags(arch_local_save_flags()); } #endif /* __PARISC_IRQFLAGS_H */ usr/src/linux-headers-5.15.0-141/arch/arc/include/asm/irqflags.h 0000644 00000000553 15030426367 0017622 0 ustar 00 /* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) */ #ifndef __ASM_ARC_IRQFLAGS_H #define __ASM_ARC_IRQFLAGS_H #ifdef CONFIG_ISA_ARCOMPACT #include <asm/irqflags-compact.h> #else #include <asm/irqflags-arcv2.h> #endif #endif usr/src/linux-headers-5.15.0-142/arch/mips/include/asm/irqflags.h 0000644 00000010156 15030543654 0020025 0 ustar 00 /* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * Copyright (C) 1994, 95, 96, 97, 98, 99, 2003 by Ralf Baechle * Copyright (C) 1996 by Paul M. Antoine * Copyright (C) 1999 Silicon Graphics * Copyright (C) 2000 MIPS Technologies, Inc. */ #ifndef _ASM_IRQFLAGS_H #define _ASM_IRQFLAGS_H #ifndef __ASSEMBLY__ #include <linux/compiler.h> #include <linux/stringify.h> #include <asm/compiler.h> #include <asm/hazards.h> #if defined(CONFIG_CPU_HAS_DIEI) static inline void arch_local_irq_disable(void) { __asm__ __volatile__( " .set push \n" " .set noat \n" " di \n" " " __stringify(__irq_disable_hazard) " \n" " .set pop \n" : /* no outputs */ : /* no inputs */ : "memory"); } static inline unsigned long arch_local_irq_save(void) { unsigned long flags; asm __volatile__( " .set push \n" " .set reorder \n" " .set noat \n" #if defined(CONFIG_CPU_LOONGSON64) || defined(CONFIG_CPU_LOONGSON32) " mfc0 %[flags], $12 \n" " di \n" #else " di %[flags] \n" #endif " andi %[flags], 1 \n" " " __stringify(__irq_disable_hazard) " \n" " .set pop \n" : [flags] "=r" (flags) : /* no inputs */ : "memory"); return flags; } static inline void arch_local_irq_restore(unsigned long flags) { unsigned long __tmp1; __asm__ __volatile__( " .set push \n" " .set noreorder \n" " .set noat \n" #if defined(CONFIG_IRQ_MIPS_CPU) /* * Slow, but doesn't suffer from a relatively unlikely race * condition we're having since days 1. */ " beqz %[flags], 1f \n" " di \n" " ei \n" "1: \n" #else /* * Fast, dangerous. Life is fun, life is good. */ " mfc0 $1, $12 \n" " ins $1, %[flags], 0, 1 \n" " mtc0 $1, $12 \n" #endif " " __stringify(__irq_disable_hazard) " \n" " .set pop \n" : [flags] "=r" (__tmp1) : "0" (flags) : "memory"); } #else /* Functions that require preempt_{dis,en}able() are in mips-atomic.c */ void arch_local_irq_disable(void); unsigned long arch_local_irq_save(void); void arch_local_irq_restore(unsigned long flags); #endif /* CONFIG_CPU_HAS_DIEI */ static inline void arch_local_irq_enable(void) { __asm__ __volatile__( " .set push \n" " .set reorder \n" " .set noat \n" #if defined(CONFIG_CPU_HAS_DIEI) " ei \n" #else " mfc0 $1,$12 \n" " ori $1,0x1f \n" " xori $1,0x1e \n" " mtc0 $1,$12 \n" #endif " " __stringify(__irq_enable_hazard) " \n" " .set pop \n" : /* no outputs */ : /* no inputs */ : "memory"); } static inline unsigned long arch_local_save_flags(void) { unsigned long flags; asm __volatile__( " .set push \n" " .set reorder \n" " mfc0 %[flags], $12 \n" " .set pop \n" : [flags] "=r" (flags)); return flags; } static inline int arch_irqs_disabled_flags(unsigned long flags) { return !(flags & 1); } static inline int arch_irqs_disabled(void) { return arch_irqs_disabled_flags(arch_local_save_flags()); } #endif /* #ifndef __ASSEMBLY__ */ /* * Do the CPU's IRQ-state tracing from assembly code. */ #ifdef CONFIG_TRACE_IRQFLAGS /* Reload some registers clobbered by trace_hardirqs_on */ #ifdef CONFIG_64BIT # define TRACE_IRQS_RELOAD_REGS \ LONG_L $11, PT_R11(sp); \ LONG_L $10, PT_R10(sp); \ LONG_L $9, PT_R9(sp); \ LONG_L $8, PT_R8(sp); \ LONG_L $7, PT_R7(sp); \ LONG_L $6, PT_R6(sp); \ LONG_L $5, PT_R5(sp); \ LONG_L $4, PT_R4(sp); \ LONG_L $2, PT_R2(sp) #else # define TRACE_IRQS_RELOAD_REGS \ LONG_L $7, PT_R7(sp); \ LONG_L $6, PT_R6(sp); \ LONG_L $5, PT_R5(sp); \ LONG_L $4, PT_R4(sp); \ LONG_L $2, PT_R2(sp) #endif # define TRACE_IRQS_ON \ CLI; /* make sure trace_hardirqs_on() is called in kernel level */ \ jal trace_hardirqs_on # define TRACE_IRQS_ON_RELOAD \ TRACE_IRQS_ON; \ TRACE_IRQS_RELOAD_REGS # define TRACE_IRQS_OFF \ jal trace_hardirqs_off #else # define TRACE_IRQS_ON # define TRACE_IRQS_ON_RELOAD # define TRACE_IRQS_OFF #endif #endif /* _ASM_IRQFLAGS_H */ usr/src/linux-headers-5.15.0-133/arch/ia64/include/asm/irqflags.h 0000644 00000004060 15030545154 0017612 0 ustar 00 /* SPDX-License-Identifier: GPL-2.0 */ /* * IRQ flags defines. * * Copyright (C) 1998-2003 Hewlett-Packard Co * David Mosberger-Tang <davidm@hpl.hp.com> * Copyright (C) 1999 Asit Mallick <asit.k.mallick@intel.com> * Copyright (C) 1999 Don Dugger <don.dugger@intel.com> */ #ifndef _ASM_IA64_IRQFLAGS_H #define _ASM_IA64_IRQFLAGS_H #include <asm/pal.h> #include <asm/kregs.h> #ifdef CONFIG_IA64_DEBUG_IRQ extern unsigned long last_cli_ip; static inline void arch_maybe_save_ip(unsigned long flags) { if (flags & IA64_PSR_I) last_cli_ip = ia64_getreg(_IA64_REG_IP); } #else #define arch_maybe_save_ip(flags) do {} while (0) #endif /* * - clearing psr.i is implicitly serialized (visible by next insn) * - setting psr.i requires data serialization * - we need a stop-bit before reading PSR because we sometimes * write a floating-point register right before reading the PSR * and that writes to PSR.mfl */ static inline unsigned long arch_local_save_flags(void) { ia64_stop(); return ia64_getreg(_IA64_REG_PSR); } static inline unsigned long arch_local_irq_save(void) { unsigned long flags = arch_local_save_flags(); ia64_stop(); ia64_rsm(IA64_PSR_I); arch_maybe_save_ip(flags); return flags; } static inline void arch_local_irq_disable(void) { #ifdef CONFIG_IA64_DEBUG_IRQ arch_local_irq_save(); #else ia64_stop(); ia64_rsm(IA64_PSR_I); #endif } static inline void arch_local_irq_enable(void) { ia64_stop(); ia64_ssm(IA64_PSR_I); ia64_srlz_d(); } static inline void arch_local_irq_restore(unsigned long flags) { #ifdef CONFIG_IA64_DEBUG_IRQ unsigned long old_psr = arch_local_save_flags(); #endif ia64_intrin_local_irq_restore(flags & IA64_PSR_I); arch_maybe_save_ip(old_psr & ~flags); } static inline bool arch_irqs_disabled_flags(unsigned long flags) { return (flags & IA64_PSR_I) == 0; } static inline bool arch_irqs_disabled(void) { return arch_irqs_disabled_flags(arch_local_save_flags()); } static inline void arch_safe_halt(void) { arch_local_irq_enable(); ia64_pal_halt_light(); /* PAL_HALT_LIGHT */ } #endif /* _ASM_IA64_IRQFLAGS_H */ usr/src/linux-headers-5.15.0-133/arch/hexagon/include/asm/irqflags.h 0000644 00000001534 15030573465 0020511 0 ustar 00 /* SPDX-License-Identifier: GPL-2.0-only */ /* * IRQ support for the Hexagon architecture * * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. */ #ifndef _ASM_IRQFLAGS_H #define _ASM_IRQFLAGS_H #include <asm/hexagon_vm.h> #include <linux/types.h> static inline unsigned long arch_local_save_flags(void) { return __vmgetie(); } static inline unsigned long arch_local_irq_save(void) { return __vmsetie(VM_INT_DISABLE); } static inline bool arch_irqs_disabled_flags(unsigned long flags) { return !flags; } static inline bool arch_irqs_disabled(void) { return !__vmgetie(); } static inline void arch_local_irq_enable(void) { __vmsetie(VM_INT_ENABLE); } static inline void arch_local_irq_disable(void) { __vmsetie(VM_INT_DISABLE); } static inline void arch_local_irq_restore(unsigned long flags) { __vmsetie(flags); } #endif usr/src/linux-headers-5.15.0-141/arch/arm/include/asm/irqflags.h 0000644 00000007601 15030621673 0017632 0 ustar 00 /* SPDX-License-Identifier: GPL-2.0 */ #ifndef __ASM_ARM_IRQFLAGS_H #define __ASM_ARM_IRQFLAGS_H #ifdef __KERNEL__ #include <asm/ptrace.h> /* * CPU interrupt mask handling. */ #ifdef CONFIG_CPU_V7M #define IRQMASK_REG_NAME_R "primask" #define IRQMASK_REG_NAME_W "primask" #define IRQMASK_I_BIT 1 #else #define IRQMASK_REG_NAME_R "cpsr" #define IRQMASK_REG_NAME_W "cpsr_c" #define IRQMASK_I_BIT PSR_I_BIT #endif #if __LINUX_ARM_ARCH__ >= 6 #define arch_local_irq_save arch_local_irq_save static inline unsigned long arch_local_irq_save(void) { unsigned long flags; asm volatile( " mrs %0, " IRQMASK_REG_NAME_R " @ arch_local_irq_save\n" " cpsid i" : "=r" (flags) : : "memory", "cc"); return flags; } #define arch_local_irq_enable arch_local_irq_enable static inline void arch_local_irq_enable(void) { asm volatile( " cpsie i @ arch_local_irq_enable" : : : "memory", "cc"); } #define arch_local_irq_disable arch_local_irq_disable static inline void arch_local_irq_disable(void) { asm volatile( " cpsid i @ arch_local_irq_disable" : : : "memory", "cc"); } #define local_fiq_enable() __asm__("cpsie f @ __stf" : : : "memory", "cc") #define local_fiq_disable() __asm__("cpsid f @ __clf" : : : "memory", "cc") #ifndef CONFIG_CPU_V7M #define local_abt_enable() __asm__("cpsie a @ __sta" : : : "memory", "cc") #define local_abt_disable() __asm__("cpsid a @ __cla" : : : "memory", "cc") #else #define local_abt_enable() do { } while (0) #define local_abt_disable() do { } while (0) #endif #else /* * Save the current interrupt enable state & disable IRQs */ #define arch_local_irq_save arch_local_irq_save static inline unsigned long arch_local_irq_save(void) { unsigned long flags, temp; asm volatile( " mrs %0, cpsr @ arch_local_irq_save\n" " orr %1, %0, #128\n" " msr cpsr_c, %1" : "=r" (flags), "=r" (temp) : : "memory", "cc"); return flags; } /* * Enable IRQs */ #define arch_local_irq_enable arch_local_irq_enable static inline void arch_local_irq_enable(void) { unsigned long temp; asm volatile( " mrs %0, cpsr @ arch_local_irq_enable\n" " bic %0, %0, #128\n" " msr cpsr_c, %0" : "=r" (temp) : : "memory", "cc"); } /* * Disable IRQs */ #define arch_local_irq_disable arch_local_irq_disable static inline void arch_local_irq_disable(void) { unsigned long temp; asm volatile( " mrs %0, cpsr @ arch_local_irq_disable\n" " orr %0, %0, #128\n" " msr cpsr_c, %0" : "=r" (temp) : : "memory", "cc"); } /* * Enable FIQs */ #define local_fiq_enable() \ ({ \ unsigned long temp; \ __asm__ __volatile__( \ "mrs %0, cpsr @ stf\n" \ " bic %0, %0, #64\n" \ " msr cpsr_c, %0" \ : "=r" (temp) \ : \ : "memory", "cc"); \ }) /* * Disable FIQs */ #define local_fiq_disable() \ ({ \ unsigned long temp; \ __asm__ __volatile__( \ "mrs %0, cpsr @ clf\n" \ " orr %0, %0, #64\n" \ " msr cpsr_c, %0" \ : "=r" (temp) \ : \ : "memory", "cc"); \ }) #define local_abt_enable() do { } while (0) #define local_abt_disable() do { } while (0) #endif /* * Save the current interrupt enable state. */ #define arch_local_save_flags arch_local_save_flags static inline unsigned long arch_local_save_flags(void) { unsigned long flags; asm volatile( " mrs %0, " IRQMASK_REG_NAME_R " @ local_save_flags" : "=r" (flags) : : "memory", "cc"); return flags; } /* * restore saved IRQ & FIQ state */ #define arch_local_irq_restore arch_local_irq_restore static inline void arch_local_irq_restore(unsigned long flags) { asm volatile( " msr " IRQMASK_REG_NAME_W ", %0 @ local_irq_restore" : : "r" (flags) : "memory", "cc"); } #define arch_irqs_disabled_flags arch_irqs_disabled_flags static inline int arch_irqs_disabled_flags(unsigned long flags) { return flags & IRQMASK_I_BIT; } #include <asm-generic/irqflags.h> #endif /* ifdef __KERNEL__ */ #endif /* ifndef __ASM_ARM_IRQFLAGS_H */
| ver. 1.4 |
Github
|
.
| PHP 8.2.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings