[0/8] v4.19.0 Added Color Management Module
mbox series

Message ID 1554297284-14009-1-git-send-email-VenkataRajesh.Kalakodima@in.bosch.com
Headers show
Series
  • v4.19.0 Added Color Management Module
Related show

Message

Kalakodima Venkata Rajesh (RBEI/ECF3) April 3, 2019, 1:14 p.m. UTC
From: kalakodima venkata rajesh <venkatarajesh.kalakodima@in.bosch.com>

This patchset adds rcar- display unit color management module (CMM) function feature, Which allows correction and adjustment of the display data, through updating Look up table (gamma) and  Cubic look up table (CTM)  property values 

Base color management module reference code taken from below link,
https://github.com/renesas-rcar/du_cmm .
-	In above code, modified variable naming’s and removed un used functionalities.
-	Introduce new functions for queueing cubic look up table and look up table events.

-	Implemented interfaces in color management module to set CLU /LUT table using standard DRM data structures as input.
	Look up table is a 1D-LUT that converts each of three-color components by using a lookup table. LUT is used for gamma correction.							
	Cubic look up table is a three-dimensional LUT (3D-LUT) that converts the input three-color-component data into desired three color Components by using a lookup table

-	Implemented atomic check helper functions for enable/disable LUT and CLU (Gamma and Color Transformation Matrix properties).
-	Allocated memory necessary for cubic look up table and look up table and added mode fix up callback function
-	Added update gamma and color transformation matrix properties in commit tail function, If any change in property values.

kalakodima venkata rajesh (8):
  drm: Add DU CMM support functions
  drm: Add DU CMM support boot and clk changes
  drm: rcar-du: Give a name to clu table samples
  drm: rcar-du: Refactor the code with new functions
  drm: rcar-du: Implement interfaces to set clu and lut using drm data
    structures
  drm: rcar-du: Implement atomic_check to check for gamma and ctm
    properties
  drm: rcar-du: update gamma and ctm properties in commit tail
  drm: rcar-du: Add shutdown callback function in platform_driver

 .../boot/dts/renesas/r8a7795-es1-salvator-x.dts    |    5 +
 arch/arm64/boot/dts/renesas/r8a7795-salvator-x.dts |    5 +
 .../arm64/boot/dts/renesas/r8a7795-salvator-xs.dts |    5 +
 arch/arm64/boot/dts/renesas/r8a7795.dtsi           |   29 +-
 arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts |    6 +-
 .../arm64/boot/dts/renesas/r8a7796-salvator-xs.dts |    4 +
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           |   25 +-
 .../arm64/boot/dts/renesas/r8a77965-salvator-x.dts |    7 +-
 .../boot/dts/renesas/r8a77965-salvator-xs.dts      |    7 +-
 arch/arm64/boot/dts/renesas/r8a77965.dtsi          |   27 +-
 drivers/clk/renesas/r8a7795-cpg-mssr.c             |    4 +
 drivers/clk/renesas/r8a7796-cpg-mssr.c             |    3 +
 drivers/clk/renesas/r8a77965-cpg-mssr.c            |  106 +-
 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c          |   35 +
 drivers/gpu/drm/rcar-du/Makefile                   |    2 +
 drivers/gpu/drm/rcar-du/rcar_du_cmm.c              | 1470 ++++++++++++++++++++
 drivers/gpu/drm/rcar-du/rcar_du_crtc.c             |   82 ++
 drivers/gpu/drm/rcar-du/rcar_du_crtc.h             |   28 +
 drivers/gpu/drm/rcar-du/rcar_du_drv.c              |   85 +-
 drivers/gpu/drm/rcar-du/rcar_du_drv.h              |   16 +-
 drivers/gpu/drm/rcar-du/rcar_du_encoder.c          |    2 +-
 drivers/gpu/drm/rcar-du/rcar_du_encoder.h          |    1 +
 drivers/gpu/drm/rcar-du/rcar_du_group.c            |    5 +
 drivers/gpu/drm/rcar-du/rcar_du_kms.c              |   25 +
 drivers/gpu/drm/rcar-du/rcar_du_regs.h             |   92 ++
 include/drm/bridge/dw_hdmi.h                       |    1 +
 include/drm/drm_atomic.h                           |   25 +
 include/drm/drm_ioctl.h                            |    7 +
 28 files changed, 2082 insertions(+), 27 deletions(-)
 create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_cmm.c

Comments

Laurent Pinchart April 4, 2019, 9:45 a.m. UTC | #1
Hi Kalakodima,

Thank you for the patch.

On Wed, Apr 03, 2019 at 06:44:36PM +0530, VenkataRajesh.Kalakodima@in.bosch.com wrote:
> From: kalakodima venkata rajesh <venkatarajesh.kalakodima@in.bosch.com>
> 
> This patchset adds rcar- display unit color management module (CMM)
> function feature, Which allows correction and adjustment of the
> display data, through updating Look up table (gamma) and  Cubic look
> up table (CTM)  property values 
> 
> Base color management module reference code taken from below link,
> https://github.com/renesas-rcar/du_cmm .
> - In above code, modified variable naming’s and removed un used
>   functionalities.
> - Introduce new functions for queueing cubic look up table and look up
>   table events.
> 
> - Implemented interfaces in color management module to set CLU /LUT
>   table using standard DRM data structures as input.
>   Look up table is a 1D-LUT that converts each of three-color
>   components by using a lookup table. LUT is used for gamma
>   correction.							
>   Cubic look up table is a three-dimensional LUT (3D-LUT) that
>   converts the input three-color-component data into desired three
>   color Components by using a lookup table
> 
> - Implemented atomic check helper functions for enable/disable LUT and
>   CLU (Gamma and Color Transformation Matrix properties).
> - Allocated memory necessary for cubic look up table and look up table
>   and added mode fix up callback function
> - Added update gamma and color transformation matrix properties in
>   commit tail function, If any change in property values.
> 
> kalakodima venkata rajesh (8):
>   drm: Add DU CMM support functions
>   drm: Add DU CMM support boot and clk changes
>   drm: rcar-du: Give a name to clu table samples
>   drm: rcar-du: Refactor the code with new functions
>   drm: rcar-du: Implement interfaces to set clu and lut using drm data
>     structures
>   drm: rcar-du: Implement atomic_check to check for gamma and ctm
>     properties
>   drm: rcar-du: update gamma and ctm properties in commit tail
>   drm: rcar-du: Add shutdown callback function in platform_driver
> 
>  .../boot/dts/renesas/r8a7795-es1-salvator-x.dts    |    5 +
>  arch/arm64/boot/dts/renesas/r8a7795-salvator-x.dts |    5 +
>  .../arm64/boot/dts/renesas/r8a7795-salvator-xs.dts |    5 +
>  arch/arm64/boot/dts/renesas/r8a7795.dtsi           |   29 +-
>  arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts |    6 +-
>  .../arm64/boot/dts/renesas/r8a7796-salvator-xs.dts |    4 +
>  arch/arm64/boot/dts/renesas/r8a7796.dtsi           |   25 +-
>  .../arm64/boot/dts/renesas/r8a77965-salvator-x.dts |    7 +-
>  .../boot/dts/renesas/r8a77965-salvator-xs.dts      |    7 +-
>  arch/arm64/boot/dts/renesas/r8a77965.dtsi          |   27 +-
>  drivers/clk/renesas/r8a7795-cpg-mssr.c             |    4 +
>  drivers/clk/renesas/r8a7796-cpg-mssr.c             |    3 +
>  drivers/clk/renesas/r8a77965-cpg-mssr.c            |  106 +-
>  drivers/gpu/drm/bridge/synopsys/dw-hdmi.c          |   35 +
>  drivers/gpu/drm/rcar-du/Makefile                   |    2 +
>  drivers/gpu/drm/rcar-du/rcar_du_cmm.c              | 1470 ++++++++++++++++++++
>  drivers/gpu/drm/rcar-du/rcar_du_crtc.c             |   82 ++
>  drivers/gpu/drm/rcar-du/rcar_du_crtc.h             |   28 +
>  drivers/gpu/drm/rcar-du/rcar_du_drv.c              |   85 +-
>  drivers/gpu/drm/rcar-du/rcar_du_drv.h              |   16 +-
>  drivers/gpu/drm/rcar-du/rcar_du_encoder.c          |    2 +-
>  drivers/gpu/drm/rcar-du/rcar_du_encoder.h          |    1 +
>  drivers/gpu/drm/rcar-du/rcar_du_group.c            |    5 +
>  drivers/gpu/drm/rcar-du/rcar_du_kms.c              |   25 +
>  drivers/gpu/drm/rcar-du/rcar_du_regs.h             |   92 ++
>  include/drm/bridge/dw_hdmi.h                       |    1 +
>  include/drm/drm_atomic.h                           |   25 +
>  include/drm/drm_ioctl.h                            |    7 +
>  28 files changed, 2082 insertions(+), 27 deletions(-)
>  create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_cmm.c

First of all, please split changes to DT, to the clock drivers, to the
dw-hdmi driver, to the DRM core and to the R-Car DU driver in separate
patches, with appropriate subject lines prefixes for each of them. As
you're modifying DT bindngs, you also need to update the bindings
documentation, which should go to a patch of its own.
Laurent Pinchart April 4, 2019, 9:46 a.m. UTC | #2
On Thu, Apr 04, 2019 at 12:45:31PM +0300, Laurent Pinchart wrote:
> Hi Kalakodima,
> 
> Thank you for the patch.

And I forgot to mention, please CC me on all patches to the DU driver.
The script/get_maintainer.pl script should have told you about that.
> 
> On Wed, Apr 03, 2019 at 06:44:36PM +0530, VenkataRajesh.Kalakodima@in.bosch.com wrote:
> > From: kalakodima venkata rajesh <venkatarajesh.kalakodima@in.bosch.com>
> > 
> > This patchset adds rcar- display unit color management module (CMM)
> > function feature, Which allows correction and adjustment of the
> > display data, through updating Look up table (gamma) and  Cubic look
> > up table (CTM)  property values 
> > 
> > Base color management module reference code taken from below link,
> > https://github.com/renesas-rcar/du_cmm .
> > - In above code, modified variable naming’s and removed un used
> >   functionalities.
> > - Introduce new functions for queueing cubic look up table and look up
> >   table events.
> > 
> > - Implemented interfaces in color management module to set CLU /LUT
> >   table using standard DRM data structures as input.
> >   Look up table is a 1D-LUT that converts each of three-color
> >   components by using a lookup table. LUT is used for gamma
> >   correction.							
> >   Cubic look up table is a three-dimensional LUT (3D-LUT) that
> >   converts the input three-color-component data into desired three
> >   color Components by using a lookup table
> > 
> > - Implemented atomic check helper functions for enable/disable LUT and
> >   CLU (Gamma and Color Transformation Matrix properties).
> > - Allocated memory necessary for cubic look up table and look up table
> >   and added mode fix up callback function
> > - Added update gamma and color transformation matrix properties in
> >   commit tail function, If any change in property values.
> > 
> > kalakodima venkata rajesh (8):
> >   drm: Add DU CMM support functions
> >   drm: Add DU CMM support boot and clk changes
> >   drm: rcar-du: Give a name to clu table samples
> >   drm: rcar-du: Refactor the code with new functions
> >   drm: rcar-du: Implement interfaces to set clu and lut using drm data
> >     structures
> >   drm: rcar-du: Implement atomic_check to check for gamma and ctm
> >     properties
> >   drm: rcar-du: update gamma and ctm properties in commit tail
> >   drm: rcar-du: Add shutdown callback function in platform_driver
> > 
> >  .../boot/dts/renesas/r8a7795-es1-salvator-x.dts    |    5 +
> >  arch/arm64/boot/dts/renesas/r8a7795-salvator-x.dts |    5 +
> >  .../arm64/boot/dts/renesas/r8a7795-salvator-xs.dts |    5 +
> >  arch/arm64/boot/dts/renesas/r8a7795.dtsi           |   29 +-
> >  arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts |    6 +-
> >  .../arm64/boot/dts/renesas/r8a7796-salvator-xs.dts |    4 +
> >  arch/arm64/boot/dts/renesas/r8a7796.dtsi           |   25 +-
> >  .../arm64/boot/dts/renesas/r8a77965-salvator-x.dts |    7 +-
> >  .../boot/dts/renesas/r8a77965-salvator-xs.dts      |    7 +-
> >  arch/arm64/boot/dts/renesas/r8a77965.dtsi          |   27 +-
> >  drivers/clk/renesas/r8a7795-cpg-mssr.c             |    4 +
> >  drivers/clk/renesas/r8a7796-cpg-mssr.c             |    3 +
> >  drivers/clk/renesas/r8a77965-cpg-mssr.c            |  106 +-
> >  drivers/gpu/drm/bridge/synopsys/dw-hdmi.c          |   35 +
> >  drivers/gpu/drm/rcar-du/Makefile                   |    2 +
> >  drivers/gpu/drm/rcar-du/rcar_du_cmm.c              | 1470 ++++++++++++++++++++
> >  drivers/gpu/drm/rcar-du/rcar_du_crtc.c             |   82 ++
> >  drivers/gpu/drm/rcar-du/rcar_du_crtc.h             |   28 +
> >  drivers/gpu/drm/rcar-du/rcar_du_drv.c              |   85 +-
> >  drivers/gpu/drm/rcar-du/rcar_du_drv.h              |   16 +-
> >  drivers/gpu/drm/rcar-du/rcar_du_encoder.c          |    2 +-
> >  drivers/gpu/drm/rcar-du/rcar_du_encoder.h          |    1 +
> >  drivers/gpu/drm/rcar-du/rcar_du_group.c            |    5 +
> >  drivers/gpu/drm/rcar-du/rcar_du_kms.c              |   25 +
> >  drivers/gpu/drm/rcar-du/rcar_du_regs.h             |   92 ++
> >  include/drm/bridge/dw_hdmi.h                       |    1 +
> >  include/drm/drm_atomic.h                           |   25 +
> >  include/drm/drm_ioctl.h                            |    7 +
> >  28 files changed, 2082 insertions(+), 27 deletions(-)
> >  create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_cmm.c
> 
> First of all, please split changes to DT, to the clock drivers, to the
> dw-hdmi driver, to the DRM core and to the R-Car DU driver in separate
> patches, with appropriate subject lines prefixes for each of them. As
> you're modifying DT bindngs, you also need to update the bindings
> documentation, which should go to a patch of its own.
> 
> -- 
> Regards,
> 
> Laurent Pinchart