Add AMD Family 10h PH-E0 support

the patch file comes from
src/vendorcode/amd/agesa/f12/Proc/CPU/Family/0x10/RevE
/F10MicrocodePatch010000bf.c

Change-Id: If701c8a908edf1c486665d3ce4df65da0f65c802
Signed-off-by: QingPei Wang <wangqingpei@gmail.com>
Reviewed-on: http://review.coreboot.org/202
Tested-by: build bot (Jenkins)
Reviewed-by: Peter Stuge <peter@stuge.se>
This commit is contained in:
QingPei Wang
2011-09-13 18:04:22 +08:00
committed by Peter Stuge
parent 62ff00e13f
commit 8eb4273290
4 changed files with 169 additions and 1 deletions

View File

@ -0,0 +1,164 @@
/*
============================================================
Copyright (c) Advanced Micro Devices, Inc., 2004-2008
The enclosed microcode is intended to be used with AMD
Microprocessors. You may copy, view and install the
enclosed microcode only for development and deployment of
firmware, BIOS, or operating system code for computer
systems that contain AMD processors. You are not
authorized to use the enclosed microcode for any other
purpose.
THE MICROCODE IS PROVIDED "AS IS" WITHOUT ANY EXPRESS OR
IMPLIED WARRANTY OF ANY KIND, INCLUDING BUT NOT LIMITED TO
WARRANTIES OF MERCHANTABILITY, NON- INFRINGEMENT,
TITLE,FITNESS FOR ANY PARTICULAR PURPOSE, OR WARRANTIES
ARISING FROM CONDUCT, COURSE OF DEALING, OR USAGE OF TRADE.
AMD does not assume any responsibility for any errors which
may appear in this microcode or any other related
information provided to you by AMD, or result from use of
this microcode. AMD is not obligated to furnish, support,
or make any further information, software, technical
information, know-how, or show-how available related to this
microcode.
The microcode is provided with "RESTRICTED RIGHTS." Use,
duplication, or disclosure by the U.S. Government is subject
to the restrictions as set forth in FAR 52.227-14 and
DFAR252.227-7013, et seq., or its successor. Use of the
microcode by the U.S. Government constitutes
acknowledgement of AMD's proprietary rights in them.
============================================================
*/
0x10, 0x20, 0x17, 0x02, 0xbf, 0x00, 0x00, 0x01, 0x00, 0x80, 0x20, 0x00,
0x42, 0x82, 0x02, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xa0, 0x10, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x74, 0x0f, 0x00, 0x00,
0xbe, 0x01, 0x00, 0x00, 0x33, 0x0e, 0x00, 0x00, 0xa9, 0x01, 0x00, 0x00,
0x75, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xa0, 0xfd, 0xff, 0x28, 0xc3, 0x3f, 0xc0, 0xcf,
0xff, 0x07, 0xe2, 0x01, 0x0f, 0xde, 0x50, 0xfe, 0xf2, 0xdf, 0xff, 0x0f,
0x3b, 0xfc, 0x01, 0xc5, 0x40, 0x03, 0xd4, 0x00, 0x80, 0xff, 0xfe, 0x7f,
0xfe, 0xe1, 0x1b, 0xc8, 0x5b, 0xf6, 0xff, 0xff, 0x7b, 0x87, 0x5f, 0xad,
0x6b, 0xf9, 0x6f, 0xfe, 0xfa, 0x1f, 0xfe, 0xb5, 0x00, 0x40, 0x11, 0x6a,
0x0e, 0xc0, 0x9b, 0x56, 0xe8, 0x75, 0xe0, 0x0f, 0x38, 0x00, 0xcf, 0xcc,
0xa0, 0xd7, 0x83, 0x3f, 0xff, 0x7b, 0xfc, 0xbf, 0x00, 0x3f, 0x0f, 0xff,
0x35, 0x00, 0x80, 0xd0, 0x18, 0x07, 0x60, 0x19, 0x07, 0xf4, 0x7a, 0xf0,
0xa6, 0x1c, 0x00, 0x38, 0x1f, 0xc0, 0xe7, 0xa0, 0xff, 0xff, 0x51, 0x9e,
0x7f, 0x80, 0x9f, 0x87, 0x80, 0x0a, 0x00, 0x60, 0xd3, 0xe0, 0x4f, 0x10,
0xfc, 0x32, 0xd8, 0x3a, 0x49, 0xff, 0x7f, 0xcb, 0xf0, 0x0f, 0xf0, 0xf3,
0x8c, 0xff, 0xff, 0x00, 0xc3, 0x31, 0x17, 0xfd, 0x2c, 0x47, 0x0d, 0x00,
0xd0, 0x32, 0xf0, 0x27, 0x1d, 0x7e, 0x19, 0x6c, 0x60, 0xf1, 0xff, 0x1f,
0x7f, 0x38, 0xe6, 0xa2, 0x16, 0x35, 0xff, 0xff, 0xe7, 0xe1, 0x1f, 0xe0,
0x00, 0xfe, 0xbf, 0x07, 0xbb, 0x9c, 0xf4, 0xff, 0x3f, 0x0f, 0xff, 0x00,
0x07, 0xf8, 0xdf, 0x8d, 0x0b, 0x3e, 0x78, 0x73, 0x3f, 0x8b, 0xff, 0xff,
0x70, 0xe5, 0xf0, 0x0b, 0x03, 0x00, 0x0f, 0x50, 0xff, 0x52, 0xfe, 0xbb,
0xaf, 0xfa, 0x87, 0x7f, 0xff, 0x07, 0xc0, 0xff, 0xa5, 0x14, 0x1f, 0xbe,
0xff, 0x9f, 0xc5, 0xff, 0xc4, 0xaa, 0x72, 0xf8, 0xef, 0x01, 0x80, 0xff,
0xeb, 0xff, 0x00, 0x43, 0x37, 0x96, 0xfd, 0xc3, 0xf6, 0xff, 0xab, 0x80,
0xff, 0x00, 0x3f, 0x0f, 0xff, 0xff, 0x8f, 0xe2, 0xfc, 0x02, 0x54, 0x39,
0xda, 0xd5, 0x00, 0x80, 0xff, 0x68, 0x3c, 0xe0, 0xc1, 0x9b, 0xca, 0xfe,
0xe4, 0xff, 0xff, 0x09, 0x87, 0x5f, 0x06, 0x5b, 0xfe, 0x0f, 0xc4, 0x03,
0x1e, 0xfa, 0xa9, 0x7c, 0xe0, 0xff, 0x7b, 0x00, 0xc0, 0x7f, 0xe0, 0x1f,
0xdf, 0xf0, 0x0f, 0xe0, 0x00, 0xff, 0x81, 0x7f, 0x7f, 0xc3, 0x3f, 0x80,
0x01, 0xfc, 0x07, 0xfe, 0xfe, 0x0d, 0xff, 0x00, 0x00, 0xf0, 0xff, 0x3d,
0x0f, 0xe0, 0x3f, 0xf0, 0xf0, 0x6f, 0xf8, 0x07, 0x3f, 0x80, 0xff, 0xc0,
0xc0, 0xbf, 0xe1, 0x1f, 0xff, 0x00, 0xfe, 0x03, 0x00, 0xff, 0x86, 0x7f,
0x1e, 0x00, 0xf8, 0xff, 0xf8, 0x07, 0xf0, 0x1f, 0x03, 0xf8, 0x37, 0xfc,
0xe0, 0x1f, 0xc0, 0x7f, 0x0f, 0xe0, 0xdf, 0xf0, 0x81, 0x7f, 0x00, 0xff,
0x3f, 0x80, 0x7f, 0xc3, 0x7f, 0x0f, 0x00, 0xfc, 0x0f, 0xfc, 0x03, 0xf8,
0xfe, 0x01, 0xfc, 0x1b, 0x3f, 0xf0, 0x0f, 0xe0, 0xf8, 0x07, 0xf0, 0x6f,
0xff, 0xc0, 0x3f, 0x80, 0xe1, 0x1f, 0xc0, 0xbf, 0xfe, 0xbf, 0x07, 0x00,
0xfc, 0x07, 0xfe, 0x01, 0x0d, 0xff, 0x00, 0xfe, 0xf0, 0x1f, 0xf8, 0x07,
0x37, 0xfc, 0x03, 0xf8, 0xc0, 0x7f, 0xe0, 0x1f, 0xdf, 0xf0, 0x0f, 0xe0,
0x00, 0xff, 0xdf, 0x03, 0x00, 0xfe, 0x03, 0xff, 0xff, 0x86, 0x7f, 0x00,
0x03, 0xf8, 0x0f, 0xfc, 0xfc, 0x1b, 0xfe, 0x01, 0x0f, 0xe0, 0x3f, 0xf0,
0xf0, 0x6f, 0xf8, 0x07, 0x01, 0x80, 0xff, 0xef, 0x7f, 0xbf, 0xff, 0x81,
0xdf, 0x95, 0xc1, 0xaf, 0xff, 0x91, 0xfc, 0x2f, 0x48, 0x57, 0x06, 0xbf,
0xff, 0x4f, 0xb0, 0xff, 0x32, 0xd8, 0x3a, 0xfc, 0xd7, 0x00, 0x40, 0x95,
0x81, 0xff, 0x94, 0x01, 0x1f, 0xe0, 0xe7, 0xe1, 0xff, 0xff, 0x53, 0xce,
0x7f, 0xa9, 0xeb, 0x83, 0xff, 0xef, 0x4b, 0xfd, 0xfc, 0xbd, 0xbd, 0x0e,
0xff, 0x7b, 0x00, 0xe0, 0x9c, 0x56, 0x0e, 0x00, 0xd0, 0x0f, 0xe0, 0x73,
0xff, 0x81, 0x7f, 0x00, 0xc3, 0x3f, 0x80, 0x7f, 0xfc, 0x07, 0xfe, 0x01,
0x0d, 0xff, 0x00, 0xfe, 0xe0, 0xfd, 0x35, 0x00, 0xe0, 0x0d, 0x2b, 0x07,
0x3a, 0xf0, 0x07, 0xf4, 0x96, 0xff, 0xed, 0x3f, 0xff, 0xe1, 0x1f, 0xab,
0x5b, 0x02, 0x00, 0xfe, 0xfb, 0x87, 0x7f, 0xac, 0x00, 0xa8, 0xcd, 0x1a,
0x6f, 0x72, 0xc0, 0xff, 0xfc, 0x3c, 0xfc, 0x03, 0x1f, 0xc0, 0x7f, 0xe0,
0xe0, 0xdf, 0xf0, 0x0f, 0x7f, 0x00, 0xff, 0x81, 0x80, 0x7f, 0xc3, 0x3f,
0x0f, 0x00, 0xfc, 0x7f, 0xff, 0x7f, 0x79, 0xfc, 0x01, 0x7e, 0x1e, 0xfe,
0x2b, 0x07, 0xe0, 0xfe, 0x07, 0xf0, 0x39, 0xe8, 0xc0, 0x3f, 0x80, 0xff,
0x1f, 0xc0, 0xbf, 0xe1, 0xb9, 0x06, 0x00, 0x78, 0xf6, 0xff, 0xbf, 0x80,
0xff, 0x00, 0x3f, 0x0f, 0xff, 0xff, 0x8f, 0xe2, 0xfc, 0x03, 0xfc, 0x3c,
0x7f, 0x34, 0x1e, 0xf0, 0xd0, 0xef, 0xe5, 0xf3, 0xff, 0xdf, 0x03, 0x00,
0xee, 0xa3, 0x72, 0x00, 0x83, 0x7e, 0x00, 0x9f, 0xf8, 0xfd, 0xff, 0x07,
0x1f, 0xbe, 0xb1, 0xec, 0x65, 0x97, 0xff, 0x1f, 0x79, 0xf8, 0x07, 0xf8,
0x80, 0xc4, 0x97, 0x01, 0x00, 0xff, 0x81, 0x7f, 0x7f, 0xc3, 0x3f, 0x80,
0x01, 0xfc, 0x07, 0xfe, 0xfe, 0x0d, 0xff, 0x00, 0x07, 0xf0, 0x1f, 0xf8,
0xf8, 0x37, 0xfc, 0x03, 0x00, 0xc0, 0xff, 0xf7, 0x3f, 0x80, 0xff, 0xc0,
0xc0, 0xbf, 0xe1, 0x1f, 0xff, 0x00, 0xfe, 0x03, 0x00, 0xff, 0x86, 0x7f,
0xfc, 0x03, 0xf8, 0x0f, 0x01, 0xfc, 0x1b, 0xfe, 0x7b, 0x00, 0xe0, 0xff,
0xe0, 0x1f, 0xc0, 0x7f, 0x0f, 0xe0, 0xdf, 0xf0, 0x81, 0x7f, 0x00, 0xff,
0x3f, 0x80, 0x7f, 0xc3, 0x07, 0xfe, 0x01, 0xfc, 0xff, 0x00, 0xfe, 0x0d,
0xff, 0x3d, 0x00, 0xf0, 0x3f, 0xf0, 0x0f, 0xe0, 0xf8, 0x07, 0xf0, 0x6f,
0xff, 0xc0, 0x3f, 0x80, 0xe1, 0x1f, 0xc0, 0xbf, 0xfe, 0x03, 0xff, 0x00,
0x86, 0x7f, 0x00, 0xff, 0xf8, 0xff, 0x1e, 0x00, 0xf0, 0x1f, 0xf8, 0x07,
0x37, 0xfc, 0x03, 0xf8, 0xc0, 0x7f, 0xe0, 0x1f, 0xdf, 0xf0, 0x0f, 0xe0,
0x00, 0xff, 0x81, 0x7f, 0x7f, 0xc3, 0x3f, 0x80, 0x00, 0xfc, 0x7f, 0x0f,
0x03, 0xf8, 0x0f, 0xfc, 0xfc, 0x1b, 0xfe, 0x01, 0x0f, 0xe0, 0x3f, 0xf0,
0xf0, 0x6f, 0xf8, 0x07, 0x3f, 0x80, 0xff, 0xc0, 0xc0, 0xbf, 0xe1, 0x1f,
0x07, 0x00, 0xfe, 0xbf, 0xfe, 0x01, 0xfc, 0x07, 0x00, 0xfe, 0x0d, 0xff,
0xf8, 0x07, 0xf0, 0x1f, 0x03, 0xf8, 0x37, 0xfc, 0xe0, 0x1f, 0xc0, 0x7f,
0x0f, 0xe0, 0xdf, 0xf0, 0xdf, 0x03, 0x00, 0xff, 0x03, 0xff, 0x00, 0xfe,
0x7f, 0x00, 0xff, 0x86, 0x0f, 0xfc, 0x03, 0xf8, 0xfe, 0x01, 0xfc, 0x1b,
0x3f, 0xf0, 0x0f, 0xe0, 0xf8, 0x07, 0xf0, 0x6f, 0xff, 0xef, 0x01, 0x80,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

View File

@ -157,6 +157,7 @@ static struct cpu_device_id cpu_table[] = {
{ X86_VENDOR_AMD, 0x100F63 }, /* DA-C3 */
{ X86_VENDOR_AMD, 0x100F80 }, /* HY-D0 */
{ X86_VENDOR_AMD, 0x100F81 }, /* HY-D1 */
{ X86_VENDOR_AMD, 0x100FA0 }, /* PH-E0 */
{ 0, 0 },
};

View File

@ -51,6 +51,7 @@ static const u8 microcode_updates[] __attribute__ ((aligned(16))) = {
* 00100F62h (DA-C2) 1062h 0100009Fh
* 00100F63h (DA-C3) 1043h 010000b6h
* 00100F81h (HY-D1) 1081h 010000c4h
* 00100FA0h (PH-E0) 10A0h 010000bfh
*/
#include CONFIG_AMD_UCODE_PATCH_FILE
@ -78,6 +79,7 @@ static u32 get_equivalent_processor_rev_id(u32 orig_id) {
0x100f62, 0x1062,
0x100f63, 0x1043,
0x100f81, 0x1081,
0x100fa0, 0x10A0,
};
u32 new_id;