spectre.h (906B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2 3#ifndef __ASM_SPECTRE_H 4#define __ASM_SPECTRE_H 5 6enum { 7 SPECTRE_UNAFFECTED, 8 SPECTRE_MITIGATED, 9 SPECTRE_VULNERABLE, 10}; 11 12enum { 13 __SPECTRE_V2_METHOD_BPIALL, 14 __SPECTRE_V2_METHOD_ICIALLU, 15 __SPECTRE_V2_METHOD_SMC, 16 __SPECTRE_V2_METHOD_HVC, 17 __SPECTRE_V2_METHOD_LOOP8, 18}; 19 20enum { 21 SPECTRE_V2_METHOD_BPIALL = BIT(__SPECTRE_V2_METHOD_BPIALL), 22 SPECTRE_V2_METHOD_ICIALLU = BIT(__SPECTRE_V2_METHOD_ICIALLU), 23 SPECTRE_V2_METHOD_SMC = BIT(__SPECTRE_V2_METHOD_SMC), 24 SPECTRE_V2_METHOD_HVC = BIT(__SPECTRE_V2_METHOD_HVC), 25 SPECTRE_V2_METHOD_LOOP8 = BIT(__SPECTRE_V2_METHOD_LOOP8), 26}; 27 28#ifdef CONFIG_GENERIC_CPU_VULNERABILITIES 29void spectre_v2_update_state(unsigned int state, unsigned int methods); 30#else 31static inline void spectre_v2_update_state(unsigned int state, 32 unsigned int methods) 33{} 34#endif 35 36int spectre_bhb_update_vectors(unsigned int method); 37 38#endif