drm: move panel HDR metadata to drm_hdmi_info

The hdr_panel_metadata indicate sink HDR capability,moving
it to drm_hdmi_info is more reasonable.

Change-Id: I0ccd404cfb0ec1e74130b0692de4261ae9a24c8f
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
This commit is contained in:
Zheng Yang 2017-06-23 10:16:49 +08:00 committed by Tao Huang
parent eabf439fe6
commit eda86cea45
2 changed files with 14 additions and 12 deletions

View File

@ -3724,21 +3724,23 @@ static uint16_t hdr_metadata_type(const u8 *edid_ext)
static void
drm_parse_hdr_metadata_block(struct drm_connector *connector, const u8 *db)
{
struct drm_hdmi_info *hdmi = &connector->display_info.hdmi;
uint16_t len;
len = cea_db_payload_len(db);
connector->hdr_panel_metadata->eotf = eotf_supported(db);
connector->hdr_panel_metadata->type = hdr_metadata_type(db);
hdmi->hdr_panel_metadata.eotf = eotf_supported(db);
hdmi->hdr_panel_metadata.type = hdr_metadata_type(db);
if (len == 6) {
connector->hdr_panel_metadata->max_cll = db[4];
connector->hdr_panel_metadata->max_fall = db[5];
connector->hdr_panel_metadata->min_cll = db[6];
hdmi->hdr_panel_metadata.max_cll = db[4];
hdmi->hdr_panel_metadata.max_fall = db[5];
hdmi->hdr_panel_metadata.min_cll = db[6];
} else if (len == 5) {
connector->hdr_panel_metadata->max_cll = db[4];
connector->hdr_panel_metadata->max_fall = db[5];
} else if (len == 4)
connector->hdr_panel_metadata->max_cll = db[4];
hdmi->hdr_panel_metadata.max_cll = db[4];
hdmi->hdr_panel_metadata.max_fall = db[5];
} else if (len == 4) {
hdmi->hdr_panel_metadata.max_cll = db[4];
}
}
static void

View File

@ -189,6 +189,9 @@ struct drm_hdmi_info {
/* Colorimerty info from EDID */
u32 colorimetry;
/* HDR metdata */
struct hdr_static_metadata hdr_panel_metadata;
};
#define DRM_COLOR_FORMAT_RGB444 (1<<0)
@ -990,9 +993,6 @@ struct drm_connector {
uint8_t tile_h_loc, tile_v_loc;
uint16_t tile_h_size, tile_v_size;
/* HDR metdata */
struct hdr_static_metadata *hdr_panel_metadata;
struct hdr_static_metadata *hdr_source_metadata;
};
/**