linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] drm/panel: Use backlight helpers
@ 2022-06-07 18:20 Stephen Kitt
  2022-06-07 18:20 ` [PATCH 1/3] drm/panel: Use backlight helper Stephen Kitt
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Stephen Kitt @ 2022-06-07 18:20 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter
  Cc: dri-devel, linux-kernel, Stephen Kitt

backlight_properties.fb_blank is deprecated. The states it represents
are handled by other properties; but instead of accessing those
properties directly, drivers should use the helpers provided by
backlight.h.

This will ultimately allow fb_blank to be removed.

Stephen Kitt (3):
  drm/panel: Use backlight helper
  drm/panel: panel-dsi-cm: Use backlight helpers
  drm/panel: sony-acx565akm: Use backlight helpers

 .../drm/panel/panel-asus-z00t-tm5p5-n35596.c  |  7 +-----
 drivers/gpu/drm/panel/panel-dsi-cm.c          | 24 ++++---------------
 drivers/gpu/drm/panel/panel-sony-acx565akm.c  | 11 ++-------
 3 files changed, 7 insertions(+), 35 deletions(-)


base-commit: f2906aa863381afb0015a9eb7fefad885d4e5a56
-- 
2.30.2


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1/3] drm/panel: Use backlight helper
  2022-06-07 18:20 [PATCH 0/3] drm/panel: Use backlight helpers Stephen Kitt
@ 2022-06-07 18:20 ` Stephen Kitt
  2022-06-07 18:20 ` [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers Stephen Kitt
  2022-06-07 18:20 ` [PATCH 3/3] drm/panel: sony-acx565akm: " Stephen Kitt
  2 siblings, 0 replies; 11+ messages in thread
From: Stephen Kitt @ 2022-06-07 18:20 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter
  Cc: dri-devel, linux-kernel, Stephen Kitt

Instead of retrieving the backlight brightness in struct
backlight_properties manually, and then checking whether the backlight
should be on at all, use backlight_get_brightness() which does all
this and insulates this from future changes.

Signed-off-by: Stephen Kitt <steve@sk2.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: dri-devel@lists.freedesktop.org
---
 drivers/gpu/drm/panel/panel-asus-z00t-tm5p5-n35596.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-asus-z00t-tm5p5-n35596.c b/drivers/gpu/drm/panel/panel-asus-z00t-tm5p5-n35596.c
index 44674ebedf59..174ff434bd71 100644
--- a/drivers/gpu/drm/panel/panel-asus-z00t-tm5p5-n35596.c
+++ b/drivers/gpu/drm/panel/panel-asus-z00t-tm5p5-n35596.c
@@ -215,14 +215,9 @@ static const struct drm_panel_funcs tm5p5_nt35596_panel_funcs = {
 static int tm5p5_nt35596_bl_update_status(struct backlight_device *bl)
 {
 	struct mipi_dsi_device *dsi = bl_get_data(bl);
-	u16 brightness = bl->props.brightness;
+	u16 brightness = backlight_get_brightness(bl);
 	int ret;
 
-	if (bl->props.power != FB_BLANK_UNBLANK ||
-	    bl->props.fb_blank != FB_BLANK_UNBLANK ||
-	    bl->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK))
-		brightness = 0;
-
 	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
 
 	ret = mipi_dsi_dcs_set_display_brightness(dsi, brightness);
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers
  2022-06-07 18:20 [PATCH 0/3] drm/panel: Use backlight helpers Stephen Kitt
  2022-06-07 18:20 ` [PATCH 1/3] drm/panel: Use backlight helper Stephen Kitt
@ 2022-06-07 18:20 ` Stephen Kitt
  2022-06-09 21:52   ` Sebastian Reichel
  2022-06-07 18:20 ` [PATCH 3/3] drm/panel: sony-acx565akm: " Stephen Kitt
  2 siblings, 1 reply; 11+ messages in thread
From: Stephen Kitt @ 2022-06-07 18:20 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter
  Cc: dri-devel, linux-kernel, Stephen Kitt

Instead of retrieving the backlight brightness in struct
backlight_properties manually, and then checking whether the backlight
should be on at all, use backlight_get_brightness() which does all
this and insulates this from future changes.

Instead of setting the power state by manually updating fields in
struct backlight_properties, use backlight_enable() and
backlight_disable(). These also call backlight_update_status() so the
separate call is no longer needed.

Signed-off-by: Stephen Kitt <steve@sk2.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: dri-devel@lists.freedesktop.org
---
 drivers/gpu/drm/panel/panel-dsi-cm.c | 24 ++++--------------------
 1 file changed, 4 insertions(+), 20 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-dsi-cm.c b/drivers/gpu/drm/panel/panel-dsi-cm.c
index b58cb064975f..aa36dc6cedd3 100644
--- a/drivers/gpu/drm/panel/panel-dsi-cm.c
+++ b/drivers/gpu/drm/panel/panel-dsi-cm.c
@@ -86,16 +86,10 @@ static void dsicm_bl_power(struct panel_drv_data *ddata, bool enable)
 		return;
 
 	if (enable) {
-		backlight->props.fb_blank = FB_BLANK_UNBLANK;
-		backlight->props.state = ~(BL_CORE_FBBLANK | BL_CORE_SUSPENDED);
-		backlight->props.power = FB_BLANK_UNBLANK;
+		backlight_enable(backlight);
 	} else {
-		backlight->props.fb_blank = FB_BLANK_NORMAL;
-		backlight->props.power = FB_BLANK_POWERDOWN;
-		backlight->props.state |= BL_CORE_FBBLANK | BL_CORE_SUSPENDED;
+		backlight_disable(backlight);
 	}
-
-	backlight_update_status(backlight);
 }
 
 static void hw_guard_start(struct panel_drv_data *ddata, int guard_msec)
@@ -196,13 +190,7 @@ static int dsicm_bl_update_status(struct backlight_device *dev)
 {
 	struct panel_drv_data *ddata = dev_get_drvdata(&dev->dev);
 	int r = 0;
-	int level;
-
-	if (dev->props.fb_blank == FB_BLANK_UNBLANK &&
-			dev->props.power == FB_BLANK_UNBLANK)
-		level = dev->props.brightness;
-	else
-		level = 0;
+	int level = backlight_get_brightness(dev);
 
 	dev_dbg(&ddata->dsi->dev, "update brightness to %d\n", level);
 
@@ -219,11 +207,7 @@ static int dsicm_bl_update_status(struct backlight_device *dev)
 
 static int dsicm_bl_get_intensity(struct backlight_device *dev)
 {
-	if (dev->props.fb_blank == FB_BLANK_UNBLANK &&
-			dev->props.power == FB_BLANK_UNBLANK)
-		return dev->props.brightness;
-
-	return 0;
+	return backlight_get_brightness(dev);
 }
 
 static const struct backlight_ops dsicm_bl_ops = {
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 3/3] drm/panel: sony-acx565akm: Use backlight helpers
  2022-06-07 18:20 [PATCH 0/3] drm/panel: Use backlight helpers Stephen Kitt
  2022-06-07 18:20 ` [PATCH 1/3] drm/panel: Use backlight helper Stephen Kitt
  2022-06-07 18:20 ` [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers Stephen Kitt
@ 2022-06-07 18:20 ` Stephen Kitt
  2022-06-09 21:54   ` Sebastian Reichel
  2 siblings, 1 reply; 11+ messages in thread
From: Stephen Kitt @ 2022-06-07 18:20 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter
  Cc: dri-devel, linux-kernel, Stephen Kitt

Instead of retrieving the backlight brightness in struct
backlight_properties manually, and then checking whether the backlight
should be on at all, use backlight_get_brightness() which does all
this and insulates this from future changes.

Instead of manually checking the power state in struct
backlight_properties, use backlight_is_blank().

Signed-off-by: Stephen Kitt <steve@sk2.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: dri-devel@lists.freedesktop.org
---
 drivers/gpu/drm/panel/panel-sony-acx565akm.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-sony-acx565akm.c b/drivers/gpu/drm/panel/panel-sony-acx565akm.c
index 0d7541a33f87..a6bc8c8cf6c8 100644
--- a/drivers/gpu/drm/panel/panel-sony-acx565akm.c
+++ b/drivers/gpu/drm/panel/panel-sony-acx565akm.c
@@ -298,13 +298,7 @@ static void acx565akm_set_brightness(struct acx565akm_panel *lcd, int level)
 static int acx565akm_bl_update_status_locked(struct backlight_device *dev)
 {
 	struct acx565akm_panel *lcd = dev_get_drvdata(&dev->dev);
-	int level;
-
-	if (dev->props.fb_blank == FB_BLANK_UNBLANK &&
-	    dev->props.power == FB_BLANK_UNBLANK)
-		level = dev->props.brightness;
-	else
-		level = 0;
+	int level = backlight_get_brightness(dev);
 
 	acx565akm_set_brightness(lcd, level);
 
@@ -330,8 +324,7 @@ static int acx565akm_bl_get_intensity(struct backlight_device *dev)
 
 	mutex_lock(&lcd->mutex);
 
-	if (dev->props.fb_blank == FB_BLANK_UNBLANK &&
-	    dev->props.power == FB_BLANK_UNBLANK)
+	if (!backlight_is_blank(dev))
 		intensity = acx565akm_get_actual_brightness(lcd);
 	else
 		intensity = 0;
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers
  2022-06-07 18:20 ` [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers Stephen Kitt
@ 2022-06-09 21:52   ` Sebastian Reichel
  2022-06-10 17:47     ` Stephen Kitt
  0 siblings, 1 reply; 11+ messages in thread
From: Sebastian Reichel @ 2022-06-09 21:52 UTC (permalink / raw)
  To: Stephen Kitt
  Cc: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	linux-kernel, dri-devel

[-- Attachment #1: Type: text/plain, Size: 2951 bytes --]

Hi,

On Tue, Jun 07, 2022 at 08:20:25PM +0200, Stephen Kitt wrote:
> Instead of retrieving the backlight brightness in struct
> backlight_properties manually, and then checking whether the backlight
> should be on at all, use backlight_get_brightness() which does all
> this and insulates this from future changes.
> 
> Instead of setting the power state by manually updating fields in
> struct backlight_properties, use backlight_enable() and
> backlight_disable(). These also call backlight_update_status() so the
> separate call is no longer needed.
> 
> Signed-off-by: Stephen Kitt <steve@sk2.org>
> Cc: Thierry Reding <thierry.reding@gmail.com>
> Cc: Sam Ravnborg <sam@ravnborg.org>
> Cc: David Airlie <airlied@linux.ie>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: dri-devel@lists.freedesktop.org
> ---
>
>  drivers/gpu/drm/panel/panel-dsi-cm.c | 24 ++++--------------------
>  1 file changed, 4 insertions(+), 20 deletions(-)
> 
> diff --git a/drivers/gpu/drm/panel/panel-dsi-cm.c b/drivers/gpu/drm/panel/panel-dsi-cm.c
> index b58cb064975f..aa36dc6cedd3 100644
> --- a/drivers/gpu/drm/panel/panel-dsi-cm.c
> +++ b/drivers/gpu/drm/panel/panel-dsi-cm.c
> @@ -86,16 +86,10 @@ static void dsicm_bl_power(struct panel_drv_data *ddata, bool enable)
>  		return;
>  
>  	if (enable) {
> -		backlight->props.fb_blank = FB_BLANK_UNBLANK;
> -		backlight->props.state = ~(BL_CORE_FBBLANK | BL_CORE_SUSPENDED);
> -		backlight->props.power = FB_BLANK_UNBLANK;
> +		backlight_enable(backlight);
>  	} else {
> -		backlight->props.fb_blank = FB_BLANK_NORMAL;
> -		backlight->props.power = FB_BLANK_POWERDOWN;
> -		backlight->props.state |= BL_CORE_FBBLANK | BL_CORE_SUSPENDED;
> +		backlight_disable(backlight);
>  	}

The brackets can be removed now. Otherwise:

Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>

-- Sebastian

> -
> -	backlight_update_status(backlight);
>  }
>  
>  static void hw_guard_start(struct panel_drv_data *ddata, int guard_msec)
> @@ -196,13 +190,7 @@ static int dsicm_bl_update_status(struct backlight_device *dev)
>  {
>  	struct panel_drv_data *ddata = dev_get_drvdata(&dev->dev);
>  	int r = 0;
> -	int level;
> -
> -	if (dev->props.fb_blank == FB_BLANK_UNBLANK &&
> -			dev->props.power == FB_BLANK_UNBLANK)
> -		level = dev->props.brightness;
> -	else
> -		level = 0;
> +	int level = backlight_get_brightness(dev);
>  
>  	dev_dbg(&ddata->dsi->dev, "update brightness to %d\n", level);
>  
> @@ -219,11 +207,7 @@ static int dsicm_bl_update_status(struct backlight_device *dev)
>  
>  static int dsicm_bl_get_intensity(struct backlight_device *dev)
>  {
> -	if (dev->props.fb_blank == FB_BLANK_UNBLANK &&
> -			dev->props.power == FB_BLANK_UNBLANK)
> -		return dev->props.brightness;
> -
> -	return 0;
> +	return backlight_get_brightness(dev);
>  }
>  
>  static const struct backlight_ops dsicm_bl_ops = {
> -- 
> 2.30.2
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 3/3] drm/panel: sony-acx565akm: Use backlight helpers
  2022-06-07 18:20 ` [PATCH 3/3] drm/panel: sony-acx565akm: " Stephen Kitt
@ 2022-06-09 21:54   ` Sebastian Reichel
  0 siblings, 0 replies; 11+ messages in thread
From: Sebastian Reichel @ 2022-06-09 21:54 UTC (permalink / raw)
  To: Stephen Kitt
  Cc: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	linux-kernel, dri-devel

[-- Attachment #1: Type: text/plain, Size: 2072 bytes --]

Hi,

On Tue, Jun 07, 2022 at 08:20:26PM +0200, Stephen Kitt wrote:
> Instead of retrieving the backlight brightness in struct
> backlight_properties manually, and then checking whether the backlight
> should be on at all, use backlight_get_brightness() which does all
> this and insulates this from future changes.
> 
> Instead of manually checking the power state in struct
> backlight_properties, use backlight_is_blank().
> 
> Signed-off-by: Stephen Kitt <steve@sk2.org>
> Cc: Thierry Reding <thierry.reding@gmail.com>
> Cc: Sam Ravnborg <sam@ravnborg.org>
> Cc: David Airlie <airlied@linux.ie>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: dri-devel@lists.freedesktop.org
> ---

Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>

-- Sebastian

>  drivers/gpu/drm/panel/panel-sony-acx565akm.c | 11 ++---------
>  1 file changed, 2 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/panel/panel-sony-acx565akm.c b/drivers/gpu/drm/panel/panel-sony-acx565akm.c
> index 0d7541a33f87..a6bc8c8cf6c8 100644
> --- a/drivers/gpu/drm/panel/panel-sony-acx565akm.c
> +++ b/drivers/gpu/drm/panel/panel-sony-acx565akm.c
> @@ -298,13 +298,7 @@ static void acx565akm_set_brightness(struct acx565akm_panel *lcd, int level)
>  static int acx565akm_bl_update_status_locked(struct backlight_device *dev)
>  {
>  	struct acx565akm_panel *lcd = dev_get_drvdata(&dev->dev);
> -	int level;
> -
> -	if (dev->props.fb_blank == FB_BLANK_UNBLANK &&
> -	    dev->props.power == FB_BLANK_UNBLANK)
> -		level = dev->props.brightness;
> -	else
> -		level = 0;
> +	int level = backlight_get_brightness(dev);
>  
>  	acx565akm_set_brightness(lcd, level);
>  
> @@ -330,8 +324,7 @@ static int acx565akm_bl_get_intensity(struct backlight_device *dev)
>  
>  	mutex_lock(&lcd->mutex);
>  
> -	if (dev->props.fb_blank == FB_BLANK_UNBLANK &&
> -	    dev->props.power == FB_BLANK_UNBLANK)
> +	if (!backlight_is_blank(dev))
>  		intensity = acx565akm_get_actual_brightness(lcd);
>  	else
>  		intensity = 0;
> -- 
> 2.30.2
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers
  2022-06-09 21:52   ` Sebastian Reichel
@ 2022-06-10 17:47     ` Stephen Kitt
  2022-06-10 19:28       ` Sam Ravnborg
  0 siblings, 1 reply; 11+ messages in thread
From: Stephen Kitt @ 2022-06-10 17:47 UTC (permalink / raw)
  To: Sebastian Reichel
  Cc: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	linux-kernel, dri-devel

[-- Attachment #1: Type: text/plain, Size: 1289 bytes --]

Hi Sebastian,

On Thu, 9 Jun 2022 23:52:36 +0200, Sebastian Reichel
<sebastian.reichel@collabora.com> wrote:
> On Tue, Jun 07, 2022 at 08:20:25PM +0200, Stephen Kitt wrote:
> > diff --git a/drivers/gpu/drm/panel/panel-dsi-cm.c
> > b/drivers/gpu/drm/panel/panel-dsi-cm.c index b58cb064975f..aa36dc6cedd3
> > 100644 --- a/drivers/gpu/drm/panel/panel-dsi-cm.c
> > +++ b/drivers/gpu/drm/panel/panel-dsi-cm.c
> > @@ -86,16 +86,10 @@ static void dsicm_bl_power(struct panel_drv_data
> > *ddata, bool enable) return;
> >  
> >  	if (enable) {
> > -		backlight->props.fb_blank = FB_BLANK_UNBLANK;
> > -		backlight->props.state = ~(BL_CORE_FBBLANK |
> > BL_CORE_SUSPENDED);
> > -		backlight->props.power = FB_BLANK_UNBLANK;
> > +		backlight_enable(backlight);
> >  	} else {
> > -		backlight->props.fb_blank = FB_BLANK_NORMAL;
> > -		backlight->props.power = FB_BLANK_POWERDOWN;
> > -		backlight->props.state |= BL_CORE_FBBLANK |
> > BL_CORE_SUSPENDED;
> > +		backlight_disable(backlight);
> >  	}  
> 
> The brackets can be removed now. Otherwise:

> 
> Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>

Thanks, I’ll wait a little more to see if there are any other reviews of the
patches and then push a v2 with that fix.

Regards,

Stephen

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers
  2022-06-10 17:47     ` Stephen Kitt
@ 2022-06-10 19:28       ` Sam Ravnborg
  2022-06-10 19:52         ` Stephen Kitt
  0 siblings, 1 reply; 11+ messages in thread
From: Sam Ravnborg @ 2022-06-10 19:28 UTC (permalink / raw)
  To: Stephen Kitt
  Cc: Sebastian Reichel, David Airlie, linux-kernel, dri-devel, Thierry Reding

Hi Stephen.
On Fri, Jun 10, 2022 at 07:47:20PM +0200, Stephen Kitt wrote:
> Hi Sebastian,
> 
> On Thu, 9 Jun 2022 23:52:36 +0200, Sebastian Reichel
> <sebastian.reichel@collabora.com> wrote:
> > On Tue, Jun 07, 2022 at 08:20:25PM +0200, Stephen Kitt wrote:
> > > diff --git a/drivers/gpu/drm/panel/panel-dsi-cm.c
> > > b/drivers/gpu/drm/panel/panel-dsi-cm.c index b58cb064975f..aa36dc6cedd3
> > > 100644 --- a/drivers/gpu/drm/panel/panel-dsi-cm.c
> > > +++ b/drivers/gpu/drm/panel/panel-dsi-cm.c
> > > @@ -86,16 +86,10 @@ static void dsicm_bl_power(struct panel_drv_data
> > > *ddata, bool enable) return;
> > >  
> > >  	if (enable) {
> > > -		backlight->props.fb_blank = FB_BLANK_UNBLANK;
> > > -		backlight->props.state = ~(BL_CORE_FBBLANK |
> > > BL_CORE_SUSPENDED);
> > > -		backlight->props.power = FB_BLANK_UNBLANK;
> > > +		backlight_enable(backlight);
> > >  	} else {
> > > -		backlight->props.fb_blank = FB_BLANK_NORMAL;
> > > -		backlight->props.power = FB_BLANK_POWERDOWN;
> > > -		backlight->props.state |= BL_CORE_FBBLANK |
> > > BL_CORE_SUSPENDED;
> > > +		backlight_disable(backlight);
> > >  	}  
> > 
> > The brackets can be removed now. Otherwise:
> 
> > 
> > Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>
> 
> Thanks, I’ll wait a little more to see if there are any other reviews of the
> patches and then push a v2 with that fix.
It would be very nice if you could kill all uses of FB_BLANK in the
drivers/gpu/drm/panel/* drivers, and post them as one series.
This is long overdue to introduce the backlight helpers.

The three you posted is already a nice step forward, and there may be
more panel drivers I have missed.

	Sam

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers
  2022-06-10 19:28       ` Sam Ravnborg
@ 2022-06-10 19:52         ` Stephen Kitt
  2022-06-10 19:56           ` Stephen Kitt
  0 siblings, 1 reply; 11+ messages in thread
From: Stephen Kitt @ 2022-06-10 19:52 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Sebastian Reichel, David Airlie, linux-kernel, dri-devel, Thierry Reding

[-- Attachment #1: Type: text/plain, Size: 2414 bytes --]

On Fri, 10 Jun 2022 21:28:32 +0200, Sam Ravnborg <sam@ravnborg.org> wrote:
> Hi Stephen.
> On Fri, Jun 10, 2022 at 07:47:20PM +0200, Stephen Kitt wrote:
> > Hi Sebastian,
> > 
> > On Thu, 9 Jun 2022 23:52:36 +0200, Sebastian Reichel
> > <sebastian.reichel@collabora.com> wrote:  
> > > On Tue, Jun 07, 2022 at 08:20:25PM +0200, Stephen Kitt wrote:  
> > > > diff --git a/drivers/gpu/drm/panel/panel-dsi-cm.c
> > > > b/drivers/gpu/drm/panel/panel-dsi-cm.c index
> > > > b58cb064975f..aa36dc6cedd3 100644 ---
> > > > a/drivers/gpu/drm/panel/panel-dsi-cm.c +++
> > > > b/drivers/gpu/drm/panel/panel-dsi-cm.c @@ -86,16 +86,10 @@ static
> > > > void dsicm_bl_power(struct panel_drv_data *ddata, bool enable) return;
> > > >  
> > > >  	if (enable) {
> > > > -		backlight->props.fb_blank = FB_BLANK_UNBLANK;
> > > > -		backlight->props.state = ~(BL_CORE_FBBLANK |
> > > > BL_CORE_SUSPENDED);
> > > > -		backlight->props.power = FB_BLANK_UNBLANK;
> > > > +		backlight_enable(backlight);
> > > >  	} else {
> > > > -		backlight->props.fb_blank = FB_BLANK_NORMAL;
> > > > -		backlight->props.power = FB_BLANK_POWERDOWN;
> > > > -		backlight->props.state |= BL_CORE_FBBLANK |
> > > > BL_CORE_SUSPENDED;
> > > > +		backlight_disable(backlight);
> > > >  	}    
> > > 
> > > The brackets can be removed now. Otherwise:  
> >   
> > > 
> > > Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>  
> > 
> > Thanks, I’ll wait a little more to see if there are any other reviews of
> > the patches and then push a v2 with that fix.  
> It would be very nice if you could kill all uses of FB_BLANK in the
> drivers/gpu/drm/panel/* drivers, and post them as one series.
> This is long overdue to introduce the backlight helpers.
> 
> The three you posted is already a nice step forward, and there may be
> more panel drivers I have missed.

With this series on top of 5.19-rc1, the only remaining .fb_blank reference is
in acx565akm_backlight_init() in panel-sony-acx565akm.c; I was planning on
nuking that along with the other .fb_blank initialisers in a series removing
.fb_blank entirely from backlight_properties. I’ll add it as a fourth patch
for drm/panel if that makes things easier!

There will still be references to FB_BLANK constants since they’re used for
backlight_properties.power values. Would it make sense to rename those?

Regards,

Stephen

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers
  2022-06-10 19:52         ` Stephen Kitt
@ 2022-06-10 19:56           ` Stephen Kitt
  2022-06-10 20:15             ` Sam Ravnborg
  0 siblings, 1 reply; 11+ messages in thread
From: Stephen Kitt @ 2022-06-10 19:56 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Sebastian Reichel, David Airlie, linux-kernel, dri-devel, Thierry Reding

[-- Attachment #1: Type: text/plain, Size: 2922 bytes --]

On Fri, 10 Jun 2022 21:52:36 +0200, Stephen Kitt <steve@sk2.org> wrote:

> On Fri, 10 Jun 2022 21:28:32 +0200, Sam Ravnborg <sam@ravnborg.org> wrote:
> > Hi Stephen.
> > On Fri, Jun 10, 2022 at 07:47:20PM +0200, Stephen Kitt wrote:  
> > > Hi Sebastian,
> > > 
> > > On Thu, 9 Jun 2022 23:52:36 +0200, Sebastian Reichel
> > > <sebastian.reichel@collabora.com> wrote:    
> > > > On Tue, Jun 07, 2022 at 08:20:25PM +0200, Stephen Kitt wrote:    
> > > > > diff --git a/drivers/gpu/drm/panel/panel-dsi-cm.c
> > > > > b/drivers/gpu/drm/panel/panel-dsi-cm.c index
> > > > > b58cb064975f..aa36dc6cedd3 100644 ---
> > > > > a/drivers/gpu/drm/panel/panel-dsi-cm.c +++
> > > > > b/drivers/gpu/drm/panel/panel-dsi-cm.c @@ -86,16 +86,10 @@ static
> > > > > void dsicm_bl_power(struct panel_drv_data *ddata, bool enable)
> > > > > return; 
> > > > >  	if (enable) {
> > > > > -		backlight->props.fb_blank = FB_BLANK_UNBLANK;
> > > > > -		backlight->props.state = ~(BL_CORE_FBBLANK |
> > > > > BL_CORE_SUSPENDED);
> > > > > -		backlight->props.power = FB_BLANK_UNBLANK;
> > > > > +		backlight_enable(backlight);
> > > > >  	} else {
> > > > > -		backlight->props.fb_blank = FB_BLANK_NORMAL;
> > > > > -		backlight->props.power = FB_BLANK_POWERDOWN;
> > > > > -		backlight->props.state |= BL_CORE_FBBLANK |
> > > > > BL_CORE_SUSPENDED;
> > > > > +		backlight_disable(backlight);
> > > > >  	}      
> > > > 
> > > > The brackets can be removed now. Otherwise:    
> > >     
> > > > 
> > > > Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>    
> > > 
> > > Thanks, I’ll wait a little more to see if there are any other reviews of
> > > the patches and then push a v2 with that fix.    
> > It would be very nice if you could kill all uses of FB_BLANK in the
> > drivers/gpu/drm/panel/* drivers, and post them as one series.
> > This is long overdue to introduce the backlight helpers.
> > 
> > The three you posted is already a nice step forward, and there may be
> > more panel drivers I have missed.  
> 
> With this series on top of 5.19-rc1, the only remaining .fb_blank reference
> is in acx565akm_backlight_init() in panel-sony-acx565akm.c; I was planning
> on nuking that along with the other .fb_blank initialisers in a series
> removing .fb_blank entirely from backlight_properties. I’ll add it as a
> fourth patch for drm/panel if that makes things easier!

That’s in drivers/gpu/drm/panel of course, there are a few others elsewhere
(I’ve got patches in flight for most of them, I’ve got the rest ready for
submission).

> There will still be references to FB_BLANK constants since they’re used for
> backlight_properties.power values. Would it make sense to rename those?

Just to make sure — I’m cleaning up backlight_properties.fb_blank, not
fb_ops.fb_blank. I wasn’t planning on touching the latter...

Regards,

Stephen

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers
  2022-06-10 19:56           ` Stephen Kitt
@ 2022-06-10 20:15             ` Sam Ravnborg
  0 siblings, 0 replies; 11+ messages in thread
From: Sam Ravnborg @ 2022-06-10 20:15 UTC (permalink / raw)
  To: Stephen Kitt
  Cc: Sebastian Reichel, David Airlie, linux-kernel, dri-devel, Thierry Reding

Hi Stephen,
> > > > 
> > > > Thanks, I’ll wait a little more to see if there are any other reviews of
> > > > the patches and then push a v2 with that fix.    
> > > It would be very nice if you could kill all uses of FB_BLANK in the
> > > drivers/gpu/drm/panel/* drivers, and post them as one series.
> > > This is long overdue to introduce the backlight helpers.
> > > 
> > > The three you posted is already a nice step forward, and there may be
> > > more panel drivers I have missed.  
> > 
> > With this series on top of 5.19-rc1, the only remaining .fb_blank reference
> > is in acx565akm_backlight_init() in panel-sony-acx565akm.c; I was planning
> > on nuking that along with the other .fb_blank initialisers in a series
> > removing .fb_blank entirely from backlight_properties. I’ll add it as a
> > fourth patch for drm/panel if that makes things easier!
> 
> That’s in drivers/gpu/drm/panel of course, there are a few others elsewhere
> (I’ve got patches in flight for most of them, I’ve got the rest ready for
> submission).
> 
> > There will still be references to FB_BLANK constants since they’re used for
> > backlight_properties.power values. Would it make sense to rename those?
> 
> Just to make sure — I’m cleaning up backlight_properties.fb_blank, not
> fb_ops.fb_blank. I wasn’t planning on touching the latter...

Nuking props.fb_blank - that a fine goal - so keep focus there.
We can then later revisit the other clean-up possibilities.

Since you do this tree-wide do not do the mistake and try to cover too
much at the same time, because then you never finish.
So forget my comment for now and keep up the good work on removing
props.fb_blank.

	Sam

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2022-06-10 20:33 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-07 18:20 [PATCH 0/3] drm/panel: Use backlight helpers Stephen Kitt
2022-06-07 18:20 ` [PATCH 1/3] drm/panel: Use backlight helper Stephen Kitt
2022-06-07 18:20 ` [PATCH 2/3] drm/panel: panel-dsi-cm: Use backlight helpers Stephen Kitt
2022-06-09 21:52   ` Sebastian Reichel
2022-06-10 17:47     ` Stephen Kitt
2022-06-10 19:28       ` Sam Ravnborg
2022-06-10 19:52         ` Stephen Kitt
2022-06-10 19:56           ` Stephen Kitt
2022-06-10 20:15             ` Sam Ravnborg
2022-06-07 18:20 ` [PATCH 3/3] drm/panel: sony-acx565akm: " Stephen Kitt
2022-06-09 21:54   ` Sebastian Reichel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).