From: Geert Uytterhoeven <geert@linux-m68k.org> To: Gerd Hoffmann <kraxel@redhat.com> Cc: "Michel Dänzer" <michel.daenzer@mailbox.org>, "Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>, "Maxime Ripard" <mripard@kernel.org>, "Thomas Zimmermann" <tzimmermann@suse.de>, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Noralf Trønnes" <noralf@tronnes.org>, "Linux Fbdev development list" <linux-fbdev@vger.kernel.org>, Linux/m68k <linux-m68k@vger.kernel.org>, "DRI Development" <dri-devel@lists.freedesktop.org>, "Linux Kernel Mailing List" <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 1/3] drm/fourcc: Add missing big-endian XRGB1555 and RGB565 formats Date: Tue, 12 Jul 2022 10:43:17 +0200 [thread overview] Message-ID: <CAMuHMdVhxE9aayG8qRMwUuBryiR_ng08m63_+GY8htFCSmUiWg@mail.gmail.com> (raw) In-Reply-To: <20220712083907.3ic7bltstaskz72n@sirius.home.kraxel.org> Hi Gerd, On Tue, Jul 12, 2022 at 10:39 AM Gerd Hoffmann <kraxel@redhat.com> wrote: > On Tue, Jul 12, 2022 at 10:01:15AM +0200, Geert Uytterhoeven wrote: > > > It IMHO is not applicable to any physical hardware. It's used by > > > virtio-gpu where the supported format depends on the byte order > > > (it is argb8888 in native byte order). Only virtual hardware can > > > have that kind of behavior. > > > > > > And we can probably drop the DRM_FORMAT_HOST_* variants for 1555 and > > > 565, they are not used anywhere. > > > > Atari DRM supports (big-endian) RGB565, so it uses > > DRM_FORMAT_HOST_RGB565. > > Fixed big endian should use 'DRM_FORMAT_RGB565 | DRM_FORMAT_BIG_ENDIAN'. True. > As described above DRM_FORMAT_HOST_RGB565 means bigendian on bigendian > hosts and little endian on little endian hosts. Which is not correct > when your hardware does big endian no matter what. But (a) drm_driver_legacy_fb_format() uses DRM_FORMAT_HOST_RGB565 if quirk_addfb_prefer_host_byte_order is set, and (b) quirk_addfb_prefer_host_byte_order must be set on big-endian as per commit eae06120f1974e1a ("drm: refuse ADDFB2 ioctl for broken bigendian drivers"). Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
WARNING: multiple messages have this Message-ID (diff)
From: Geert Uytterhoeven <geert@linux-m68k.org> To: Gerd Hoffmann <kraxel@redhat.com> Cc: "Linux Fbdev development list" <linux-fbdev@vger.kernel.org>, "Thomas Zimmermann" <tzimmermann@suse.de>, "Michel Dänzer" <michel.daenzer@mailbox.org>, "David Airlie" <airlied@linux.ie>, Linux/m68k <linux-m68k@vger.kernel.org>, "Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>, "Noralf Trønnes" <noralf@tronnes.org>, "DRI Development" <dri-devel@lists.freedesktop.org> Subject: Re: [PATCH 1/3] drm/fourcc: Add missing big-endian XRGB1555 and RGB565 formats Date: Tue, 12 Jul 2022 10:43:17 +0200 [thread overview] Message-ID: <CAMuHMdVhxE9aayG8qRMwUuBryiR_ng08m63_+GY8htFCSmUiWg@mail.gmail.com> (raw) In-Reply-To: <20220712083907.3ic7bltstaskz72n@sirius.home.kraxel.org> Hi Gerd, On Tue, Jul 12, 2022 at 10:39 AM Gerd Hoffmann <kraxel@redhat.com> wrote: > On Tue, Jul 12, 2022 at 10:01:15AM +0200, Geert Uytterhoeven wrote: > > > It IMHO is not applicable to any physical hardware. It's used by > > > virtio-gpu where the supported format depends on the byte order > > > (it is argb8888 in native byte order). Only virtual hardware can > > > have that kind of behavior. > > > > > > And we can probably drop the DRM_FORMAT_HOST_* variants for 1555 and > > > 565, they are not used anywhere. > > > > Atari DRM supports (big-endian) RGB565, so it uses > > DRM_FORMAT_HOST_RGB565. > > Fixed big endian should use 'DRM_FORMAT_RGB565 | DRM_FORMAT_BIG_ENDIAN'. True. > As described above DRM_FORMAT_HOST_RGB565 means bigendian on bigendian > hosts and little endian on little endian hosts. Which is not correct > when your hardware does big endian no matter what. But (a) drm_driver_legacy_fb_format() uses DRM_FORMAT_HOST_RGB565 if quirk_addfb_prefer_host_byte_order is set, and (b) quirk_addfb_prefer_host_byte_order must be set on big-endian as per commit eae06120f1974e1a ("drm: refuse ADDFB2 ioctl for broken bigendian drivers"). Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
next prev parent reply other threads:[~2022-07-12 8:43 UTC|newest] Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-07-08 18:21 [PATCH 0/3] drm: Endianness fixes Geert Uytterhoeven 2022-07-08 18:21 ` Geert Uytterhoeven 2022-07-08 18:21 ` [PATCH 1/3] drm/fourcc: Add missing big-endian XRGB1555 and RGB565 formats Geert Uytterhoeven 2022-07-08 18:21 ` Geert Uytterhoeven 2022-07-11 15:22 ` Michel Dänzer 2022-07-11 15:30 ` Geert Uytterhoeven 2022-07-11 15:30 ` Geert Uytterhoeven 2022-07-11 16:28 ` Michel Dänzer 2022-07-11 16:28 ` Michel Dänzer 2022-07-12 7:47 ` Gerd Hoffmann 2022-07-12 7:47 ` Gerd Hoffmann 2022-07-12 8:01 ` Geert Uytterhoeven 2022-07-12 8:01 ` Geert Uytterhoeven 2022-07-12 8:39 ` Gerd Hoffmann 2022-07-12 8:39 ` Gerd Hoffmann 2022-07-12 8:43 ` Geert Uytterhoeven [this message] 2022-07-12 8:43 ` Geert Uytterhoeven 2022-07-12 9:03 ` Gerd Hoffmann 2022-07-12 9:03 ` Gerd Hoffmann 2022-07-12 9:09 ` Michel Dänzer 2022-07-12 9:09 ` Michel Dänzer 2022-07-12 9:10 ` Geert Uytterhoeven 2022-07-12 9:10 ` Geert Uytterhoeven 2022-07-12 8:31 ` Gerd Hoffmann 2022-07-12 8:31 ` Gerd Hoffmann 2022-07-08 18:21 ` [PATCH 2/3] drm/format-helper: Fix endianness in drm_fb_*_to_*() conversion helpers Geert Uytterhoeven 2022-07-08 18:21 ` Geert Uytterhoeven 2022-07-08 18:21 ` [PATCH 3/3] drm/gud: Fix endianness in gud_xrgb8888_to_color() helper Geert Uytterhoeven 2022-07-08 18:21 ` Geert Uytterhoeven 2022-07-19 14:39 ` Noralf Trønnes 2022-07-19 14:39 ` Noralf Trønnes
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=CAMuHMdVhxE9aayG8qRMwUuBryiR_ng08m63_+GY8htFCSmUiWg@mail.gmail.com \ --to=geert@linux-m68k.org \ --cc=airlied@linux.ie \ --cc=daniel@ffwll.ch \ --cc=dri-devel@lists.freedesktop.org \ --cc=kraxel@redhat.com \ --cc=linux-fbdev@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-m68k@vger.kernel.org \ --cc=maarten.lankhorst@linux.intel.com \ --cc=michel.daenzer@mailbox.org \ --cc=mripard@kernel.org \ --cc=noralf@tronnes.org \ --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: linkBe 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.