xref: /openbmc/u-boot/arch/x86/include/asm/microcode.h (revision 83d290c5)
1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */
29e66506dSSimon Glass /*
39e66506dSSimon Glass  * Copyright (c) 2015 Google, Inc
49e66506dSSimon Glass  */
59e66506dSSimon Glass 
69e66506dSSimon Glass #ifndef __ASM_ARCH_MICROCODE_H
79e66506dSSimon Glass #define __ASM_ARCH_MICROCODE_H
89e66506dSSimon Glass 
99e66506dSSimon Glass #ifndef __ASSEMBLY__
109e66506dSSimon Glass 
11e77b62e2SSimon Glass /* This is a declaration for ucode_base in start.S */
12e77b62e2SSimon Glass extern u32 ucode_base;
13e77b62e2SSimon Glass 
149e66506dSSimon Glass /**
159e66506dSSimon Glass  * microcode_update_intel() - Apply microcode updates
169e66506dSSimon Glass  *
179e66506dSSimon Glass  * Applies any microcode updates in the device tree.
189e66506dSSimon Glass  *
199e66506dSSimon Glass  * @return 0 if OK, -EEXIST if the updates were already applied, -ENOENT if
209e66506dSSimon Glass  * not updates were found, -EINVAL if an update was invalid
219e66506dSSimon Glass  */
229e66506dSSimon Glass int microcode_update_intel(void);
236bcb675bSSimon Glass 
246bcb675bSSimon Glass /**
256bcb675bSSimon Glass  * microcode_read_rev() - Read the microcode version
266bcb675bSSimon Glass  *
276bcb675bSSimon Glass  * This reads the microcode version of the currently running CPU
286bcb675bSSimon Glass  *
296bcb675bSSimon Glass  * @return microcode version number
306bcb675bSSimon Glass  */
316bcb675bSSimon Glass int microcode_read_rev(void);
329e66506dSSimon Glass #endif /* __ASSEMBLY__ */
339e66506dSSimon Glass 
349e66506dSSimon Glass #endif
35