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

Commit 1ebaa0b9 authored by Chris Wilson's avatar Chris Wilson
Browse files

drm/i915: Move backlight registration to connector registration



Currently the backlight is being registered in the load phase (before
the display and its objects are registered). Move the backlight
registration into the analogous phase by performing it from the
connector registration, just after its creation.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1466773227-7994-3-git-send-email-chris@chris-wilson.co.uk
parent 7a418e34
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -3734,6 +3734,7 @@ extern void intel_modeset_init_hw(struct drm_device *dev);
extern void intel_modeset_init(struct drm_device *dev);
extern void intel_modeset_init(struct drm_device *dev);
extern void intel_modeset_gem_init(struct drm_device *dev);
extern void intel_modeset_gem_init(struct drm_device *dev);
extern void intel_modeset_cleanup(struct drm_device *dev);
extern void intel_modeset_cleanup(struct drm_device *dev);
extern int intel_connector_register(struct drm_connector *);
extern void intel_connector_unregister(struct drm_connector *);
extern void intel_connector_unregister(struct drm_connector *);
extern int intel_modeset_vga_set_state(struct drm_device *dev, bool state);
extern int intel_modeset_vga_set_state(struct drm_device *dev, bool state);
extern void intel_display_resume(struct drm_device *dev);
extern void intel_display_resume(struct drm_device *dev);
+1 −0
Original line number Original line Diff line number Diff line
@@ -743,6 +743,7 @@ static const struct drm_connector_funcs intel_crt_connector_funcs = {
	.dpms = drm_atomic_helper_connector_dpms,
	.dpms = drm_atomic_helper_connector_dpms,
	.detect = intel_crt_detect,
	.detect = intel_crt_detect,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.late_register = intel_connector_register,
	.early_unregister = intel_connector_unregister,
	.early_unregister = intel_connector_unregister,
	.destroy = intel_crt_destroy,
	.destroy = intel_crt_destroy,
	.set_property = intel_crt_set_property,
	.set_property = intel_crt_set_property,
+14 −1
Original line number Original line Diff line number Diff line
@@ -16314,8 +16314,21 @@ void intel_modeset_gem_init(struct drm_device *dev)
			c->state->plane_mask &= ~(1 << drm_plane_index(c->primary));
			c->state->plane_mask &= ~(1 << drm_plane_index(c->primary));
		}
		}
	}
	}
}

int intel_connector_register(struct drm_connector *connector)
{
	struct intel_connector *intel_connector = to_intel_connector(connector);
	int ret;

	ret = intel_backlight_device_register(intel_connector);
	if (ret)
		goto err;

	return 0;


	intel_backlight_register(dev);
err:
	return ret;
}
}


void intel_connector_unregister(struct drm_connector *connector)
void intel_connector_unregister(struct drm_connector *connector)
+5 −0
Original line number Original line Diff line number Diff line
@@ -4507,6 +4507,11 @@ static int
intel_dp_connector_register(struct drm_connector *connector)
intel_dp_connector_register(struct drm_connector *connector)
{
{
	struct intel_dp *intel_dp = intel_attached_dp(connector);
	struct intel_dp *intel_dp = intel_attached_dp(connector);
	int ret;

	ret = intel_connector_register(connector);
	if (ret)
		return ret;


	i915_debugfs_connector_add(connector);
	i915_debugfs_connector_add(connector);


+1 −0
Original line number Original line Diff line number Diff line
@@ -336,6 +336,7 @@ static const struct drm_connector_funcs intel_dp_mst_connector_funcs = {
	.fill_modes = drm_helper_probe_single_connector_modes,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.set_property = intel_dp_mst_set_property,
	.set_property = intel_dp_mst_set_property,
	.atomic_get_property = intel_connector_atomic_get_property,
	.atomic_get_property = intel_connector_atomic_get_property,
	.late_register = intel_connector_register,
	.early_unregister = intel_connector_unregister,
	.early_unregister = intel_connector_unregister,
	.destroy = intel_dp_mst_connector_destroy,
	.destroy = intel_dp_mst_connector_destroy,
	.atomic_destroy_state = drm_atomic_helper_connector_destroy_state,
	.atomic_destroy_state = drm_atomic_helper_connector_destroy_state,
Loading