1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _ASM_IA64_XTP_H
3 #define _ASM_IA64_XTP_H
9 #define XTP_OFFSET 0x1e0008
11 #define SMP_IRQ_REDIRECTION (1 << 0)
12 #define SMP_IPI_REDIRECTION (1 << 1)
14 extern unsigned char smp_int_redirect
;
17 * XTP control functions:
18 * min_xtp : route all interrupts to this CPU
19 * normal_xtp: nominal XTP value
20 * max_xtp : never deliver interrupts to this CPU.
26 if (smp_int_redirect
& SMP_IRQ_REDIRECTION
)
27 writeb(0x00, ipi_base_addr
+ XTP_OFFSET
); /* XTP to min */
33 if (smp_int_redirect
& SMP_IRQ_REDIRECTION
)
34 writeb(0x08, ipi_base_addr
+ XTP_OFFSET
); /* XTP normal */
40 if (smp_int_redirect
& SMP_IRQ_REDIRECTION
)
41 writeb(0x0f, ipi_base_addr
+ XTP_OFFSET
); /* Set XTP to max */
44 #endif /* CONFIG_SMP */
46 #endif /* _ASM_IA64_XTP_Hy */