aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/include/edid.h3
-rw-r--r--src/lib/edid.c6
2 files changed, 7 insertions, 2 deletions
diff --git a/src/include/edid.h b/src/include/edid.h
index 100dbe9ba3..1eb8c4d306 100644
--- a/src/include/edid.h
+++ b/src/include/edid.h
@@ -53,6 +53,8 @@ struct edid_mode {
* unsigned int. We can move more into into this struct as needed.
*/
+#define EDID_ASCII_STRING_LENGTH 13
+
struct edid {
/* These next three things used to all be called bpp.
* Merriment ensued. The identifier
@@ -89,6 +91,7 @@ struct edid {
u32 bytes_per_line;
int hdmi_monitor_detected;
+ char ascii_string[EDID_ASCII_STRING_LENGTH + 1];
};
enum edid_status {
diff --git a/src/lib/edid.c b/src/lib/edid.c
index 7b7098a0e8..405b3fdbc1 100644
--- a/src/lib/edid.c
+++ b/src/lib/edid.c
@@ -470,9 +470,11 @@ detailed_block(struct edid *result_edid, unsigned char *x, int in_extension,
* slots, seems to be specified by SPWG:
* 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",
- extract_string(x + 5,
- &c->has_valid_string_termination, 13));
+ result_edid->ascii_string);
return 1;
case 0xFF:
printk(BIOS_SPEW, "Serial number: %s\n",