1234567891011121314151617181920212223242526272829303132333435363738 |
- /* SPDX-License-Identifier: GPL-2.0-only */
- #ifndef __ASM_SPECTRE_H
- #define __ASM_SPECTRE_H
- enum {
- SPECTRE_UNAFFECTED,
- SPECTRE_MITIGATED,
- SPECTRE_VULNERABLE,
- };
- enum {
- __SPECTRE_V2_METHOD_BPIALL,
- __SPECTRE_V2_METHOD_ICIALLU,
- __SPECTRE_V2_METHOD_SMC,
- __SPECTRE_V2_METHOD_HVC,
- __SPECTRE_V2_METHOD_LOOP8,
- };
- enum {
- SPECTRE_V2_METHOD_BPIALL = BIT(__SPECTRE_V2_METHOD_BPIALL),
- SPECTRE_V2_METHOD_ICIALLU = BIT(__SPECTRE_V2_METHOD_ICIALLU),
- SPECTRE_V2_METHOD_SMC = BIT(__SPECTRE_V2_METHOD_SMC),
- SPECTRE_V2_METHOD_HVC = BIT(__SPECTRE_V2_METHOD_HVC),
- SPECTRE_V2_METHOD_LOOP8 = BIT(__SPECTRE_V2_METHOD_LOOP8),
- };
- #ifdef CONFIG_GENERIC_CPU_VULNERABILITIES
- void spectre_v2_update_state(unsigned int state, unsigned int methods);
- #else
- static inline void spectre_v2_update_state(unsigned int state,
- unsigned int methods)
- {}
- #endif
- int spectre_bhb_update_vectors(unsigned int method);
- #endif
|