[PATCH] drm/panel: himax-hx83102: Adjust power and gamma to optimize brightness

Cong Yang posted 1 patch 1 month, 2 weeks ago
drivers/gpu/drm/panel/panel-himax-hx83102.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
[PATCH] drm/panel: himax-hx83102: Adjust power and gamma to optimize brightness
Posted by Cong Yang 1 month, 2 weeks ago
The current panel brightness is only 360 nit. Adjust the power and gamma to
optimize the panel brightness. The brightness after adjustment is 390 nit.

Fixes: 3179338750d8 ("drm/panel: Support for IVO t109nw41 MIPI-DSI panel")
Signed-off-by: Cong Yang <yangcong5@huaqin.corp-partner.google.com>
---
 drivers/gpu/drm/panel/panel-himax-hx83102.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-himax-hx83102.c b/drivers/gpu/drm/panel/panel-himax-hx83102.c
index 6e4b7e4644ce..8b48bba18131 100644
--- a/drivers/gpu/drm/panel/panel-himax-hx83102.c
+++ b/drivers/gpu/drm/panel/panel-himax-hx83102.c
@@ -298,7 +298,7 @@ static int ivo_t109nw41_init(struct hx83102 *ctx)
 	msleep(60);
 
 	hx83102_enable_extended_cmds(&dsi_ctx, true);
-	mipi_dsi_dcs_write_seq_multi(&dsi_ctx, HX83102_SETPOWER, 0x2c, 0xed, 0xed, 0x0f, 0xcf, 0x42,
+	mipi_dsi_dcs_write_seq_multi(&dsi_ctx, HX83102_SETPOWER, 0x2c, 0xed, 0xed, 0x27, 0xe7, 0x52,
 				     0xf5, 0x39, 0x36, 0x36, 0x36, 0x36, 0x32, 0x8b, 0x11, 0x65, 0x00, 0x88,
 				     0xfa, 0xff, 0xff, 0x8f, 0xff, 0x08, 0xd6, 0x33);
 	mipi_dsi_dcs_write_seq_multi(&dsi_ctx, HX83102_SETDISP, 0x00, 0x47, 0xb0, 0x80, 0x00, 0x12,
@@ -343,11 +343,11 @@ static int ivo_t109nw41_init(struct hx83102 *ctx)
 				     0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 				     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 				     0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
-	mipi_dsi_dcs_write_seq_multi(&dsi_ctx, HX83102_SETGMA, 0x04, 0x04, 0x06, 0x0a, 0x0a, 0x05,
-				     0x12, 0x14, 0x17, 0x13, 0x2c, 0x33, 0x39, 0x4b, 0x4c, 0x56, 0x61, 0x78,
-				     0x7a, 0x41, 0x50, 0x68, 0x73, 0x04, 0x04, 0x06, 0x0a, 0x0a, 0x05, 0x12,
-				     0x14, 0x17, 0x13, 0x2c, 0x33, 0x39, 0x4b, 0x4c, 0x56, 0x61, 0x78, 0x7a,
-				     0x41, 0x50, 0x68, 0x73);
+	mipi_dsi_dcs_write_seq_multi(&dsi_ctx, HX83102_SETGMA, 0x00, 0x07, 0x10, 0x17, 0x1c, 0x33,
+				     0x48, 0x50, 0x57, 0x50, 0x68, 0x6e, 0x71, 0x7f, 0x81, 0x8a, 0x8e, 0x9b,
+				     0x9c, 0x4d, 0x56, 0x5d, 0x73, 0x00, 0x07, 0x10, 0x17, 0x1c, 0x33, 0x48,
+				     0x50, 0x57, 0x50, 0x68, 0x6e, 0x71, 0x7f, 0x81, 0x8a, 0x8e, 0x9b, 0x9c,
+				     0x4d, 0x56, 0x5d, 0x73);
 	mipi_dsi_dcs_write_seq_multi(&dsi_ctx, HX83102_SETTP1, 0x07, 0x10, 0x10, 0x1a, 0x26, 0x9e,
 				     0x00, 0x4f, 0xa0, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x12, 0x0a, 0x02,
 				     0x02, 0x00, 0x33, 0x02, 0x04, 0x18, 0x01);
-- 
2.25.1
Re: [PATCH] drm/panel: himax-hx83102: Adjust power and gamma to optimize brightness
Posted by Doug Anderson 1 month, 2 weeks ago
Hi,

On Thu, Oct 10, 2024 at 7:08 PM Cong Yang
<yangcong5@huaqin.corp-partner.google.com> wrote:
>
> The current panel brightness is only 360 nit. Adjust the power and gamma to
> optimize the panel brightness. The brightness after adjustment is 390 nit.
>
> Fixes: 3179338750d8 ("drm/panel: Support for IVO t109nw41 MIPI-DSI panel")
> Signed-off-by: Cong Yang <yangcong5@huaqin.corp-partner.google.com>
> ---
>  drivers/gpu/drm/panel/panel-himax-hx83102.c | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)

No objection on my part. This is just modification of some constants,
is well described, and is to a panel that you added so I don't think
it needs a long bake time on the list. I'll plan to apply this on
Monday unless there are comments or someone beats me to applying.

Reviewed-by: Douglas Anderson <dianders@chromium.org>


Thanks!

-Doug
Re: [PATCH] drm/panel: himax-hx83102: Adjust power and gamma to optimize brightness
Posted by Doug Anderson 1 month, 1 week ago
Hi,

On Fri, Oct 11, 2024 at 7:20 AM Doug Anderson <dianders@chromium.org> wrote:
>
> Hi,
>
> On Thu, Oct 10, 2024 at 7:08 PM Cong Yang
> <yangcong5@huaqin.corp-partner.google.com> wrote:
> >
> > The current panel brightness is only 360 nit. Adjust the power and gamma to
> > optimize the panel brightness. The brightness after adjustment is 390 nit.
> >
> > Fixes: 3179338750d8 ("drm/panel: Support for IVO t109nw41 MIPI-DSI panel")

When applying your patch, I got a yell about your "Fixes" line. It
turns out you didn't copy the subject of the patch you're fixing
exactly. The above should be:

Fixes: 3179338750d8 ("drm/panel: himax-hx83102: Support for IVO
t109nw41 MIPI-DSI panel")

I'll fix that when applying. Please make sure you get the commit
subject exactly in the future.


> > Signed-off-by: Cong Yang <yangcong5@huaqin.corp-partner.google.com>
> > ---
> >  drivers/gpu/drm/panel/panel-himax-hx83102.c | 12 ++++++------
> >  1 file changed, 6 insertions(+), 6 deletions(-)
>
> No objection on my part. This is just modification of some constants,
> is well described, and is to a panel that you added so I don't think
> it needs a long bake time on the list. I'll plan to apply this on
> Monday unless there are comments or someone beats me to applying.
>
> Reviewed-by: Douglas Anderson <dianders@chromium.org>

I've applied and pushed to drm-misc-fixes:

[1/1] drm/panel: himax-hx83102: Adjust power and gamma to optimize brightness
      commit: fcf38bc321fbc87dfcd829f42e64e541f17599f7

-Doug
Re: [PATCH] drm/panel: himax-hx83102: Adjust power and gamma to optimize brightness
Posted by Linus Walleij 1 month, 2 weeks ago
On Fri, Oct 11, 2024 at 4:08 AM Cong Yang
<yangcong5@huaqin.corp-partner.google.com> wrote:

> The current panel brightness is only 360 nit. Adjust the power and gamma to
> optimize the panel brightness. The brightness after adjustment is 390 nit.
>
> Fixes: 3179338750d8 ("drm/panel: Support for IVO t109nw41 MIPI-DSI panel")
> Signed-off-by: Cong Yang <yangcong5@huaqin.corp-partner.google.com>

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>

If you look in panel-samsung-s6e63m0.c you can see how that driver actually
uses a set of gamma+power (ACL) settings to regulate the "backlight",
i.e. the brightness of the OLED display. You might want to implement
something similar in your driver to actually provide the user with a
brightness setting.

It's a bit unfortunate that this is for historical reasons called "backlight"
but the usecase is definitely the same.

Yours,
Linus Walleij
Re: [PATCH] drm/panel: himax-hx83102: Adjust power and gamma to optimize brightness
Posted by cong yang 1 month, 2 weeks ago
Hi,

Linus Walleij <linus.walleij@linaro.org> 于2024年10月11日周五 15:03写道:
>
> On Fri, Oct 11, 2024 at 4:08 AM Cong Yang
> <yangcong5@huaqin.corp-partner.google.com> wrote:
>
> > The current panel brightness is only 360 nit. Adjust the power and gamma to
> > optimize the panel brightness. The brightness after adjustment is 390 nit.
> >
> > Fixes: 3179338750d8 ("drm/panel: Support for IVO t109nw41 MIPI-DSI panel")
> > Signed-off-by: Cong Yang <yangcong5@huaqin.corp-partner.google.com>
>
> Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
>
> If you look in panel-samsung-s6e63m0.c you can see how that driver actually
> uses a set of gamma+power (ACL) settings to regulate the "backlight",
> i.e. the brightness of the OLED display. You might want to implement
> something similar in your driver to actually provide the user with a
> brightness setting.
>
> It's a bit unfortunate that this is for historical reasons called "backlight"
> but the usecase is definitely the same.

Thank you for your suggestion. As far as I know, there are some differences
between OLED panel and our current panel. OLED emits light through the
panel itself.
while the panel we are using now actually drives the LED lights in the
panel through PWM
control of the driver IC.

Usually the brightness is controlled by PWM and exposed to the user space.
Modifying gama here is more about optimizing the gama curve to further improve
the contrast, brightness and detail presentation.

>
> Yours,
> Linus Walleij