All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrzej Hajda <a.hajda@samsung.com>
To: Inki Dae <inki.dae@samsung.com>
Cc: linux-samsung-soc@vger.kernel.org,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	Krzysztof Kozlowski <krzk@kernel.org>,
	dri-devel@lists.freedesktop.org,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Subject: Re: [PATCH v3 RESEND 00/24] drm/exynos: add support for GSCALER planes on Exynos5433
Date: Tue, 26 Mar 2019 14:51:43 +0100	[thread overview]
Message-ID: <983ac41e-4f11-ad47-a6c0-1a992fdd6646@samsung.com> (raw)
In-Reply-To: <291c3675-1aab-bc8b-ae48-d0e936ac784e@samsung.com>

On 26.03.2019 09:45, Inki Dae wrote:
> Hi Andrzej,
>
> 19. 3. 25. 오후 4:13에 Andrzej Hajda 이(가) 쓴 글:
>> Hi Inki,
>>
>> GSCALERs in Exynos SoCs support conversion between wide range of image formats,
>> plus scaling and rotation.
>> Driver already supports mem2mem mode - via ExynosDRM IPP framework.
>> This patchset adds support for mem to display mode - framebuffers can
>> be converted, scaled and send directly to Display Controller. From DRM
>> framework's point of view every GSCALER exposes drm_plane which can be connected
>> to display controller (display panel or TV).
>> The feature is not well documented so the development was quite difficult -
>> a process of trial and error, vendor code analysis, guessing from datasheets.
>> Hopefully most of the issues were solved. I have developed and tested it on
>> TM2 device with panel and TV paths.
>>
>> The patchset contains three parts:
>> 1. Preparatory patches - mostly cleanup and refactoring of drm_crtc and drm_plane
>>    related structures, to allow usage of planes which are not physically bound
>>    to crtcs (01-13).
>> 2. Adding local path support to GSCALER and DECON (14-20).
>> 3. Few fixes of bugs existing already in the code but discovered due to added
>>    local path support (21-23).
>>
>> The patchset is based on exynos_drm_next plus my patchset adding zpos to DECON
>> and FIMD - 'drm/exynos: add support for dynamic zpos in DECON and FIMD' - it is
>> required to allow set z-pos position of GSCALER planes.
> As for this, we had a discussion before,
> https://patchwork.kernel.org/cover/10715521/
>
> And the last comment I left was,
> "I know. Your patch will show that plane order is changed by changing mapping of plane from one window to another window regardless of overlay priority change support. 
> I'm not clear but seems maybe we could do more something with your patch even though DECON/FIMD have limit. So I will enqueue your patch until real user is fixed."
>
> Did you fix TDM module of Tizen which is a real user? Without any modification of the TDM module, the user doesn't work.


Last time I have tried to work with Tizen on tm2 the whole system was
very unstable, the display was black even without my patches, so I gave
up. If you want to fix TDM in Tizen anyway I can try it again, the only
problem is that I am currently busy with other tasks, so it can take
some time to look at Tizen again.


Regards

Andrzej


>
>> To simplify tests I have also created branch containing all required patches:
>> Repo: https://git.tizen.org/cgit/platform/kernel/linux-exynos
>> Branch: sandbox/ahajda/dev/exynos-drm-local-path
>>
>> This is v2 version of the patchset. In this version I have moved code setting
>> cursor plane in crtc to separate patch together with code disabling fast cursor
>> updates - hardware does not support it. To keep bisectability DTS patches should
>> be applied before subsequent ones. It is rebased on today's exynos-drm-next.
>>
>> Please be aware that DTS patches has been already applied to samsung-soc tree,
>> I left them here to simplify testing on exynos-drm-next, which is not in sync with
>> samsung-soc, for this reason I have moved them on the beginning of the patchset.
> Got it. I can test it by doing cherry-pick these two patches.
>
> Thanks,
> Inki Dae
>
>> Regards
>> Andrzej
>>
>>
>> Andrzej Hajda (24):
>>   arm64: dts: exynos: configure GSCALER related clocks
>>   arm64: dts: exynos: add DSD/GSD clocks to DECONs and GSCALERs
>>   drm/exynos: remove exynos_drm_plane.h header
>>   drm/exynos: remove spare macro
>>   drm/exynos: drop exynos_drm_plane_config structure
>>   drm/exynos: add exynos_drm_crtc_init function
>>   drm/exynos/decon5433: embed exynos_drm_crtc directly into context
>>   drm/exynos/decon7: embed exynos_drm_crtc directly into context
>>   drm/exynos/fimd: embed exynos_drm_crtc directly into context
>>   drm/exynos/mixer: embed exynos_drm_crtc directly into context
>>   drm/exynos/vidi: embed exynos_drm_crtc directly into context
>>   drm/exynos: remove standalone exynos_drm_crtc leftovers
>>   drm/exynos/vidi: remove encoder_to_vidi helper
>>   drm/exynos: unify plane type assignment
>>   drm/exynos: set primary plane in exynos_drm_crtc_init
>>   drm/exynos: set cursor plane in exynos_drm_crtc_init
>>   drm/exynos: add plane update/disable callbacks for planes
>>   drm/exynos: add GSCALER plane capability
>>   drm/exynos/gscaler: fix id assignement
>>   drm/exynos/gscaler: add local path support
>>   drm/exynos/decon5433: add local path support
>>   drm/exynos/decon5433: wait for finish previous update
>>   drm/exynos/gscaler: change supported color format BGRX8888 to XBGR8888
>>   drm/exynos/gscaler: fix handling YVU420 pixel format
>>
>>  .../dts/exynos/exynos5433-tm2-common.dtsi     |   6 +
>>  arch/arm64/boot/dts/exynos/exynos5433-tm2.dts |   6 +-
>>  arch/arm64/boot/dts/exynos/exynos5433.dtsi    |  25 +-
>>  drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 162 ++++++++-----
>>  drivers/gpu/drm/exynos/exynos7_drm_decon.c    |  66 +++--
>>  drivers/gpu/drm/exynos/exynos_drm_crtc.c      |  46 ++--
>>  drivers/gpu/drm/exynos/exynos_drm_crtc.h      |   7 +-
>>  drivers/gpu/drm/exynos/exynos_drm_drv.c       |   1 -
>>  drivers/gpu/drm/exynos/exynos_drm_drv.h       |  50 ++--
>>  drivers/gpu/drm/exynos/exynos_drm_fb.c        |  10 +-
>>  drivers/gpu/drm/exynos/exynos_drm_fimd.c      |  85 +++----
>>  drivers/gpu/drm/exynos/exynos_drm_gsc.c       | 229 ++++++++++++++----
>>  drivers/gpu/drm/exynos/exynos_drm_plane.c     |  84 ++++---
>>  drivers/gpu/drm/exynos/exynos_drm_plane.h     |  14 --
>>  drivers/gpu/drm/exynos/exynos_drm_vidi.c      |  48 ++--
>>  drivers/gpu/drm/exynos/exynos_mixer.c         |  95 +++-----
>>  drivers/gpu/drm/exynos/regs-decon5433.h       |   6 +
>>  drivers/gpu/drm/exynos/regs-gsc.h             |   6 +
>>  18 files changed, 538 insertions(+), 408 deletions(-)
>>  delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_plane.h
>>
>

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2019-03-26 13:51 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20190325071353eucas1p185d973e14dac923aab381083b2b67445@eucas1p1.samsung.com>
2019-03-25  7:13 ` [PATCH v3 RESEND 00/24] drm/exynos: add support for GSCALER planes on Exynos5433 Andrzej Hajda
     [not found]   ` <CGME20190325071353eucas1p13470b85473aa92b25d38fcf4eceea76e@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 01/24] arm64: dts: exynos: configure GSCALER related clocks Andrzej Hajda
2019-03-25  7:50       ` Krzysztof Kozlowski
2019-03-25  8:31         ` Andrzej Hajda
2019-03-25  8:44           ` Krzysztof Kozlowski
     [not found]   ` <CGME20190325071354eucas1p17f990ee93878c5909800044779b41451@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 02/24] arm64: dts: exynos: add DSD/GSD clocks to DECONs and GSCALERs Andrzej Hajda
     [not found]   ` <CGME20190325071354eucas1p181987b86e0e2df42f704f3e95f0c2b18@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 03/24] drm/exynos: remove exynos_drm_plane.h header Andrzej Hajda
     [not found]   ` <CGME20190325071354eucas1p11b39f3a06807b8619cea583c7dc40c18@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 04/24] drm/exynos: remove spare macro Andrzej Hajda
     [not found]   ` <CGME20190325071355eucas1p1bc10232953b0d9f122ee7d3d532374e8@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 05/24] drm/exynos: drop exynos_drm_plane_config structure Andrzej Hajda
     [not found]   ` <CGME20190325071355eucas1p1cbb56752b2560cb6384d79df9c4124a3@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 06/24] drm/exynos: add exynos_drm_crtc_init function Andrzej Hajda
     [not found]   ` <CGME20190325071356eucas1p111ff1323f9ef55582b6983ce91a0e58a@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 07/24] drm/exynos/decon5433: embed exynos_drm_crtc directly into context Andrzej Hajda
     [not found]   ` <CGME20190325071356eucas1p17598af50b99cecd3f04bd5bd7b665468@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 08/24] drm/exynos/decon7: " Andrzej Hajda
     [not found]   ` <CGME20190325071356eucas1p169112fff9a6b5914c93b162a267348f1@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 09/24] drm/exynos/fimd: " Andrzej Hajda
     [not found]   ` <CGME20190325071357eucas1p1d1def486ebc1697def8c4d670b7cd15c@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 10/24] drm/exynos/mixer: " Andrzej Hajda
     [not found]   ` <CGME20190325071357eucas1p107f56a7c71d033687e02d8eab03c8635@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 11/24] drm/exynos/vidi: " Andrzej Hajda
     [not found]   ` <CGME20190325071358eucas1p19d8fa7080e588979618ac4bb4aeccbeb@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 12/24] drm/exynos: remove standalone exynos_drm_crtc leftovers Andrzej Hajda
     [not found]   ` <CGME20190325071358eucas1p1e7f9aa715ac8f04b20fe6a64aa83700d@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 13/24] drm/exynos/vidi: remove encoder_to_vidi helper Andrzej Hajda
     [not found]   ` <CGME20190325071359eucas1p1b08952b714f0f81d694a0c0db8332521@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 14/24] drm/exynos: unify plane type assignment Andrzej Hajda
     [not found]   ` <CGME20190325071359eucas1p1701719f798584cd23cc8058d2f2c495b@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 15/24] drm/exynos: set primary plane in exynos_drm_crtc_init Andrzej Hajda
     [not found]   ` <CGME20190325071359eucas1p1b97bf55b51b840f4a049df4779800f11@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 16/24] drm/exynos: set cursor " Andrzej Hajda
     [not found]   ` <CGME20190325071400eucas1p1f80832bb0feba9bd11187aecf1ae61c7@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 17/24] drm/exynos: add plane update/disable callbacks for planes Andrzej Hajda
     [not found]   ` <CGME20190325071400eucas1p1a6740040c56d51b0a3658ec01c1bb9f6@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 18/24] drm/exynos: add GSCALER plane capability Andrzej Hajda
     [not found]   ` <CGME20190325071401eucas1p1ddc56702c8ff146f0fd84277f3f84e08@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 19/24] drm/exynos/gscaler: fix id assignement Andrzej Hajda
     [not found]   ` <CGME20190325071401eucas1p10d9ad1fcfc4a5e4f2b964cf04e5e5fe8@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 20/24] drm/exynos/gscaler: add local path support Andrzej Hajda
     [not found]   ` <CGME20190325071401eucas1p10df709b256570f1aba9cbc4e875da1b3@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 21/24] drm/exynos/decon5433: " Andrzej Hajda
2022-02-06 16:51       ` Krzysztof Kozlowski
2022-03-02  1:00         ` Inki Dae
2022-03-03 16:03           ` Krzysztof Kozlowski
2022-03-03 16:11             ` Marek Szyprowski
2022-03-03 16:12               ` Krzysztof Kozlowski
     [not found]   ` <CGME20190325071402eucas1p12176421bacd4f9bcf9341bc776044c56@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 22/24] drm/exynos/decon5433: wait for finish previous update Andrzej Hajda
     [not found]   ` <CGME20190325071402eucas1p1b21cd8cb6a2bfa0349821597b6291af5@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 23/24] drm/exynos/gscaler: change supported color format BGRX8888 to XBGR8888 Andrzej Hajda
     [not found]   ` <CGME20190325071403eucas1p15267241039dc4b1911f2357b7a43baac@eucas1p1.samsung.com>
2019-03-25  7:13     ` [PATCH v3 RESEND 24/24] drm/exynos/gscaler: fix handling YVU420 pixel format Andrzej Hajda
2019-03-26  8:45   ` [PATCH v3 RESEND 00/24] drm/exynos: add support for GSCALER planes on Exynos5433 Inki Dae
2019-03-26 13:51     ` Andrzej Hajda [this message]
2019-03-27  2:26       ` Inki Dae

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=983ac41e-4f11-ad47-a6c0-1a992fdd6646@samsung.com \
    --to=a.hajda@samsung.com \
    --cc=b.zolnierkie@samsung.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=inki.dae@samsung.com \
    --cc=krzk@kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=m.szyprowski@samsung.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.