drm/rockchip: rk3066_hdmi: Replace drm_detect_hdmi_monitor() with is_hdmi
Once EDID is parsed, the monitor HDMI support information is available through drm_display_info.is_hdmi. This driver calls drm_detect_hdmi_monitor() to receive the same information and stores its own cached value, which is less efficient. Avoid calling drm_detect_hdmi_monitor() and use drm_display_info.is_hdmi instead and also remove hdmi_data_info.sink_is_hdmi as it is no longer necessary. Signed-off-by: José Expósito <jose.exposito89@gmail.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de> Link: https://patchwork.freedesktop.org/patch/msgid/20220421170725.903361-4-jose.exposito89@gmail.com
This commit is contained in:
parent
d449222dd5
commit
d2eabdb644
@ -22,7 +22,6 @@
|
||||
|
||||
struct hdmi_data_info {
|
||||
int vic; /* The CEA Video ID (VIC) of the current drm display mode. */
|
||||
bool sink_is_hdmi;
|
||||
unsigned int enc_out_format;
|
||||
unsigned int colorimetry;
|
||||
};
|
||||
@ -317,6 +316,8 @@ static void rk3066_hdmi_config_phy(struct rk3066_hdmi *hdmi)
|
||||
static int rk3066_hdmi_setup(struct rk3066_hdmi *hdmi,
|
||||
struct drm_display_mode *mode)
|
||||
{
|
||||
struct drm_display_info *display = &hdmi->connector.display_info;
|
||||
|
||||
hdmi->hdmi_data.vic = drm_match_cea_mode(mode);
|
||||
hdmi->hdmi_data.enc_out_format = HDMI_COLORSPACE_RGB;
|
||||
|
||||
@ -349,7 +350,7 @@ static int rk3066_hdmi_setup(struct rk3066_hdmi *hdmi,
|
||||
|
||||
rk3066_hdmi_config_video_timing(hdmi, mode);
|
||||
|
||||
if (hdmi->hdmi_data.sink_is_hdmi) {
|
||||
if (display->is_hdmi) {
|
||||
hdmi_modb(hdmi, HDMI_HDCP_CTRL, HDMI_VIDEO_MODE_MASK,
|
||||
HDMI_VIDEO_MODE_HDMI);
|
||||
rk3066_hdmi_config_avi(hdmi, mode);
|
||||
@ -472,7 +473,6 @@ static int rk3066_hdmi_connector_get_modes(struct drm_connector *connector)
|
||||
|
||||
edid = drm_get_edid(connector, hdmi->ddc);
|
||||
if (edid) {
|
||||
hdmi->hdmi_data.sink_is_hdmi = drm_detect_hdmi_monitor(edid);
|
||||
drm_connector_update_edid_property(connector, edid);
|
||||
ret = drm_add_edid_modes(connector, edid);
|
||||
kfree(edid);
|
||||
|
Loading…
Reference in New Issue
Block a user