1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * Copyright (c) 2015 Google, Inc 4 */ 5 6 #ifndef __ASM_ARCH_MICROCODE_H 7 #define __ASM_ARCH_MICROCODE_H 8 9 #ifndef __ASSEMBLY__ 10 11 /* This is a declaration for ucode_base in start.S */ 12 extern u32 ucode_base; 13 extern u32 ucode_size; 14 15 /** 16 * microcode_update_intel() - Apply microcode updates 17 * 18 * Applies any microcode updates in the device tree. 19 * 20 * @return 0 if OK, -EEXIST if the updates were already applied, -ENOENT if 21 * not updates were found, -EINVAL if an update was invalid 22 */ 23 int microcode_update_intel(void); 24 25 /** 26 * microcode_read_rev() - Read the microcode version 27 * 28 * This reads the microcode version of the currently running CPU 29 * 30 * @return microcode version number 31 */ 32 int microcode_read_rev(void); 33 #endif /* __ASSEMBLY__ */ 34 35 #endif 36