drivers/intel/fsp1_1: Take platform ID as a string, not integers

The platform ID is an 8 character ASCII string, so our config should
take it in as a string, rather than a set of two 32-bit integers.

Change-Id: I76da85fab59fe4891fbc3b5edf430f2791b70ffb
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Reviewed-on: http://review.coreboot.org/11465
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@gmail.com>
This commit is contained in:
Alexandru Gagniuc 2015-08-29 18:53:43 -07:00
parent f55e6680b9
commit 5c261229ae
2 changed files with 13 additions and 12 deletions

View File

@ -63,17 +63,11 @@ config FSP_FILE
help help
The path and filename of the Intel FSP binary for this platform. The path and filename of the Intel FSP binary for this platform.
config FSP_IMAGE_ID_DWORD0 config FSP_IMAGE_ID_STRING
hex "First 4 bytes of 8 byte platform string" string "8 byte platform string identifying the FSP platform"
help help
The first four bytes of the eight byte platform specific string 8 ASCII character byte signature string that will help match the FSP
used to identify the FSP binary that should be used. binary to a supported hardware configuration.
config FSP_IMAGE_ID_DWORD1
hex "Second 4 bytes of 8 byte platform string"
help
The second four bytes of the eight byte platform specific string
used to identify the FSP binary that should be used.
config FSP_INCLUDE_PATH config FSP_INCLUDE_PATH
string "Path for FSP specific include files" string "Path for FSP specific include files"

View File

@ -36,6 +36,13 @@ FSP_INFO_HEADER *find_fsp(void)
u8 *u8; u8 *u8;
u32 u32; u32 u32;
} fsp_ptr; } fsp_ptr;
static const union {
char str_id[8];
u32 int_id[2];
} fsp_id = {
.str_id = CONFIG_FSP_IMAGE_ID_STRING
};
u32 *image_id; u32 *image_id;
for (;;) { for (;;) {
@ -87,8 +94,8 @@ FSP_INFO_HEADER *find_fsp(void)
/* Verify the FSP ID */ /* Verify the FSP ID */
image_id = (u32 *)&fsp_ptr.fih->ImageId[0]; image_id = (u32 *)&fsp_ptr.fih->ImageId[0];
if ((image_id[0] != CONFIG_FSP_IMAGE_ID_DWORD0) if ((image_id[0] != fsp_id.int_id[0])
|| (image_id[1] != CONFIG_FSP_IMAGE_ID_DWORD1)) || (image_id[1] != fsp_id.int_id[1]))
fsp_ptr.u8 = (u8 *)ERROR_FSP_SIG_MISMATCH; fsp_ptr.u8 = (u8 *)ERROR_FSP_SIG_MISMATCH;
break; break;
} }