All of lore.kernel.org
 help / color / mirror / Atom feed
From: Louis Chauvet <louis.chauvet@bootlin.com>
To: "Rodrigo Siqueira" <rodrigosiqueiramelo@gmail.com>,
	"Melissa Wen" <melissa.srw@gmail.com>,
	"Maíra Canal" <mairacanal@riseup.net>,
	"Haneen Mohammed" <hamohammed.sa@gmail.com>,
	"Daniel Vetter" <daniel@ffwll.ch>,
	"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
	"Maxime Ripard" <mripard@kernel.org>,
	"Thomas Zimmermann" <tzimmermann@suse.de>,
	"David Airlie" <airlied@gmail.com>,
	marcheu@google.com, seanpaul@google.com,
	nicolejadeyee@google.com
Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org,
	 Louis Chauvet <louis.chauvet@bootlin.com>,
	thomas.petazzoni@bootlin.com,  miquel.raynal@bootlin.com
Subject: [PATCH 0/2] Better support for complex pixel formats
Date: Thu, 01 Feb 2024 18:31:30 +0100	[thread overview]
Message-ID: <20240201-yuv-v1-0-3ca376f27632@bootlin.com> (raw)

This patchset aims to solve issues I found in [1], and at the same time 
simplify the composition algorithm.

I sent more igt-gpu-tools test [2] to cover more things and detect the 
issues in [1].

This patchset is based on [1].

Patch 1/2: This patch is a no-op, but make the code more readable 
regarding the pixel_read functions.

Patch 2/2: This patch is more complex. My main target was to solve issues 
I found in [1], but as it was very complex to do it "in place", I choose 
to rework the composition function.
The main two advantages are:
- It's now possible to create conversion function for packed & grouped 
pixels. Some pixel formats need absolute x/y position and not only an 
offset in the buffer to extract the correct value. This part also solve 
the issues I found in [1].
- The rotation management is now way easier to understand, there is no 
more switch case in different places and instead of copy/pasting rotation 
formula I used drm_rect_* helpers.

[1]: https://lore.kernel.org/dri-devel/20240110-vkms-yuv-v2-0-952fcaa5a193@riseup.net/
[2]: https://lore.kernel.org/igt-dev/20240201-kms_tests-v1-0-bc34c5d28b3f@bootlin.com/T/#t

Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
---
Louis Chauvet (2):
      drm/vkms: Create a type to check a function pointer validity
      drm/vkms: Use a simpler composition function

 drivers/gpu/drm/vkms/vkms_composer.c |  97 ++++++++-----
 drivers/gpu/drm/vkms/vkms_drv.h      |  32 ++++-
 drivers/gpu/drm/vkms/vkms_formats.c  | 254 ++++++++++++++++++-----------------
 drivers/gpu/drm/vkms/vkms_formats.h  |   2 +-
 drivers/gpu/drm/vkms/vkms_plane.c    |  13 +-
 5 files changed, 236 insertions(+), 162 deletions(-)
---
base-commit: 5d189d57bb335a87ec38ea26fe43a5f3ed31ced7
change-id: 20240201-yuv-1337d90d9576

Best regards,
-- 
Louis Chauvet <louis.chauvet@bootlin.com>


             reply	other threads:[~2024-02-01 17:32 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-01 17:31 Louis Chauvet [this message]
2024-02-01 17:31 ` [PATCH 1/2] drm/vkms: Create a type to check a function pointer validity Louis Chauvet
2024-02-02 20:59   ` Arthur Grillo
2024-02-01 17:31 ` [PATCH 2/2] drm/vkms: Use a simpler composition function Louis Chauvet
2024-02-02  8:55   ` Pekka Paalanen
2024-02-02  9:26     ` Miquel Raynal
2024-02-02  9:47       ` Maíra Canal
2024-02-02  9:53       ` Maxime Ripard
2024-02-02 12:13         ` Miquel Raynal
2024-02-02 15:49           ` Pekka Paalanen
2024-02-02 16:07             ` Miquel Raynal
2024-02-02 19:45               ` Pekka Paalanen
2024-02-06 17:57                 ` Arthur Grillo
2024-02-07  8:44                   ` Pekka Paalanen
2024-02-07 16:03                     ` Louis Chauvet
2024-02-07 20:21                       ` Arthur Grillo
2024-02-02 20:02             ` Arthur Grillo
2024-02-05 10:12               ` Pekka Paalanen
2024-02-05 10:19                 ` Pekka Paalanen
2024-02-07 15:49                   ` Louis Chauvet
2024-02-08  9:39                     ` Pekka Paalanen
2024-02-15 17:43                       ` Arthur Grillo
2024-02-02 10:24       ` Pekka Paalanen
2024-02-01 22:07 ` [PATCH 0/2] Better support for complex pixel formats Maira Canal
2024-02-02  8:15   ` Louis Chauvet
2024-02-02  9:40     ` Maíra Canal

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=20240201-yuv-v1-0-3ca376f27632@bootlin.com \
    --to=louis.chauvet@bootlin.com \
    --cc=airlied@gmail.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hamohammed.sa@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mairacanal@riseup.net \
    --cc=marcheu@google.com \
    --cc=melissa.srw@gmail.com \
    --cc=miquel.raynal@bootlin.com \
    --cc=mripard@kernel.org \
    --cc=nicolejadeyee@google.com \
    --cc=rodrigosiqueiramelo@gmail.com \
    --cc=seanpaul@google.com \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=tzimmermann@suse.de \
    /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.