blob: 29bf06088973fdde911e84ec9855e17616a5f422 [file] [log] [blame]
Simon Glassf79d5382014-11-12 22:42:21 -07001/*
2 * Copyright (c) 2015 Google, Inc
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#ifndef __ASM_ARCH_MICROCODE_H
8#define __ASM_ARCH_MICROCODE_H
9
Simon Glass9281eb52015-01-01 16:18:14 -070010#ifndef __ASSEMBLY__
11
Simon Glass8dda5872016-03-11 22:07:11 -070012/* This is a declaration for ucode_base in start.S */
13extern u32 ucode_base;
14
Simon Glassf79d5382014-11-12 22:42:21 -070015/**
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 */
23int microcode_update_intel(void);
Simon Glassc17d4502016-03-11 22:07:09 -070024
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 */
32int microcode_read_rev(void);
Simon Glass9281eb52015-01-01 16:18:14 -070033#endif /* __ASSEMBLY__ */
Simon Glassf79d5382014-11-12 22:42:21 -070034
35#endif