[Intel-gfx] [PATCH 3/6] drm/i915: Make intel_digital_port_connected global
Sonika Jindal
sonika.jindal at intel.com
Fri Sep 4 06:26:13 PDT 2015
This is to allow live status check for HDMI as well.
Also, using intel_encoder->hpd_pin to check the live status
for bxt because of BXT A0/A1 WA for HPD pins.
Signed-off-by: Sonika Jindal <sonika.jindal at intel.com>
---
drivers/gpu/drm/i915/intel_dp.c | 11 +++++++----
drivers/gpu/drm/i915/intel_drv.h | 2 ++
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index 796f930..fedf6d1 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -4663,11 +4663,14 @@ static bool vlv_digital_port_connected(struct drm_i915_private *dev_priv,
}
static bool bxt_digital_port_connected(struct drm_i915_private *dev_priv,
- struct intel_digital_port *port)
+ struct intel_digital_port *intel_dig_port)
{
+ struct intel_encoder *intel_encoder = &intel_dig_port->base;
+ enum port port;
u32 bit;
- switch (port->port) {
+ intel_hpd_pin_to_port(intel_encoder->hpd_pin, &port);
+ switch (port) {
case PORT_A:
bit = BXT_DE_PORT_HP_DDIA;
break;
@@ -4678,7 +4681,7 @@ static bool bxt_digital_port_connected(struct drm_i915_private *dev_priv,
bit = BXT_DE_PORT_HP_DDIC;
break;
default:
- MISSING_CASE(port->port);
+ MISSING_CASE(port);
return false;
}
@@ -4692,7 +4695,7 @@ static bool bxt_digital_port_connected(struct drm_i915_private *dev_priv,
*
* Return %true if @port is connected, %false otherwise.
*/
-static bool intel_digital_port_connected(struct drm_i915_private *dev_priv,
+bool intel_digital_port_connected(struct drm_i915_private *dev_priv,
struct intel_digital_port *port)
{
if (HAS_PCH_IBX(dev_priv))
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index b6c2c20..ac6d748 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -1210,6 +1210,8 @@ void intel_edp_drrs_disable(struct intel_dp *intel_dp);
void intel_edp_drrs_invalidate(struct drm_device *dev,
unsigned frontbuffer_bits);
void intel_edp_drrs_flush(struct drm_device *dev, unsigned frontbuffer_bits);
+bool intel_digital_port_connected(struct drm_i915_private *dev_priv,
+ struct intel_digital_port *port);
/* intel_dp_mst.c */
int intel_dp_mst_encoder_init(struct intel_digital_port *intel_dig_port, int conn_id);
--
1.7.10.4
More information about the Intel-gfx
mailing list