Stefan Reinauer | 3f8989e | 2012-04-25 22:58:23 +0200 | [diff] [blame] | 1 | /* |
| 2 | * This file is part of the coreboot project. |
| 3 | * |
Vadim Bendebury | 537b4e0 | 2012-06-19 12:56:57 -0700 | [diff] [blame] | 4 | * Copyright (C) 2012 The ChromiumOS Authors. All rights reserved. |
Stefan Reinauer | 3f8989e | 2012-04-25 22:58:23 +0200 | [diff] [blame] | 5 | * Copyright (C) 2000 Ronald G. Minnich |
| 6 | * |
| 7 | * This program is free software; you can redistribute it and/or modify |
| 8 | * it under the terms of the GNU General Public License as published by |
| 9 | * the Free Software Foundation; version 2 of the License. |
| 10 | * |
| 11 | * This program is distributed in the hope that it will be useful, |
| 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 14 | * GNU General Public License for more details. |
Stefan Reinauer | 3f8989e | 2012-04-25 22:58:23 +0200 | [diff] [blame] | 15 | */ |
Vadim Bendebury | 537b4e0 | 2012-06-19 12:56:57 -0700 | [diff] [blame] | 16 | #ifndef __CPU__INTEL__MICROCODE__ |
| 17 | #define __CPU__INTEL__MICROCODE__ |
Stefan Reinauer | 3f8989e | 2012-04-25 22:58:23 +0200 | [diff] [blame] | 18 | |
Aaron Durbin | a02bb65 | 2016-02-05 14:58:06 -0600 | [diff] [blame] | 19 | #include <stdint.h> |
| 20 | |
Vadim Bendebury | 537b4e0 | 2012-06-19 12:56:57 -0700 | [diff] [blame] | 21 | void intel_update_microcode_from_cbfs(void); |
Aaron Durbin | 98ffb42 | 2013-01-15 15:15:32 -0600 | [diff] [blame] | 22 | /* Find a microcode that matches the revision and platform family returning |
| 23 | * NULL if none found. */ |
| 24 | const void *intel_microcode_find(void); |
| 25 | /* It is up to the caller to determine if parallel loading is possible as |
Paul Menzel | d46161e | 2013-03-30 21:01:13 +0100 | [diff] [blame] | 26 | * well as ensuring the microcode matches the family and revision (i.e. with |
Aaron Durbin | 98ffb42 | 2013-01-15 15:15:32 -0600 | [diff] [blame] | 27 | * intel_microcode_find()). */ |
| 28 | void intel_microcode_load_unlocked(const void *microcode_patch); |
Rizwan Qureshi | 30b755b | 2015-07-23 22:31:51 +0530 | [diff] [blame] | 29 | |
| 30 | /* SoC specific check to determine if microcode update is really |
| 31 | * required, will skip microcode update if true. */ |
| 32 | int soc_skip_ucode_update(u32 currrent_patch_id, u32 new_patch_id); |
Vadim Bendebury | 537b4e0 | 2012-06-19 12:56:57 -0700 | [diff] [blame] | 33 | |
| 34 | #endif |