mbox series

[RESEND,v3,0/9] Add gamma lut support for mt8195

Message ID 20220912013006.27541-1-jason-jh.lin@mediatek.com (mailing list archive)
Headers show
Series Add gamma lut support for mt8195 | expand

Message

Jason-JH Lin (林睿祥) Sept. 12, 2022, 1:29 a.m. UTC
Since the gamma_set_common() function for previous SoC,
such as  mt8173 and mt8183, is designed for 9bit-to-10bit
conversion.
mt8195 is using 10bit-to-12bit conversion, which is
not compatible with the previous function.

Thus, need to update the function to fit the need of mt8195.
---
Change in RESEND v3:
Fix build warning
>> drivers/gpu/drm/mediatek/mtk_disp_gamma.c:59:14: warning: no previous prototype for 'mtk_gamma_get_size' [-Wmissing-prototypes]

Change in v3:
1. separate 1 dt-binding patch to 2 patches, 1 is for modifying
   multiple items list to one and 1 is for moving mt8195 compatible.
2. redefine variables to reduce memory usage.
3. delete unused symbols.
4. separate 1 drm/mediatek patch to 6 patches.
5. rebase on tag 'next-20220909'

Jason-JH.Lin (5):
  drm/mediatek: Adjust mtk_drm_gamma_set_common parameters
  drm/mediatek: Add gamma support different lut_size for other SoC
  drm/mediatek: Add gamma support different lut_bits for other SoC
  drm/mediatek: Add gamma support different bank_size for other SoC
  drm/mediatek: Add clear RELAY_MODE bit to set gamma

zheng-yan.chen (4):
  dt-bindings: mediatek: modify item formatting for gamma
  dt-bindings: mediatek: Add gamma compatible for mt8195
  drm/mediatek: Add gamma lut support for mt8195
  arm64: dts: Modify gamma compatible for mt8195

 .../display/mediatek/mediatek,gamma.yaml      |   8 +-
 arch/arm64/boot/dts/mediatek/mt8195.dtsi      |   2 +-
 drivers/gpu/drm/mediatek/mtk_disp_aal.c       |   2 +-
 drivers/gpu/drm/mediatek/mtk_disp_drv.h       |   3 +-
 drivers/gpu/drm/mediatek/mtk_disp_gamma.c     | 115 ++++++++++++++----
 drivers/gpu/drm/mediatek/mtk_drm_crtc.c       |   4 +-
 drivers/gpu/drm/mediatek/mtk_drm_crtc.h       |   1 -
 drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h   |   9 ++
 8 files changed, 109 insertions(+), 35 deletions(-)

Comments

AngeloGioacchino Del Regno April 26, 2023, 11:43 a.m. UTC | #1
Il 12/09/22 03:29, Jason-JH.Lin ha scritto:
> Since the gamma_set_common() function for previous SoC,
> such as  mt8173 and mt8183, is designed for 9bit-to-10bit
> conversion.
> mt8195 is using 10bit-to-12bit conversion, which is
> not compatible with the previous function.
> 
> Thus, need to update the function to fit the need of mt8195.

Hello,
can you please respin and fix this series on the latest linux-next?

Besides, please test it carefully: as far as I can see, GNOME Night Light
(or others) are not working on MT8195 (color temperature/ccorr).
As for gamma itself, that's not working either; you can test it with a tool
that will create a color profile by applying a new VCGT table, please look
at [1] if you need tools.

We can confirm that color correction works on at least MT8192 (colord), so
it's MT8195 at fault.

[1]: https://github.com/zb3/gnome-gamma-tool

Regards,
Angelo

> ---
> Change in RESEND v3:
> Fix build warning
>>> drivers/gpu/drm/mediatek/mtk_disp_gamma.c:59:14: warning: no previous prototype for 'mtk_gamma_get_size' [-Wmissing-prototypes]
> 
> Change in v3:
> 1. separate 1 dt-binding patch to 2 patches, 1 is for modifying
>     multiple items list to one and 1 is for moving mt8195 compatible.
> 2. redefine variables to reduce memory usage.
> 3. delete unused symbols.
> 4. separate 1 drm/mediatek patch to 6 patches.
> 5. rebase on tag 'next-20220909'
> 
> Jason-JH.Lin (5):
>    drm/mediatek: Adjust mtk_drm_gamma_set_common parameters
>    drm/mediatek: Add gamma support different lut_size for other SoC
>    drm/mediatek: Add gamma support different lut_bits for other SoC
>    drm/mediatek: Add gamma support different bank_size for other SoC
>    drm/mediatek: Add clear RELAY_MODE bit to set gamma
> 
> zheng-yan.chen (4):
>    dt-bindings: mediatek: modify item formatting for gamma
>    dt-bindings: mediatek: Add gamma compatible for mt8195
>    drm/mediatek: Add gamma lut support for mt8195
>    arm64: dts: Modify gamma compatible for mt8195
> 
>   .../display/mediatek/mediatek,gamma.yaml      |   8 +-
>   arch/arm64/boot/dts/mediatek/mt8195.dtsi      |   2 +-
>   drivers/gpu/drm/mediatek/mtk_disp_aal.c       |   2 +-
>   drivers/gpu/drm/mediatek/mtk_disp_drv.h       |   3 +-
>   drivers/gpu/drm/mediatek/mtk_disp_gamma.c     | 115 ++++++++++++++----
>   drivers/gpu/drm/mediatek/mtk_drm_crtc.c       |   4 +-
>   drivers/gpu/drm/mediatek/mtk_drm_crtc.h       |   1 -
>   drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h   |   9 ++
>   8 files changed, 109 insertions(+), 35 deletions(-)
>
AngeloGioacchino Del Regno April 27, 2023, 3:15 p.m. UTC | #2
Il 26/04/23 13:43, AngeloGioacchino Del Regno ha scritto:
> Il 12/09/22 03:29, Jason-JH.Lin ha scritto:
>> Since the gamma_set_common() function for previous SoC,
>> such as  mt8173 and mt8183, is designed for 9bit-to-10bit
>> conversion.
>> mt8195 is using 10bit-to-12bit conversion, which is
>> not compatible with the previous function.
>>
>> Thus, need to update the function to fit the need of mt8195.
> 
> Hello,
> can you please respin and fix this series on the latest linux-next?
> 
> Besides, please test it carefully: as far as I can see, GNOME Night Light
> (or others) are not working on MT8195 (color temperature/ccorr).
> As for gamma itself, that's not working either; you can test it with a tool
> that will create a color profile by applying a new VCGT table, please look
> at [1] if you need tools.
> 
> We can confirm that color correction works on at least MT8192 (colord), so
> it's MT8195 at fault.
> 
> [1]: https://github.com/zb3/gnome-gamma-tool
> 

Nevermind. I've actually fixed this code and refactored it a bit as well.

I'll push my own version soon. No action required.

Regards,
Angelo
Jason-JH Lin (林睿祥) April 28, 2023, 6:45 a.m. UTC | #3
Hi Angelo,


On Thu, 2023-04-27 at 17:15 +0200, AngeloGioacchino Del Regno wrote:
> External email : Please do not click links or open attachments until
> you have verified the sender or the content.
> 
> 
> Il 26/04/23 13:43, AngeloGioacchino Del Regno ha scritto:
> > Il 12/09/22 03:29, Jason-JH.Lin ha scritto:
> > > Since the gamma_set_common() function for previous SoC,
> > > such as  mt8173 and mt8183, is designed for 9bit-to-10bit
> > > conversion.
> > > mt8195 is using 10bit-to-12bit conversion, which is
> > > not compatible with the previous function.
> > > 
> > > Thus, need to update the function to fit the need of mt8195.
> > 
> > Hello,
> > can you please respin and fix this series on the latest linux-next?
> > 
> > Besides, please test it carefully: as far as I can see, GNOME Night
> > Light
> > (or others) are not working on MT8195 (color temperature/ccorr).
> > As for gamma itself, that's not working either; you can test it
> > with a tool
> > that will create a color profile by applying a new VCGT table,
> > please look
> > at [1] if you need tools.
> > 
> > We can confirm that color correction works on at least MT8192
> > (colord), so
> > it's MT8195 at fault.
> > 
> > [1]: 
> > https://urldefense.com/v3/__https://github.com/zb3/gnome-gamma-tool__;!!CTRNKA9wMg0ARbw!ib5vs_mqKWlyC8VbLNZbc4Fc0-e6dL5Z-OM5pLsVRnQOWAckR6ETV1mRYRkz-5rKB7fdYvY4LrYoHKDlv6jPSKzoC-245JTYaQ$
> > 
> 
> Nevermind. I've actually fixed this code and refactored it a bit as
> well.
> 
> I'll push my own version soon. No action required.
> 
> Regards,
> Angelo
> 

OK~
Thanks for your great help! :)

Regards,
Jason-JH.Lin