Commit Graph

11 Commits

Author SHA1 Message Date
Algea Cao f337c9f715 common: edid: Fix some warning
Change-Id: I65483b598fa89bd871913f58ad00935f6dadaa95
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2017-11-20 19:17:14 +08:00
Algea Cao 21016d27c5 common: edid: Add more detailed edid parsing
The original edid parsing methods are too simple. The
new parsing methods are carried from kernel.

Change-Id: I28b9b14e1bc76c38366f41d23f0e01ac779780d0
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2017-11-20 11:54:16 +08:00
Mark Yao b9e63a962a edid: support decode edid to drm modes
Change-Id: I38f82586d81177a4e6f5c20815af5480b40d2ff8
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2017-10-11 15:55:17 +08:00
Simon Glass 66a1b30d14 edid: Use sizeof() in cea_is_hdmi_vsdb_present()
We should not use an open-coded value here. Use sizeof() instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Coverity (CID: 163252)
Fixes: 43c6bdd0 (edid: Add HDMI flag to timing info)
2017-06-12 08:38:06 -04:00
Jernej Skrabec bdc906dba9 edid: Fix gcc 7.1 warning
This commit fixes the warning produced by gcc 7.1.

Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2017-06-09 15:29:59 +02:00
Jernej Skrabec 43c6bdd020 edid: Add HDMI flag to timing info
Some DVI monitors don't show anything in HDMI mode since audio stream
confuses them. To solve this situation, this commit adds HDMI flag in
timing data and sets it accordingly during edid parsing.

First existence of extension block is checked. If it exists and it is
CEA861 extension, then data blocks are checked for presence of HDMI
vendor specific data block. If it is present, HDMI flag is set.

Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-15 20:32:12 +02:00
Jernej Skrabec dc8cae4df3 edid: Set timings flags according to edid
Timing flags are never set, so they may contain garbage. Since some
drivers check them, video output may be broken on those drivers.

Initialize them to 0 and check for few common flags.

Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-15 20:28:12 +02:00
Simon Glass 00cf1167bb edid: Add a function to read detailed monitor timings
For digital displays (such as EDP LCDs) we would like to read the EDID
information and use that to set display timings. Provide a function to do
this.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
2015-05-13 09:24:10 -07:00
Hans de Goede e745d064b4 edid: Add an edid_check_checksum() helper function
Add a helper function to check the checksum of an EDID data block.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Anatolij Gustschin <agust@denx.de>
2015-01-14 14:56:38 +01:00
Wolfgang Denk 1a4596601f Add GPL-2.0+ SPDX-License-Identifier to source files
Signed-off-by: Wolfgang Denk <wd@denx.de>
[trini: Fixup common/cmd_io.c]
Signed-off-by: Tom Rini <trini@ti.com>
2013-07-24 09:44:38 -04:00
Tom Wai-Hong Tam d46b5f7dcb edid: Library of EDID decode and print
This implements a library for accessing EDID data from an LCD panel.
This is used to obtain information about the panel such as its
resolution and type.

This is a tidied-up version of the original code pulled from
https://github.com/ynezz/u-boot-edid.

The changes we made are:
 - removed bit fields in the struct;
 - removed endianness cases in the struct;
 - fixed some wrong definitions;
 - fixed to fit 80 columns;
 - fixed some code styles.

Signed-off-by: Tom Wai-Hong Tam <waihong@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
2012-12-11 13:17:34 -07:00