From: Thomas Zimmermann <tzimmermann@suse.de>
To: sam@ravnborg.org, jose.exposito89@gmail.com, javierm@redhat.com,
maarten.lankhorst@linux.intel.com, mripard@kernel.org,
airlied@linux.ie, daniel@ffwll.ch, noralf@tronnes.org,
drawat.floss@gmail.com, lucas.demarchi@intel.com,
david@lechnology.com, kraxel@redhat.com
Cc: linux-hyperv@vger.kernel.org,
Thomas Zimmermann <tzimmermann@suse.de>,
dri-devel@lists.freedesktop.org,
virtualization@lists.linux-foundation.org
Subject: [PATCH v2 00/14] drm/format-helper: Move to struct iosys_map
Date: Mon, 8 Aug 2022 14:53:52 +0200 [thread overview]
Message-ID: <20220808125406.20752-1-tzimmermann@suse.de> (raw)
Change format-conversion helpers to use struct iosys_map for source
and destination buffers. Update all users. Also prepare interface for
multi-plane color formats.
The format-conversion helpers mostly used to convert to I/O memory
or system memory. To actual memory type depended on the usecase. We
now have drivers upcomming that do the conversion entirely in system
memory. It's a good opportunity to stream-line the interface of the
conversion helpers to use struct iosys_map. Source and destination
buffers can now be either in system or in I/O memory. Note that the
implementation still only supports source buffers in system memory.
This patchset also changes the interface to support multi-plane
color formats, where the values for each component are stored in
distinct memory locations. Converting from RGBRGBRGB to RRRGGGBBB
would require a single source buffer with RGB values and 3 destination
buffers for the R, G and B values. Conversion-helper interfaces now
support this.
v2:
* add IOSYS_MAP_INIT_VADDR_IOMEM (Sam)
* use drm_format_info_bpp() (Sam)
* update documentation (Sam)
* rename 'vmap' to 'src' (Sam)
* many smaller cleanups and fixes (Sam, Jose)
Thomas Zimmermann (14):
iosys-map: Add IOSYS_MAP_INIT_VADDR_IOMEM()
drm/format-helper: Provide drm_fb_blit()
drm/format-helper: Merge drm_fb_memcpy() and drm_fb_memcpy_toio()
drm/format-helper: Convert drm_fb_swab() to struct iosys_map
drm/format-helper: Rework XRGB8888-to-RGBG332 conversion
drm/format-helper: Rework XRGB8888-to-RGBG565 conversion
drm/format-helper: Rework XRGB8888-to-RGB888 conversion
drm/format-helper: Rework RGB565-to-XRGB8888 conversion
drm/format-helper: Rework RGB888-to-XRGB8888 conversion
drm/format-helper: Rework XRGB8888-to-XRGB2101010 conversion
drm/format-helper: Rework XRGB8888-to-GRAY8 conversion
drm/format-helper: Rework XRGB8888-to-MONO conversion
drm/format-helper: Move destination-buffer handling into internal
helper
drm/format-helper: Rename parameter vmap to src
drivers/gpu/drm/drm_format_helper.c | 509 ++++++++++--------
drivers/gpu/drm/drm_mipi_dbi.c | 9 +-
drivers/gpu/drm/gud/gud_pipe.c | 20 +-
drivers/gpu/drm/hyperv/hyperv_drm_modeset.c | 9 +-
drivers/gpu/drm/mgag200/mgag200_mode.c | 9 +-
drivers/gpu/drm/solomon/ssd130x.c | 7 +-
.../gpu/drm/tests/drm_format_helper_test.c | 45 +-
drivers/gpu/drm/tiny/cirrus.c | 19 +-
drivers/gpu/drm/tiny/repaper.c | 6 +-
drivers/gpu/drm/tiny/simpledrm.c | 8 +-
drivers/gpu/drm/tiny/st7586.c | 5 +-
include/drm/drm_format_helper.h | 56 +-
include/linux/iosys-map.h | 15 +-
13 files changed, 416 insertions(+), 301 deletions(-)
base-commit: 2bdae66c9988dd0f07633629c0a85383cfc05940
prerequisite-patch-id: c2b2f08f0eccc9f5df0c0da49fa1d36267deb11d
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: 3f204510fcbf9530d6540bd8e6128cce598988b6
--
2.37.1
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
next reply other threads:[~2022-08-08 12:54 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-08 12:53 Thomas Zimmermann [this message]
2022-08-08 12:53 ` [PATCH v2 01/14] iosys-map: Add IOSYS_MAP_INIT_VADDR_IOMEM() Thomas Zimmermann
2022-08-08 18:37 ` Sam Ravnborg
2022-08-08 12:53 ` [PATCH v2 02/14] drm/format-helper: Provide drm_fb_blit() Thomas Zimmermann
2022-08-08 12:53 ` [PATCH v2 03/14] drm/format-helper: Merge drm_fb_memcpy() and drm_fb_memcpy_toio() Thomas Zimmermann
2022-08-08 18:43 ` Sam Ravnborg
2022-08-08 12:53 ` [PATCH v2 04/14] drm/format-helper: Convert drm_fb_swab() to struct iosys_map Thomas Zimmermann
2022-08-08 18:45 ` Sam Ravnborg
2022-08-08 12:53 ` [PATCH v2 05/14] drm/format-helper: Rework XRGB8888-to-RGBG332 conversion Thomas Zimmermann
2022-08-08 12:53 ` [PATCH v2 06/14] drm/format-helper: Rework XRGB8888-to-RGBG565 conversion Thomas Zimmermann
2022-08-08 12:53 ` [PATCH v2 07/14] drm/format-helper: Rework XRGB8888-to-RGB888 conversion Thomas Zimmermann
2022-08-08 12:54 ` [PATCH v2 08/14] drm/format-helper: Rework RGB565-to-XRGB8888 conversion Thomas Zimmermann
2022-08-08 12:54 ` [PATCH v2 09/14] drm/format-helper: Rework RGB888-to-XRGB8888 conversion Thomas Zimmermann
2022-08-08 12:54 ` [PATCH v2 10/14] drm/format-helper: Rework XRGB8888-to-XRGB2101010 conversion Thomas Zimmermann
2022-08-08 12:54 ` [PATCH v2 11/14] drm/format-helper: Rework XRGB8888-to-GRAY8 conversion Thomas Zimmermann
2022-08-08 12:54 ` [PATCH v2 12/14] drm/format-helper: Rework XRGB8888-to-MONO conversion Thomas Zimmermann
2022-08-08 12:54 ` [PATCH v2 13/14] drm/format-helper: Move destination-buffer handling into internal helper Thomas Zimmermann
2022-08-08 18:48 ` Sam Ravnborg
2022-08-08 12:54 ` [PATCH v2 14/14] drm/format-helper: Rename parameter vmap to src Thomas Zimmermann
2022-08-08 18:49 ` Sam Ravnborg
2022-08-08 18:51 ` [PATCH v2 00/14] drm/format-helper: Move to struct iosys_map Sam Ravnborg
2022-08-08 20:00 ` Noralf Trønnes
2022-08-10 7:07 ` Thomas Zimmermann
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=20220808125406.20752-1-tzimmermann@suse.de \
--to=tzimmermann@suse.de \
--cc=airlied@linux.ie \
--cc=daniel@ffwll.ch \
--cc=david@lechnology.com \
--cc=drawat.floss@gmail.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=javierm@redhat.com \
--cc=jose.exposito89@gmail.com \
--cc=kraxel@redhat.com \
--cc=linux-hyperv@vger.kernel.org \
--cc=lucas.demarchi@intel.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=noralf@tronnes.org \
--cc=sam@ravnborg.org \
--cc=virtualization@lists.linux-foundation.org \
/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).