On 02/02/2017 01:32 AM, Jani Nikula wrote: > On Thu, 02 Feb 2017, Shuah Khan <shua...@osg.samsung.com> wrote: >> Change drm_helper_probe_single_connector_modes() to print an error to >> report connector disconnected status instead of a debug message. >> >> When this condition occurs, application doesn't know the real error and >> reports it as driver lacking support for mode setting. Change it to an >> error to make it easier to debug. > > Please explain what makes this condition an error. Connectors get > connected and disconnected, business as usual, why should this be an > error? > > BR, > Jani.
Disconnecting connector itself isn't an error. When user-space tries to access it, it would be useful to report the status that the connector is disconnected. I use embedded system(s) that don't like it when HDMI is hot added or removed. Also, because of return power, it is safer to disconnect HDMI and then apply power to the board. It chased a few libdrm and user-space dead ends before I enabled drm debug and was able to fix the real issue, which is a disconnected cable. User-space prints rather confusing messages as it doesn't really know the disconnected status as it isn't returned to it. I figured it might be a good idea to at least print a message and this can be a notice or info instead of an error. I do think its is worth while in some cases. thanks, -- Shuah > > >> >> Signed-off-by: Shuah Khan <shua...@osg.samsung.com> >> --- >> drivers/gpu/drm/drm_probe_helper.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/gpu/drm/drm_probe_helper.c >> b/drivers/gpu/drm/drm_probe_helper.c >> index ac953f0..6472b7f 100644 >> --- a/drivers/gpu/drm/drm_probe_helper.c >> +++ b/drivers/gpu/drm/drm_probe_helper.c >> @@ -282,8 +282,8 @@ int drm_helper_probe_single_connector_modes(struct >> drm_connector *connector, >> dev->mode_config.poll_running = drm_kms_helper_poll; >> >> if (connector->status == connector_status_disconnected) { >> - DRM_DEBUG_KMS("[CONNECTOR:%d:%s] disconnected\n", >> - connector->base.id, connector->name); >> + DRM_ERROR("[CONNECTOR:%d:%s] disconnected\n", >> + connector->base.id, connector->name); >> drm_mode_connector_update_edid_property(connector, NULL); >> verbose_prune = false; >> goto prune; >