[Intel-gfx] [PATCH 1/5] drm/i915: group backlight related stuff into a struct

2013-04-02 Thread Jani Nikula
No functional changes.

Signed-off-by: Jani Nikula jani.nik...@intel.com
---
 drivers/gpu/drm/i915/i915_drv.h|   11 +
 drivers/gpu/drm/i915/intel_panel.c |   44 ++--
 2 files changed, 29 insertions(+), 26 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 2962a9a..5e38a2c 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -939,9 +939,14 @@ typedef struct drm_i915_private {
struct intel_overlay *overlay;
unsigned int sprite_scaling_enabled;
 
+   /* backlight */
+   struct {
+   int level;
+   bool enabled;
+   struct backlight_device *device;
+   } backlight;
+
/* LVDS info */
-   int backlight_level;  /* restore backlight to this value */
-   bool backlight_enabled;
struct drm_display_mode *lfp_lvds_vbt_mode; /* if any */
struct drm_display_mode *sdvo_lvds_vbt_mode; /* if any */
 
@@ -1043,8 +1048,6 @@ typedef struct drm_i915_private {
 */
struct work_struct console_resume_work;
 
-   struct backlight_device *backlight;
-
struct drm_property *broadcast_rgb_property;
struct drm_property *force_audio_property;
 
diff --git a/drivers/gpu/drm/i915/intel_panel.c 
b/drivers/gpu/drm/i915/intel_panel.c
index 21f415a..0e7e873 100644
--- a/drivers/gpu/drm/i915/intel_panel.c
+++ b/drivers/gpu/drm/i915/intel_panel.c
@@ -286,11 +286,11 @@ void intel_panel_set_backlight(struct drm_device *dev, 
u32 level)
 {
struct drm_i915_private *dev_priv = dev-dev_private;
 
-   dev_priv-backlight_level = level;
-   if (dev_priv-backlight)
-   dev_priv-backlight-props.brightness = level;
+   dev_priv-backlight.level = level;
+   if (dev_priv-backlight.device)
+   dev_priv-backlight.device-props.brightness = level;
 
-   if (dev_priv-backlight_enabled)
+   if (dev_priv-backlight.enabled)
intel_panel_actually_set_backlight(dev, level);
 }
 
@@ -298,7 +298,7 @@ void intel_panel_disable_backlight(struct drm_device *dev)
 {
struct drm_i915_private *dev_priv = dev-dev_private;
 
-   dev_priv-backlight_enabled = false;
+   dev_priv-backlight.enabled = false;
intel_panel_actually_set_backlight(dev, 0);
 
if (INTEL_INFO(dev)-gen = 4) {
@@ -321,15 +321,15 @@ void intel_panel_enable_backlight(struct drm_device *dev,
 {
struct drm_i915_private *dev_priv = dev-dev_private;
 
-   if (dev_priv-backlight_level == 0) {
-   dev_priv-backlight_level = intel_panel_get_max_backlight(dev);
-   if (dev_priv-backlight)
-   dev_priv-backlight-props.brightness =
-   dev_priv-backlight_level;
+   if (dev_priv-backlight.level == 0) {
+   dev_priv-backlight.level = intel_panel_get_max_backlight(dev);
+   if (dev_priv-backlight.device)
+   dev_priv-backlight.device-props.brightness =
+   dev_priv-backlight.level;
}
 
-   dev_priv-backlight_enabled = true;
-   intel_panel_actually_set_backlight(dev, dev_priv-backlight_level);
+   dev_priv-backlight.enabled = true;
+   intel_panel_actually_set_backlight(dev, dev_priv-backlight.level);
 
if (INTEL_INFO(dev)-gen = 4) {
uint32_t reg, tmp;
@@ -371,15 +371,15 @@ set_level:
 * when BLC_PWM_CPU_CTL2 and BLC_PWM_PCH_CTL1 are written.
 */
if (!intel_panel_get_backlight(dev))
-   intel_panel_actually_set_backlight(dev, 
dev_priv-backlight_level);
+   intel_panel_actually_set_backlight(dev, 
dev_priv-backlight.level);
 }
 
 static void intel_panel_init_backlight(struct drm_device *dev)
 {
struct drm_i915_private *dev_priv = dev-dev_private;
 
-   dev_priv-backlight_level = intel_panel_get_backlight(dev);
-   dev_priv-backlight_enabled = dev_priv-backlight_level != 0;
+   dev_priv-backlight.level = intel_panel_get_backlight(dev);
+   dev_priv-backlight.enabled = dev_priv-backlight.level != 0;
 }
 
 enum drm_connector_status
@@ -433,21 +433,21 @@ int intel_panel_setup_backlight(struct drm_connector 
*connector)
 
memset(props, 0, sizeof(props));
props.type = BACKLIGHT_RAW;
-   props.brightness = dev_priv-backlight_level;
+   props.brightness = dev_priv-backlight.level;
props.max_brightness = _intel_panel_get_max_backlight(dev);
if (props.max_brightness == 0) {
DRM_DEBUG_DRIVER(Failed to get maximum backlight value\n);
return -ENODEV;
}
-   dev_priv-backlight =
+   dev_priv-backlight.device =
backlight_device_register(intel_backlight,
  connector-kdev, dev,
  intel_panel_bl_ops, props);
 
-   if 

Re: [Intel-gfx] [PATCH 1/5] drm/i915: group backlight related stuff into a struct

2013-04-02 Thread Daniel Vetter
On Tue, Apr 02, 2013 at 03:48:09PM +0300, Jani Nikula wrote:
 No functional changes.
 
 Signed-off-by: Jani Nikula jani.nik...@intel.com
Queued for -next, thanks for the patch.
-Daniel
 ---
  drivers/gpu/drm/i915/i915_drv.h|   11 +
  drivers/gpu/drm/i915/intel_panel.c |   44 
 ++--
  2 files changed, 29 insertions(+), 26 deletions(-)
 
 diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
 index 2962a9a..5e38a2c 100644
 --- a/drivers/gpu/drm/i915/i915_drv.h
 +++ b/drivers/gpu/drm/i915/i915_drv.h
 @@ -939,9 +939,14 @@ typedef struct drm_i915_private {
   struct intel_overlay *overlay;
   unsigned int sprite_scaling_enabled;
  
 + /* backlight */
 + struct {
 + int level;
 + bool enabled;
 + struct backlight_device *device;
 + } backlight;
 +
   /* LVDS info */
 - int backlight_level;  /* restore backlight to this value */
 - bool backlight_enabled;
   struct drm_display_mode *lfp_lvds_vbt_mode; /* if any */
   struct drm_display_mode *sdvo_lvds_vbt_mode; /* if any */
  
 @@ -1043,8 +1048,6 @@ typedef struct drm_i915_private {
*/
   struct work_struct console_resume_work;
  
 - struct backlight_device *backlight;
 -
   struct drm_property *broadcast_rgb_property;
   struct drm_property *force_audio_property;
  
 diff --git a/drivers/gpu/drm/i915/intel_panel.c 
 b/drivers/gpu/drm/i915/intel_panel.c
 index 21f415a..0e7e873 100644
 --- a/drivers/gpu/drm/i915/intel_panel.c
 +++ b/drivers/gpu/drm/i915/intel_panel.c
 @@ -286,11 +286,11 @@ void intel_panel_set_backlight(struct drm_device *dev, 
 u32 level)
  {
   struct drm_i915_private *dev_priv = dev-dev_private;
  
 - dev_priv-backlight_level = level;
 - if (dev_priv-backlight)
 - dev_priv-backlight-props.brightness = level;
 + dev_priv-backlight.level = level;
 + if (dev_priv-backlight.device)
 + dev_priv-backlight.device-props.brightness = level;
  
 - if (dev_priv-backlight_enabled)
 + if (dev_priv-backlight.enabled)
   intel_panel_actually_set_backlight(dev, level);
  }
  
 @@ -298,7 +298,7 @@ void intel_panel_disable_backlight(struct drm_device *dev)
  {
   struct drm_i915_private *dev_priv = dev-dev_private;
  
 - dev_priv-backlight_enabled = false;
 + dev_priv-backlight.enabled = false;
   intel_panel_actually_set_backlight(dev, 0);
  
   if (INTEL_INFO(dev)-gen = 4) {
 @@ -321,15 +321,15 @@ void intel_panel_enable_backlight(struct drm_device 
 *dev,
  {
   struct drm_i915_private *dev_priv = dev-dev_private;
  
 - if (dev_priv-backlight_level == 0) {
 - dev_priv-backlight_level = intel_panel_get_max_backlight(dev);
 - if (dev_priv-backlight)
 - dev_priv-backlight-props.brightness =
 - dev_priv-backlight_level;
 + if (dev_priv-backlight.level == 0) {
 + dev_priv-backlight.level = intel_panel_get_max_backlight(dev);
 + if (dev_priv-backlight.device)
 + dev_priv-backlight.device-props.brightness =
 + dev_priv-backlight.level;
   }
  
 - dev_priv-backlight_enabled = true;
 - intel_panel_actually_set_backlight(dev, dev_priv-backlight_level);
 + dev_priv-backlight.enabled = true;
 + intel_panel_actually_set_backlight(dev, dev_priv-backlight.level);
  
   if (INTEL_INFO(dev)-gen = 4) {
   uint32_t reg, tmp;
 @@ -371,15 +371,15 @@ set_level:
* when BLC_PWM_CPU_CTL2 and BLC_PWM_PCH_CTL1 are written.
*/
   if (!intel_panel_get_backlight(dev))
 - intel_panel_actually_set_backlight(dev, 
 dev_priv-backlight_level);
 + intel_panel_actually_set_backlight(dev, 
 dev_priv-backlight.level);
  }
  
  static void intel_panel_init_backlight(struct drm_device *dev)
  {
   struct drm_i915_private *dev_priv = dev-dev_private;
  
 - dev_priv-backlight_level = intel_panel_get_backlight(dev);
 - dev_priv-backlight_enabled = dev_priv-backlight_level != 0;
 + dev_priv-backlight.level = intel_panel_get_backlight(dev);
 + dev_priv-backlight.enabled = dev_priv-backlight.level != 0;
  }
  
  enum drm_connector_status
 @@ -433,21 +433,21 @@ int intel_panel_setup_backlight(struct drm_connector 
 *connector)
  
   memset(props, 0, sizeof(props));
   props.type = BACKLIGHT_RAW;
 - props.brightness = dev_priv-backlight_level;
 + props.brightness = dev_priv-backlight.level;
   props.max_brightness = _intel_panel_get_max_backlight(dev);
   if (props.max_brightness == 0) {
   DRM_DEBUG_DRIVER(Failed to get maximum backlight value\n);
   return -ENODEV;
   }
 - dev_priv-backlight =
 + dev_priv-backlight.device =
   backlight_device_register(intel_backlight,
 connector-kdev, dev,