Commit 2fee35fc authored by Jani Nikula's avatar Jani Nikula
Browse files

drm/i915: move backlight to display.backlight



Move display backlight related members under drm_i915_private display
sub-struct.

Prefer adding anonymous sub-structs even for single members that aren't
our own structs.

Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Reviewed-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/026241565dad12e0024c443419fa5e0caac41b2d.1661779055.git.jani.nikula@intel.com
parent d51309b4
Loading
Loading
Loading
Loading
+14 −14
Original line number Diff line number Diff line
@@ -305,7 +305,7 @@ void intel_backlight_set_acpi(const struct drm_connector_state *conn_state,
	if (!panel->backlight.present || !conn_state->crtc)
		return;

	mutex_lock(&dev_priv->backlight_lock);
	mutex_lock(&dev_priv->display.backlight.lock);

	drm_WARN_ON(&dev_priv->drm, panel->backlight.max == 0);

@@ -321,7 +321,7 @@ void intel_backlight_set_acpi(const struct drm_connector_state *conn_state,
	if (panel->backlight.enabled)
		intel_panel_actually_set_backlight(conn_state, hw_level);

	mutex_unlock(&dev_priv->backlight_lock);
	mutex_unlock(&dev_priv->display.backlight.lock);
}

static void lpt_disable_backlight(const struct drm_connector_state *old_conn_state, u32 level)
@@ -465,14 +465,14 @@ void intel_backlight_disable(const struct drm_connector_state *old_conn_state)
		return;
	}

	mutex_lock(&dev_priv->backlight_lock);
	mutex_lock(&dev_priv->display.backlight.lock);

	if (panel->backlight.device)
		panel->backlight.device->props.power = FB_BLANK_POWERDOWN;
	panel->backlight.enabled = false;
	panel->backlight.funcs->disable(old_conn_state, 0);

	mutex_unlock(&dev_priv->backlight_lock);
	mutex_unlock(&dev_priv->display.backlight.lock);
}

static void lpt_enable_backlight(const struct intel_crtc_state *crtc_state,
@@ -815,11 +815,11 @@ void intel_backlight_enable(const struct intel_crtc_state *crtc_state,

	drm_dbg_kms(&dev_priv->drm, "pipe %c\n", pipe_name(pipe));

	mutex_lock(&dev_priv->backlight_lock);
	mutex_lock(&dev_priv->display.backlight.lock);

	__intel_backlight_enable(crtc_state, conn_state);

	mutex_unlock(&dev_priv->backlight_lock);
	mutex_unlock(&dev_priv->display.backlight.lock);
}

#if IS_ENABLED(CONFIG_BACKLIGHT_CLASS_DEVICE)
@@ -829,12 +829,12 @@ static u32 intel_panel_get_backlight(struct intel_connector *connector)
	struct intel_panel *panel = &connector->panel;
	u32 val = 0;

	mutex_lock(&dev_priv->backlight_lock);
	mutex_lock(&dev_priv->display.backlight.lock);

	if (panel->backlight.enabled)
		val = panel->backlight.funcs->get(connector, intel_connector_get_pipe(connector));

	mutex_unlock(&dev_priv->backlight_lock);
	mutex_unlock(&dev_priv->display.backlight.lock);

	drm_dbg_kms(&dev_priv->drm, "get backlight PWM = %d\n", val);
	return val;
@@ -862,7 +862,7 @@ static void intel_panel_set_backlight(const struct drm_connector_state *conn_sta
	if (!panel->backlight.present)
		return;

	mutex_lock(&dev_priv->backlight_lock);
	mutex_lock(&dev_priv->display.backlight.lock);

	drm_WARN_ON(&dev_priv->drm, panel->backlight.max == 0);

@@ -872,7 +872,7 @@ static void intel_panel_set_backlight(const struct drm_connector_state *conn_sta
	if (panel->backlight.enabled)
		intel_panel_actually_set_backlight(conn_state, hw_level);

	mutex_unlock(&dev_priv->backlight_lock);
	mutex_unlock(&dev_priv->display.backlight.lock);
}

static int intel_backlight_device_update_status(struct backlight_device *bd)
@@ -1591,11 +1591,11 @@ void intel_backlight_update(struct intel_atomic_state *state,
	if (!panel->backlight.present)
		return;

	mutex_lock(&dev_priv->backlight_lock);
	mutex_lock(&dev_priv->display.backlight.lock);
	if (!panel->backlight.enabled)
		__intel_backlight_enable(crtc_state, conn_state);

	mutex_unlock(&dev_priv->backlight_lock);
	mutex_unlock(&dev_priv->display.backlight.lock);
}

int intel_backlight_setup(struct intel_connector *connector, enum pipe pipe)
@@ -1620,9 +1620,9 @@ int intel_backlight_setup(struct intel_connector *connector, enum pipe pipe)
		return -ENODEV;

	/* set level and max in panel struct */
	mutex_lock(&dev_priv->backlight_lock);
	mutex_lock(&dev_priv->display.backlight.lock);
	ret = panel->backlight.funcs->setup(connector, pipe);
	mutex_unlock(&dev_priv->backlight_lock);
	mutex_unlock(&dev_priv->display.backlight.lock);

	if (ret) {
		drm_dbg_kms(&dev_priv->drm,
+5 −0
Original line number Diff line number Diff line
@@ -218,6 +218,11 @@ struct intel_display {
	} funcs;

	/* Grouping using anonymous structs. Keep sorted. */
	struct {
		/* backlight registers and fields in struct intel_panel */
		struct mutex lock;
	} backlight;

	struct {
		struct intel_global_obj obj;

+1 −1
Original line number Diff line number Diff line
@@ -330,7 +330,7 @@ static int i915_driver_early_probe(struct drm_i915_private *dev_priv)

	spin_lock_init(&dev_priv->irq_lock);
	spin_lock_init(&dev_priv->gpu_error.lock);
	mutex_init(&dev_priv->backlight_lock);
	mutex_init(&dev_priv->display.backlight.lock);

	mutex_init(&dev_priv->sb_lock);
	cpu_latency_qos_add_request(&dev_priv->sb_qos, PM_QOS_DEFAULT_VALUE);
+0 −3
Original line number Diff line number Diff line
@@ -330,9 +330,6 @@ struct drm_i915_private {

	bool preserve_bios_swizzle;

	/* backlight registers and fields in struct intel_panel */
	struct mutex backlight_lock;

	unsigned int fsb_freq, mem_freq, is_ddr3;
	unsigned int skl_preferred_vco_freq;