static int panel_connector_mode_valid(struct drm_connector *connector, struct drm_display_mode *mode) { struct tilcdc_drm_private *priv = connector->dev->dev_private; /* our only constraints are what the crtc can generate: */ return tilcdc_crtc_mode_valid(priv->crtc, mode); }
static int tilcdc_external_mode_valid(struct drm_connector *connector, struct drm_display_mode *mode) { struct tilcdc_drm_private *priv = connector->dev->dev_private; int ret; ret = tilcdc_crtc_mode_valid(priv->crtc, mode); if (ret != MODE_OK) return ret; BUG_ON(priv->external_connector != connector); BUG_ON(!priv->connector_funcs); /* If the connector has its own mode_valid call it. */ if (!IS_ERR(priv->connector_funcs) && priv->connector_funcs->mode_valid) return priv->connector_funcs->mode_valid(connector, mode); return MODE_OK; }