From: Zheng Yang Date: Wed, 21 Jun 2017 07:08:03 +0000 (+0800) Subject: Revert "FROMLIST: drm: edid: HDMI 2.0 HF-VSDB block parsing" X-Git-Tag: release-20171130_firefly~4^2~295 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=afb31b9c18d0d7b5e9fffc0ce94a0647e3386450;p=firefly-linux-kernel-4.4.55.git Revert "FROMLIST: drm: edid: HDMI 2.0 HF-VSDB block parsing" This reverts commit 6e9aa006c4ae10f95bba0121c26b06363efb3b96. UPSTREAM code has support parsing HDMI.20 HF-VSDB. Change-Id: Ia25ee6a92e9a2fee4b3356446c1198e938c5e74d Signed-off-by: Zheng Yang --- diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c index cfeff2847468..615607da389b 100644 --- a/drivers/gpu/drm/drm_edid.c +++ b/drivers/gpu/drm/drm_edid.c @@ -3467,21 +3467,6 @@ static bool cea_db_is_hdmi_vsdb(const u8 *db) return hdmi_id == HDMI_IEEE_OUI; } -static bool cea_db_is_hdmi_hf_vsdb(const u8 *db) -{ - int hdmi_id; - - if (cea_db_tag(db) != VENDOR_BLOCK) - return false; - - if (cea_db_payload_len(db) < 7) - return false; - - hdmi_id = db[1] | (db[2] << 8) | (db[3] << 16); - - return hdmi_id == HDMI_IEEE_OUI_HF; -} - static bool cea_db_is_hdmi_vdb420(const u8 *db) { if (cea_db_tag(db) != VIDEO_CAPABILITY_BLOCK) @@ -3648,36 +3633,6 @@ drm_parse_hdmi_vsdb_audio(struct drm_connector *connector, const u8 *db) connector->audio_latency[1]); } -static void -parse_hdmi_hf_vsdb(struct drm_connector *connector, const u8 *db) -{ - u8 len = cea_db_payload_len(db); - - if (len < 7) - return; - - if (db[4] != 1) - return; /* invalid version */ - - connector->max_tmds_char = db[5] * 5; - connector->scdc_present = db[6] & (1 << 7); - connector->rr_capable = db[6] & (1 << 6); - connector->flags_3d = db[6] & 0x7; - connector->lte_340mcsc_scramble = db[6] & (1 << 3); - - DRM_DEBUG_KMS("HDMI v2: max TMDS clock %d, " - "scdc %s, " - "rr %s, " - "3D flags 0x%x, " - "scramble %s\n", - connector->max_tmds_char, - connector->scdc_present ? "available" : "not available", - connector->rr_capable ? "capable" : "not capable", - connector->flags_3d, - connector->lte_340mcsc_scramble ? - "supported" : "not supported"); -} - static void monitor_name(struct detailed_timing *t, void *data) { @@ -3769,9 +3724,6 @@ void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid) /* HDMI Vendor-Specific Data Block */ if (cea_db_is_hdmi_vsdb(db)) drm_parse_hdmi_vsdb_audio(connector, db); - /* HDMI Forum Vendor-Specific Data Block */ - else if (cea_db_is_hdmi_hf_vsdb(db)) - parse_hdmi_hf_vsdb(connector, db); break; default: break; diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index d7e55bec7f17..f9f3ad1a69be 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h @@ -786,11 +786,6 @@ struct drm_encoder { * @audio_latency: audio latency info from ELD, if found * @null_edid_counter: track sinks that give us all zeros for the EDID * @bad_edid_counter: track sinks that give us an EDID with invalid checksum - * @max_tmds_char: indicates the maximum TMDS Character Rate supported - * @scdc_present: when set the sink supports SCDC functionality - * @rr_capable: when set the sink is capable of initiating an SCDC read request - * @lte_340mcsc_scramble: when set the sink supports less than 340Mcsc scramble - * @flags_3d: 3D view(s) supported by the sink, see drm_edid.h (DRM_EDID_3D_*) * @edid_corrupt: indicates whether the last read EDID was corrupt * @debugfs_entry: debugfs directory for this connector * @state: current atomic state for this connector @@ -864,13 +859,6 @@ struct drm_connector { int null_edid_counter; /* needed to workaround some HW bugs where we get all 0s */ unsigned bad_edid_counter; - /* EDID bits HDMI 2.0 */ - int max_tmds_char; /* in Mcsc */ - bool scdc_present; - bool rr_capable; - bool lte_340mcsc_scramble; - int flags_3d; - /* Flag for raw EDID header corruption - used in Displayport * compliance testing - * Displayport Link CTS Core 1.2 rev1.1 4.2.2.6 */ diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h index 820ad9e33884..f012f9e7afe2 100644 --- a/include/drm/drm_edid.h +++ b/include/drm/drm_edid.h @@ -266,11 +266,6 @@ struct detailed_timing { #define DRM_ELD_CEA_SAD(mnl, sad) (20 + (mnl) + 3 * (sad)) -/* HDMI 2.0 */ -#define DRM_EDID_3D_INDEPENDENT_VIEW (1 << 2) -#define DRM_EDID_3D_DUAL_VIEW (1 << 1) -#define DRM_EDID_3D_OSD_DISPARITY (1 << 0) - struct edid { u8 header[8]; /* Vendor & product info */ diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h index 2e6849f494f0..d271ff23984f 100644 --- a/include/linux/hdmi.h +++ b/include/linux/hdmi.h @@ -36,7 +36,6 @@ enum hdmi_infoframe_type { #define HDMI_IEEE_OUI 0x000c03 #define HDMI_FORUM_IEEE_OUI 0xc45dd8 -#define HDMI_IEEE_OUI_HF 0xc45dd8 #define HDMI_INFOFRAME_HEADER_SIZE 4 #define HDMI_AVI_INFOFRAME_SIZE 13 #define HDMI_SPD_INFOFRAME_SIZE 25