Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/i915/panel: add panel register/unregister

Add panel register/unregister functions, and handle backlight
register/unregister from there. This is in preparation for adding more
panel specific register/unregister functionality.

Cc: Lee Shawn C <shawn.c.lee@intel.com>
Tested-by: Lee Shawn C <shawn.c.lee@intel.com>
Reviewed-by: Arun R Murthy <arun.r.murthy@gmail.com>
Reviewed-by: Maxime Ripard <mripard@kernel.org>
Link: https://lore.kernel.org/r/b737d4bc8b91df630cd4db4648f3a3571989cfd8.1749199013.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>

+23 -12
+11 -12
drivers/gpu/drm/i915/display/intel_connector.c
··· 32 32 33 33 #include "i915_drv.h" 34 34 #include "i915_utils.h" 35 - #include "intel_backlight.h" 36 35 #include "intel_connector.h" 37 36 #include "intel_display_core.h" 38 37 #include "intel_display_debugfs.h" ··· 152 153 kfree(connector); 153 154 } 154 155 155 - int intel_connector_register(struct drm_connector *connector) 156 + int intel_connector_register(struct drm_connector *_connector) 156 157 { 157 - struct intel_connector *intel_connector = to_intel_connector(connector); 158 - struct drm_i915_private *i915 = to_i915(connector->dev); 158 + struct intel_connector *connector = to_intel_connector(_connector); 159 + struct drm_i915_private *i915 = to_i915(_connector->dev); 159 160 int ret; 160 161 161 - ret = intel_backlight_device_register(intel_connector); 162 + ret = intel_panel_register(connector); 162 163 if (ret) 163 164 goto err; 164 165 165 166 if (i915_inject_probe_failure(i915)) { 166 167 ret = -EFAULT; 167 - goto err_backlight; 168 + goto err_panel; 168 169 } 169 170 170 - intel_connector_debugfs_add(intel_connector); 171 + intel_connector_debugfs_add(connector); 171 172 172 173 return 0; 173 174 174 - err_backlight: 175 - intel_backlight_device_unregister(intel_connector); 175 + err_panel: 176 + intel_panel_unregister(connector); 176 177 err: 177 178 return ret; 178 179 } 179 180 180 - void intel_connector_unregister(struct drm_connector *connector) 181 + void intel_connector_unregister(struct drm_connector *_connector) 181 182 { 182 - struct intel_connector *intel_connector = to_intel_connector(connector); 183 + struct intel_connector *connector = to_intel_connector(_connector); 183 184 184 - intel_backlight_device_unregister(intel_connector); 185 + intel_panel_unregister(connector); 185 186 } 186 187 187 188 void intel_connector_attach_encoder(struct intel_connector *connector,
+10
drivers/gpu/drm/i915/display/intel_panel.c
··· 462 462 drm_mode_destroy(connector->base.dev, fixed_mode); 463 463 } 464 464 } 465 + 466 + int intel_panel_register(struct intel_connector *connector) 467 + { 468 + return intel_backlight_device_register(connector); 469 + } 470 + 471 + void intel_panel_unregister(struct intel_connector *connector) 472 + { 473 + intel_backlight_device_unregister(connector); 474 + }
+2
drivers/gpu/drm/i915/display/intel_panel.h
··· 23 23 int intel_panel_init(struct intel_connector *connector, 24 24 const struct drm_edid *fixed_edid); 25 25 void intel_panel_fini(struct intel_connector *connector); 26 + int intel_panel_register(struct intel_connector *connector); 27 + void intel_panel_unregister(struct intel_connector *connector); 26 28 enum drm_connector_status 27 29 intel_panel_detect(struct drm_connector *connector, bool force); 28 30 bool intel_panel_use_ssc(struct intel_display *display);