diff options
author | Eric Anholt <eric@anholt.net> | 2016-09-14 14:21:29 -0400 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2016-10-06 14:58:26 -0400 |
commit | 9d44abbbb8d530e8cc97d71ffcbc0ff3b5553c62 (patch) | |
tree | 5b6421948efcd3216db4a0bd95d3ae6bd57f673b | |
parent | 6e1cbbad670cf9e9ee6fb58a8d77ca095f385eee (diff) |
drm/vc4: Fall back to using an EDID probe in the absence of a GPIO.
On Pi0/1/2, we use an external GPIO line for hotplug detection, since
the HDMI_HOTPLUG register isn't connected to anything. However, with
the Pi3 the HPD GPIO line has moved off to a GPIO expander that will
be tricky to get to (the firmware is constantly polling the expander
using i2c0, so we'll need to coordinate with it).
As a stop-gap, if we don't have a GPIO line, use an EDID probe to
detect connection. Fixes HDMI display on the pi3.
Signed-off-by: Eric Anholt <eric@anholt.net>
-rw-r--r-- | drivers/gpu/drm/vc4/vc4_hdmi.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c index 29be7b7273df..1e61931846d3 100644 --- a/drivers/gpu/drm/vc4/vc4_hdmi.c +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c | |||
@@ -174,6 +174,9 @@ vc4_hdmi_connector_detect(struct drm_connector *connector, bool force) | |||
174 | return connector_status_disconnected; | 174 | return connector_status_disconnected; |
175 | } | 175 | } |
176 | 176 | ||
177 | if (drm_probe_ddc(vc4->hdmi->ddc)) | ||
178 | return connector_status_connected; | ||
179 | |||
177 | if (HDMI_READ(VC4_HDMI_HOTPLUG) & VC4_HDMI_HOTPLUG_CONNECTED) | 180 | if (HDMI_READ(VC4_HDMI_HOTPLUG) & VC4_HDMI_HOTPLUG_CONNECTED) |
178 | return connector_status_connected; | 181 | return connector_status_connected; |
179 | else | 182 | else |