From: Gerd Hoffmann <kraxel@redhat.com>
To: "Michel Dänzer" <michel@daenzer.net>
Cc: Daniel Vetter <daniel.vetter@intel.com>,
amd-gfx@lists.freedesktop.org,
open list <linux-kernel@vger.kernel.org>,
dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 3/6] drm: fourcc byteorder: add bigendian support to drm_mode_legacy_fb_format
Date: Fri, 28 Apr 2017 12:02:38 +0200 [thread overview]
Message-ID: <1493373758.23357.27.camel@redhat.com> (raw)
In-Reply-To: <668bc373-1614-a095-6085-15c040f322b8@daenzer.net>
Hi,
> > So just not using the swapping indeed looks like the only sensible
> > option. Which in turn implies there is no BGRA8888 support for dumb
> > bos. Hmm, I can see the problem. Userspace expectation appears to be
> > that ADDFB configures a native endian framebuffer, which the driver
> > simply can't do on bigendian.
>
> ... with pre-R600 GPUs.
Sure.
> > So, what can/should the driver do here? Throw errors for ADDFB and
> > force userspace to use ADDFB2? From a design point of view the best
> > option, but in the other hand I suspect that could break the xorg radeon
> > driver ...
>
> Yes, it would.
> One thing we could do is provide a way for userspace to query the
> effective format(s) as seen by the GPU and/or CPU.
We already have almost no testing on bigendian. I doubt adding generic
interfaces specifically to handle this case is going to work because
most userspace will simply not implement that correctly (or at all).
Having support for this in the radeon ioctls might work, because only
radeon kernel + xorg driver have to get things right then. But I
suspect we already have that. You've mentioned elsewhere in the thread
that the xorg driver doesn't turn on byteswapping, so the ability to
configure that seems to be somewhere in the API ...
> It might also make sense for the radeon driver to set the
> RADEON_TILING_SWAP_{16,32}BIT flags for dumb BOs.
That could work. But I guess someone with test hardware needs to try,
to make sure we don't miss corner cases here.
cheers,
Gerd
next prev parent reply other threads:[~2017-04-28 10:02 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20170424062532.26722-1-kraxel@redhat.com>
2017-04-24 6:25 ` [PATCH 1/6] drm: fourcc byteorder: drop DRM_FORMAT_BIG_ENDIAN Gerd Hoffmann
2017-04-24 6:25 ` [PATCH 2/6] drm: fourcc byteorder: add DRM_FORMAT_CPU_* Gerd Hoffmann
2017-04-24 6:25 ` [PATCH 3/6] drm: fourcc byteorder: add bigendian support to drm_mode_legacy_fb_format Gerd Hoffmann
2017-04-25 3:18 ` Michel Dänzer
2017-04-25 9:52 ` Ville Syrjälä
2017-04-26 2:00 ` Michel Dänzer
2017-04-26 14:30 ` Ville Syrjälä
2017-04-26 5:53 ` Gerd Hoffmann
2017-04-26 9:21 ` Michel Dänzer
2017-04-26 12:11 ` Gerd Hoffmann
2017-04-27 0:52 ` Michel Dänzer
2017-04-27 6:45 ` Gerd Hoffmann
2017-04-27 7:02 ` Michel Dänzer
2017-04-28 10:02 ` Gerd Hoffmann [this message]
2017-04-26 13:28 ` Eric Engestrom
2017-04-26 13:57 ` Gerd Hoffmann
2017-04-24 6:25 ` [PATCH 4/6] drm: fourcc byteorder: adapt bochs-drm to drm_mode_legacy_fb_format update Gerd Hoffmann
2017-04-24 6:25 ` [PATCH 5/6] drm: fourcc byteorder: adapt virtio " Gerd Hoffmann
2017-04-24 6:25 ` [PATCH 6/6] drm: fourcc byteorder: virtio restrict to XRGB8888 Gerd Hoffmann
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=1493373758.23357.27.camel@redhat.com \
--to=kraxel@redhat.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=daniel.vetter@intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=michel@daenzer.net \
/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