drivers/gpu/drm/openchrome/via_analog.c | 30 ++++++++++++++++++++---------- drivers/gpu/drm/openchrome/via_drv.h | 4 ++-- 2 files changed, 22 insertions(+), 12 deletions(-)
New commits: commit 6cbbb5f9f686e226bf2579a37df184f4fe467a59 Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Mar 14 09:57:49 2018 -0700 drm/openchrome: Version bumped to 3.0.77 Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/via_drv.h b/drivers/gpu/drm/openchrome/via_drv.h index 070599f2c8a8..e112272c1b82 100644 --- a/drivers/gpu/drm/openchrome/via_drv.h +++ b/drivers/gpu/drm/openchrome/via_drv.h @@ -30,11 +30,11 @@ #define DRIVER_AUTHOR "OpenChrome Project" #define DRIVER_NAME "openchrome" #define DRIVER_DESC "OpenChrome DRM for VIA Technologies Chrome IGP" -#define DRIVER_DATE "20180213" +#define DRIVER_DATE "20180314" #define DRIVER_MAJOR 3 #define DRIVER_MINOR 0 -#define DRIVER_PATCHLEVEL 76 +#define DRIVER_PATCHLEVEL 77 #include <linux/module.h> commit 210ec48c4c9927c68b929b56ebb291d418775f6a Author: Kevin Brace <kevinbr...@gmx.com> Date: Wed Mar 14 09:54:43 2018 -0700 drm/openchrome: Only recognize analog interface type EDID for analog (VGA) Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/via_analog.c b/drivers/gpu/drm/openchrome/via_analog.c index f113aa959675..48580f87b345 100644 --- a/drivers/gpu/drm/openchrome/via_analog.c +++ b/drivers/gpu/drm/openchrome/via_analog.c @@ -223,8 +223,6 @@ via_analog_detect(struct drm_connector *connector, bool force) DRM_DEBUG_KMS("Entered %s.\n", __func__); - drm_mode_connector_update_edid_property(connector, edid); - if (con->i2c_bus & VIA_I2C_BUS1) { i2c_bus = via_find_ddc_bus(0x26); } else { @@ -234,10 +232,11 @@ via_analog_detect(struct drm_connector *connector, bool force) if (i2c_bus) { edid = drm_get_edid(&con->base, i2c_bus); if (edid) { - drm_mode_connector_update_edid_property(connector, - edid); + if (!(edid->input & DRM_EDID_INPUT_DIGITAL)) { + ret = connector_status_connected; + } + kfree(edid); - ret = connector_status_connected; goto exit; } } @@ -251,10 +250,11 @@ via_analog_detect(struct drm_connector *connector, bool force) if (i2c_bus) { edid = drm_get_edid(&con->base, i2c_bus); if (edid) { - drm_mode_connector_update_edid_property(connector, - edid); + if (!(edid->input & DRM_EDID_INPUT_DIGITAL)) { + ret = connector_status_connected; + } + kfree(edid); - ret = connector_status_connected; goto exit; } } @@ -291,7 +291,12 @@ static int via_analog_get_modes(struct drm_connector *connector) if (i2c_bus) { edid = drm_get_edid(&con->base, i2c_bus); if (edid) { - count = drm_add_edid_modes(connector, edid); + if (!(edid->input & DRM_EDID_INPUT_DIGITAL)) { + drm_mode_connector_update_edid_property(connector, + edid); + count = drm_add_edid_modes(connector, edid); + } + kfree(edid); goto exit; } @@ -306,7 +311,12 @@ static int via_analog_get_modes(struct drm_connector *connector) if (i2c_bus) { edid = drm_get_edid(&con->base, i2c_bus); if (edid) { - count = drm_add_edid_modes(connector, edid); + if (!(edid->input & DRM_EDID_INPUT_DIGITAL)) { + drm_mode_connector_update_edid_property(connector, + edid); + count = drm_add_edid_modes(connector, edid); + } + kfree(edid); goto exit; } _______________________________________________ Openchrome-devel mailing list Openchrome-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/openchrome-devel