[PATCH] drm: hdlcd: Work properly in big-endian mode

Ilia Mirkin imirkin at alum.mit.edu
Thu Dec 8 00:16:30 UTC 2016


On Wed, Dec 7, 2016 at 11:42 AM, Robin Murphy <robin.murphy at arm.com> wrote:
> By comparison, the same use-cases (fbcon and fb-test) under the same
> big-endian kernel do *not* show the same problem with nouveau driving a
> PCIe 7600GT card, which led me to believe it was HDLCD-specific.

Just to randomly insert info here... NV11+ cards have a "big endian"
mode, where you can do 32-bit mmio from a big-endian cpu, and the card
will auto-swap those. There are similar additional bits that make
operating and accelerating off a big-endian CPU tolerable. Some care
has gone into the kernel to make sure that all that stuff works. (One
of those bits is that data gets byteswapped on upload to VRAM by
virtue of being uploaded by sticking data into a pushbuf, as I
recall.)

  -ilia


More information about the dri-devel mailing list