From: Jacopo Mondi <jacopo+renesas@jmondi.org>
To: laurent.pinchart@ideasonboard.com,
kieran.bingham+renesas@ideasonboard.com, geert@linux-m68k.org,
horms@verge.net.au, uli+renesas@fpond.eu,
VenkataRajesh.Kalakodima@in.bosch.com
Cc: Jacopo Mondi <jacopo+renesas@jmondi.org>,
airlied@linux.ie, daniel@ffwll.ch, koji.matsuoka.xm@renesas.com,
muroya@ksk.co.jp, Harsha.ManjulaMallikarjun@in.bosch.com,
linux-renesas-soc@vger.kernel.org,
dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org
Subject: [PATCH v4 0/9 drm: rcar-du: Add Color Management Module (CMM)
Date: Fri, 6 Sep 2019 15:54:27 +0200 [thread overview]
Message-ID: <20190906135436.10622-1-jacopo+renesas@jmondi.org> (raw)
[ Ugh, sorry for the double sending, but I forgot --cc-cover to git-send
email and the series has not been delivered to the mailing lists.
Sorry about that. ]
Hello, new iteration of CMM support, with quite a few changes compared to
v3:
References:
A reference to the v1 cover letter, with some background on the CMM is
available here:
https://lkml.org/lkml/2019/6/6/583
v2:
https://lore.kernel.org/linux-renesas-soc/20190706140746.29132-10-jacopo+renesas@jmondi.org/
v3:
https://lore.kernel.org/linux-renesas-soc/20190825135154.11488-1-jacopo+renesas@jmondi.org/
Change log:
*Bindings/DT:
- Rebased on renesas-devel-2019-09-03-v5.3-rc7
- Bindings converted to yaml: thanks Laurent for help
- s/'cmms'/'renesas,cmms'/ in DU bindings as suggested by Rob
- s/cmm-<soctype>/<soctype>-cmm/ as suggested by Geert
- squashed CMM addition for Gen3 SoCs in a single path at the end of
the series
*CMM/DU:
- Only accept fully populated LUT tables, remove the 'size' from the CMM
configuration structure as suggested by Laurent
- Simplify CMM configuration logic: only rely on color_mgmt_changed flag and
unconditionally provide a populated LUT table to the cmm_setup() function
- Protect against probing order inversion (DU is operation while CMM still has
not been probed) by adding rcar_cmm_init() operation as it is done for VSP as
suggested by Laurent
- Add CMM function stubs to fix compilation erros when CONFIG_DRM_RCAR_CMM is
not selected
- Minors in the CMM driver as suggested by Laurent
- Remove per-soc strings
- Make comments style consistent (not using /** anywhere in the .c file,
unify comment style)
- s/rcar_cmm_load()/rcar_cmm_write()/
- Squash cmm configuration and suspend/resume support in rcar_du_kms.c
Testing:
I have tested by injecting a color inversion LUT table at test program
initialization:
https://jmondi.org/cgit/kmsxx/commit/?h=gamma_lut&id=3c6af4db165e5b3dc8996f0a288746c35dbb1cb9
And by changing the CMM content to switch between a color inversion table
and a linear table every 50 frames:
https://jmondi.org/cgit/kmsxx/commit/?h=gamma_lut&id=fe178a43861da7c8e79618e2a13fa0f19dbcd03d
Pretty happy with the result, which seems to be consistent across system
suspend/resume.
Testing with real world use cases might be beneficial. Rajesh are you still
interested in giving this series a spin?
Thanks
j
Jacopo Mondi (9):
dt-bindings: display: renesas,cmm: Add R-Car CMM documentation
dt-bindings: display, renesas,du: Document cmms property
drm: rcar-du: Add support for CMM
drm: rcar-du: Claim CMM support for Gen3 SoCs
drm: rcar-du: kms: Initialize CMM instances
drm: rcar-du: crtc: Enable and disable CMMs
drm: rcar-du: crtc: Register GAMMA_LUT properties
drm: rcar-du: kms: Update CMM in atomic commit tail
arm64: dts: renesas: Add CMM units to Gen3 SoCs
.../bindings/display/renesas,cmm.yaml | 64 +++++
.../bindings/display/renesas,du.txt | 5 +
arch/arm64/boot/dts/renesas/r8a7795.dtsi | 40 ++-
arch/arm64/boot/dts/renesas/r8a7796.dtsi | 28 ++
arch/arm64/boot/dts/renesas/r8a77965.dtsi | 28 ++
arch/arm64/boot/dts/renesas/r8a77990.dtsi | 22 +-
arch/arm64/boot/dts/renesas/r8a77995.dtsi | 22 +-
drivers/gpu/drm/rcar-du/Kconfig | 7 +
drivers/gpu/drm/rcar-du/Makefile | 1 +
drivers/gpu/drm/rcar-du/rcar_cmm.c | 251 ++++++++++++++++++
drivers/gpu/drm/rcar-du/rcar_cmm.h | 61 +++++
drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 17 ++
drivers/gpu/drm/rcar-du/rcar_du_crtc.h | 2 +
drivers/gpu/drm/rcar-du/rcar_du_drv.c | 32 ++-
drivers/gpu/drm/rcar-du/rcar_du_drv.h | 3 +
drivers/gpu/drm/rcar-du/rcar_du_group.c | 8 +
drivers/gpu/drm/rcar-du/rcar_du_group.h | 2 +
drivers/gpu/drm/rcar-du/rcar_du_kms.c | 106 ++++++++
drivers/gpu/drm/rcar-du/rcar_du_regs.h | 5 +
19 files changed, 697 insertions(+), 7 deletions(-)
create mode 100644 Documentation/devicetree/bindings/display/renesas,cmm.yaml
create mode 100644 drivers/gpu/drm/rcar-du/rcar_cmm.c
create mode 100644 drivers/gpu/drm/rcar-du/rcar_cmm.h
--
2.23.0
next reply other threads:[~2019-09-06 13:53 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-06 13:54 Jacopo Mondi [this message]
2019-09-06 13:54 ` [PATCH v4 1/9] dt-bindings: display: renesas,cmm: Add R-Car CMM documentation Jacopo Mondi
2019-09-11 19:04 ` Kieran Bingham
2019-09-17 17:55 ` Rob Herring
2019-09-18 22:08 ` Laurent Pinchart
2019-09-06 13:54 ` [PATCH v4 2/9] dt-bindings: display, renesas,du: Document cmms property Jacopo Mondi
2019-09-11 16:06 ` Kieran Bingham
2019-09-17 17:58 ` Rob Herring
2019-09-06 13:54 ` [PATCH v4 3/9] drm: rcar-du: Add support for CMM Jacopo Mondi
2019-09-11 15:54 ` Kieran Bingham
2019-09-12 7:59 ` Jacopo Mondi
2019-09-12 9:49 ` Kieran Bingham
2019-09-18 22:55 ` Laurent Pinchart
2019-09-19 8:59 ` Kieran Bingham
2019-09-20 22:43 ` Laurent Pinchart
2019-10-10 17:46 ` Jacopo Mondi
2019-10-14 23:54 ` Laurent Pinchart
2019-09-06 13:54 ` [PATCH v4 4/9] drm: rcar-du: Claim CMM support for Gen3 SoCs Jacopo Mondi
2019-09-11 18:45 ` Kieran Bingham
2019-09-06 13:54 ` [PATCH v4 5/9] drm: rcar-du: kms: Initialize CMM instances Jacopo Mondi
2019-09-12 9:27 ` Kieran Bingham
2019-09-06 13:54 ` [PATCH v4 6/9] drm: rcar-du: crtc: Enable and disable CMMs Jacopo Mondi
2019-09-11 18:40 ` Kieran Bingham
2019-09-12 8:07 ` Jacopo Mondi
2019-09-12 9:19 ` Kieran Bingham
2019-09-18 23:23 ` Laurent Pinchart
2019-09-19 8:08 ` Kieran Bingham
2019-09-20 22:44 ` Laurent Pinchart
2019-09-06 13:54 ` [PATCH v4 7/9] drm: rcar-du: crtc: Register GAMMA_LUT properties Jacopo Mondi
2019-09-11 18:47 ` Kieran Bingham
2019-09-06 13:54 ` [PATCH v4 8/9] drm: rcar-du: kms: Update CMM in atomic commit tail Jacopo Mondi
2019-09-12 9:51 ` Kieran Bingham
2019-09-20 22:49 ` Laurent Pinchart
2019-09-30 20:53 ` Ezequiel Garcia
2019-10-01 19:20 ` Laurent Pinchart
2019-09-06 13:54 ` [PATCH v4 9/9] arm64: dts: renesas: Add CMM units to Gen3 SoCs Jacopo Mondi
2019-09-11 18:16 ` Kieran Bingham
2019-09-11 19:35 ` Geert Uytterhoeven
-- strict thread matches above, loose matches on Subject: below --
2019-09-06 13:43 [PATCH v4 0/9 drm: rcar-du: Add Color Management Module (CMM) Jacopo Mondi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190906135436.10622-1-jacopo+renesas@jmondi.org \
--to=jacopo+renesas@jmondi.org \
--cc=Harsha.ManjulaMallikarjun@in.bosch.com \
--cc=VenkataRajesh.Kalakodima@in.bosch.com \
--cc=airlied@linux.ie \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=geert@linux-m68k.org \
--cc=horms@verge.net.au \
--cc=kieran.bingham+renesas@ideasonboard.com \
--cc=koji.matsuoka.xm@renesas.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=muroya@ksk.co.jp \
--cc=uli+renesas@fpond.eu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).