lib/edid: Save the display ASCII string

Change-Id: Ic31af53dcb9947e2264c809ee8f80ea4f89f347d
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/19499
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
Arthur Heymans 2017-04-29 14:00:47 +02:00 committed by Nico Huber
parent 53485d2eab
commit dbe81612ad
2 changed files with 7 additions and 2 deletions

View File

@ -53,6 +53,8 @@ struct edid_mode {
* unsigned int. We can move more into into this struct as needed. * unsigned int. We can move more into into this struct as needed.
*/ */
#define EDID_ASCII_STRING_LENGTH 13
struct edid { struct edid {
/* These next three things used to all be called bpp. /* These next three things used to all be called bpp.
* Merriment ensued. The identifier * Merriment ensued. The identifier
@ -89,6 +91,7 @@ struct edid {
u32 bytes_per_line; u32 bytes_per_line;
int hdmi_monitor_detected; int hdmi_monitor_detected;
char ascii_string[EDID_ASCII_STRING_LENGTH + 1];
}; };
enum edid_status { enum edid_status {

View File

@ -470,9 +470,11 @@ detailed_block(struct edid *result_edid, unsigned char *x, int in_extension,
* slots, seems to be specified by SPWG: * slots, seems to be specified by SPWG:
* http://www.spwg.org/ * http://www.spwg.org/
*/ */
strcpy(result_edid->ascii_string, extract_string(x + 5,
&c->has_valid_string_termination,
EDID_ASCII_STRING_LENGTH));
printk(BIOS_SPEW, "ASCII string: %s\n", printk(BIOS_SPEW, "ASCII string: %s\n",
extract_string(x + 5, result_edid->ascii_string);
&c->has_valid_string_termination, 13));
return 1; return 1;
case 0xFF: case 0xFF:
printk(BIOS_SPEW, "Serial number: %s\n", printk(BIOS_SPEW, "Serial number: %s\n",