Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 91d1b4bd authored by Daniel Vetter's avatar Daniel Vetter
Browse files

drm/i915: split up intel_modeset_check_state



Simply grew too large and needed to be split up into parts.

Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 30e984df
Loading
Loading
Loading
Loading
+36 −8
Original line number Diff line number Diff line
@@ -8138,16 +8138,10 @@ intel_pipe_config_compare(struct drm_device *dev,
	return true;
}

void
intel_modeset_check_state(struct drm_device *dev)
static void
check_connector_state(struct drm_device *dev)
{
	drm_i915_private_t *dev_priv = dev->dev_private;
	struct intel_crtc *crtc;
	struct intel_encoder *encoder;
	struct intel_connector *connector;
	struct intel_crtc_config pipe_config;
	struct intel_dpll_hw_state dpll_hw_state;
	int i;

	list_for_each_entry(connector, &dev->mode_config.connector_list,
			    base.head) {
@@ -8158,6 +8152,13 @@ intel_modeset_check_state(struct drm_device *dev)
		WARN(&connector->new_encoder->base != connector->base.encoder,
		     "connector's staged encoder doesn't match current encoder\n");
	}
}

static void
check_encoder_state(struct drm_device *dev)
{
	struct intel_encoder *encoder;
	struct intel_connector *connector;

	list_for_each_entry(encoder, &dev->mode_config.encoder_list,
			    base.head) {
@@ -8209,6 +8210,15 @@ intel_modeset_check_state(struct drm_device *dev)
		     tracked_pipe, pipe);

	}
}

static void
check_crtc_state(struct drm_device *dev)
{
	drm_i915_private_t *dev_priv = dev->dev_private;
	struct intel_crtc *crtc;
	struct intel_encoder *encoder;
	struct intel_crtc_config pipe_config;

	list_for_each_entry(crtc, &dev->mode_config.crtc_list,
			    base.head) {
@@ -8262,6 +8272,15 @@ intel_modeset_check_state(struct drm_device *dev)
					       "[sw state]");
		}
	}
}

static void
check_shared_dpll_state(struct drm_device *dev)
{
	drm_i915_private_t *dev_priv = dev->dev_private;
	struct intel_crtc *crtc;
	struct intel_dpll_hw_state dpll_hw_state;
	int i;

	for (i = 0; i < dev_priv->num_shared_dpll; i++) {
		struct intel_shared_dpll *pll = &dev_priv->shared_dplls[i];
@@ -8299,6 +8318,15 @@ intel_modeset_check_state(struct drm_device *dev)
	}
}

void
intel_modeset_check_state(struct drm_device *dev)
{
	check_connector_state(dev);
	check_encoder_state(dev);
	check_crtc_state(dev);
	check_shared_dpll_state(dev);
}

static int __intel_set_mode(struct drm_crtc *crtc,
			    struct drm_display_mode *mode,
			    int x, int y, struct drm_framebuffer *fb)