]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
1da177e4 LT |
2 | #ifndef __ASM_HARDIRQ_H |
3 | #define __ASM_HARDIRQ_H | |
4 | ||
1da177e4 LT |
5 | #include <linux/cache.h> |
6 | #include <linux/threads.h> | |
7 | #include <asm/irq.h> | |
8 | ||
be167862 | 9 | /* number of IPIS _not_ including IPI_CPU_BACKTRACE */ |
89d798b7 | 10 | #define NR_IPI 7 |
4a88abd7 | 11 | |
1da177e4 LT |
12 | typedef struct { |
13 | unsigned int __softirq_pending; | |
cab8c6f3 | 14 | #ifdef CONFIG_SMP |
4a88abd7 | 15 | unsigned int ipi_irqs[NR_IPI]; |
cab8c6f3 | 16 | #endif |
1da177e4 LT |
17 | } ____cacheline_aligned irq_cpustat_t; |
18 | ||
19 | #include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */ | |
20 | ||
46c48f22 RK |
21 | #define __inc_irq_stat(cpu, member) __IRQ_STAT(cpu, member)++ |
22 | #define __get_irq_stat(cpu, member) __IRQ_STAT(cpu, member) | |
23 | ||
b54992fe RK |
24 | #ifdef CONFIG_SMP |
25 | u64 smp_irq_stat_cpu(unsigned int cpu); | |
26 | #else | |
27 | #define smp_irq_stat_cpu(cpu) 0 | |
28 | #endif | |
29 | ||
30 | #define arch_irq_stat_cpu smp_irq_stat_cpu | |
31 | ||
1da177e4 LT |
32 | #define __ARCH_IRQ_EXIT_IRQS_DISABLED 1 |
33 | ||
34 | #endif /* __ASM_HARDIRQ_H */ |