From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1043790AbdDVJvH (ORCPT ); Sat, 22 Apr 2017 05:51:07 -0400 Received: from mga06.intel.com ([134.134.136.31]:19411 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1042399AbdDVJvE (ORCPT ); Sat, 22 Apr 2017 05:51:04 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.37,233,1488873600"; d="scan'208";a="1159579229" Date: Sat, 22 Apr 2017 12:50:56 +0300 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Ilia Mirkin Cc: Gerd Hoffmann , "dri-devel@lists.freedesktop.org" , Daniel Vetter , Pekka Paalanen , Michel =?iso-8859-1?Q?D=E4nzer?= , Alex Deucher , amd-gfx@lists.freedesktop.org, Jani Nikula , Sean Paul , David Airlie , open list Subject: Re: [PATCH] drm: fourcc byteorder: brings header file comments in line with reality. Message-ID: <20170422095056.GR30290@intel.com> References: <20170421075825.6307-1-kraxel@redhat.com> <20170421165907.GQ30290@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Apr 22, 2017 at 01:07:57AM -0400, Ilia Mirkin wrote: > On Fri, Apr 21, 2017 at 12:59 PM, Ville Syrjälä > wrote: > > On Fri, Apr 21, 2017 at 10:49:49AM -0400, Ilia Mirkin wrote: > >> On Fri, Apr 21, 2017 at 3:58 AM, Gerd Hoffmann wrote: > >> > While working on graphics support for virtual machines on ppc64 (which > >> > exists in both little and big endian variants) I've figured the comments > >> > for various drm fourcc formats in the header file don't match reality. > >> > > >> > Comments says the RGB formats are little endian, but in practice they > >> > are native endian. Look at the drm_mode_legacy_fb_format() helper. It > >> > maps -- for example -- bpp/depth 32/24 to DRM_FORMAT_XRGB8888, no matter > >> > whenever the machine is little endian or big endian. The users of this > >> > function (fbdev emulation, DRM_IOCTL_MODE_ADDFB) expect the framebuffer > >> > is native endian, not little endian. Most userspace also operates on > >> > native endian only. > >> > > >> > So, go update the comments for all 16+24+32 bpp RGB formats. > >> > > >> > Leaving the yuv formats as-is. I have no idea if and how those are used > >> > on bigendian machines. > >> > >> I think this is premature. The current situation is that I can't get > >> modetest to work *at all* on my NV34 / BE setup (I mean, it runs, just > >> the colors displayed are wrong). I believe that currently it packs > >> things in "cpu native endian". I've tried futzing with that without > >> much success, although I didn't spend too much time on it. I have a > >> NV34 plugged into my LE setup as well although I haven't tested to > >> double-check that it all works there. However I'm quite sure it used > >> to, as I used modetest to help develop the YUV overlay support for > >> those GPUs. > > > > I just took a quick stab at fixing modetest to respect the current > > wording in drm_fourcc.h: > > > > git://github.com/vsyrjala/libdrm.git modetest_endian > > Looks like there was some careless testing on my part :( So ... it > looks like the current modetest without those changes does, in fact, > work on NV34/BE. With the changes, it breaks (and the handling of the > b* modes is a little broken in those patches -- they're not selectable > from the cmdline.) Which means that, as Michel & co predicted, it > appears to be taking BE input not LE input. This is very surprising to > me, but it is what it is. As I mentioned before, the details of how > the "BE" mode works on the GPUs is largely unknown to us beyond a few > basics. Note that only XR24 works, AR24 ends up with all black > displayed. This also happens on LE. Did you try 8bpp or 16bpp formats? I expect that if you've just blindly enabled some magic byte swapper in the hardware it will only for a specific pixel size. -- Ville Syrjälä Intel OTC From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH] drm: fourcc byteorder: brings header file comments in line with reality. Date: Sat, 22 Apr 2017 12:50:56 +0300 Message-ID: <20170422095056.GR30290@intel.com> References: <20170421075825.6307-1-kraxel@redhat.com> <20170421165907.GQ30290@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Ilia Mirkin Cc: amd-gfx@lists.freedesktop.org, Michel =?iso-8859-1?Q?D=E4nzer?= , open list , "dri-devel@lists.freedesktop.org" , Gerd Hoffmann , Daniel Vetter List-Id: dri-devel@lists.freedesktop.org T24gU2F0LCBBcHIgMjIsIDIwMTcgYXQgMDE6MDc6NTdBTSAtMDQwMCwgSWxpYSBNaXJraW4gd3Jv dGU6Cj4gT24gRnJpLCBBcHIgMjEsIDIwMTcgYXQgMTI6NTkgUE0sIFZpbGxlIFN5cmrDpGzDpAo+ IDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4gd3JvdGU6Cj4gPiBPbiBGcmksIEFwciAy MSwgMjAxNyBhdCAxMDo0OTo0OUFNIC0wNDAwLCBJbGlhIE1pcmtpbiB3cm90ZToKPiA+PiBPbiBG cmksIEFwciAyMSwgMjAxNyBhdCAzOjU4IEFNLCBHZXJkIEhvZmZtYW5uIDxrcmF4ZWxAcmVkaGF0 LmNvbT4gd3JvdGU6Cj4gPj4gPiBXaGlsZSB3b3JraW5nIG9uIGdyYXBoaWNzIHN1cHBvcnQgZm9y IHZpcnR1YWwgbWFjaGluZXMgb24gcHBjNjQgKHdoaWNoCj4gPj4gPiBleGlzdHMgaW4gYm90aCBs aXR0bGUgYW5kIGJpZyBlbmRpYW4gdmFyaWFudHMpIEkndmUgZmlndXJlZCB0aGUgY29tbWVudHMK PiA+PiA+IGZvciB2YXJpb3VzIGRybSBmb3VyY2MgZm9ybWF0cyBpbiB0aGUgaGVhZGVyIGZpbGUg ZG9uJ3QgbWF0Y2ggcmVhbGl0eS4KPiA+PiA+Cj4gPj4gPiBDb21tZW50cyBzYXlzIHRoZSBSR0Ig Zm9ybWF0cyBhcmUgbGl0dGxlIGVuZGlhbiwgYnV0IGluIHByYWN0aWNlIHRoZXkKPiA+PiA+IGFy ZSBuYXRpdmUgZW5kaWFuLiAgTG9vayBhdCB0aGUgZHJtX21vZGVfbGVnYWN5X2ZiX2Zvcm1hdCgp IGhlbHBlci4gIEl0Cj4gPj4gPiBtYXBzIC0tIGZvciBleGFtcGxlIC0tIGJwcC9kZXB0aCAzMi8y NCB0byBEUk1fRk9STUFUX1hSR0I4ODg4LCBubyBtYXR0ZXIKPiA+PiA+IHdoZW5ldmVyIHRoZSBt YWNoaW5lIGlzIGxpdHRsZSBlbmRpYW4gb3IgYmlnIGVuZGlhbi4gIFRoZSB1c2VycyBvZiB0aGlz Cj4gPj4gPiBmdW5jdGlvbiAoZmJkZXYgZW11bGF0aW9uLCBEUk1fSU9DVExfTU9ERV9BRERGQikg ZXhwZWN0IHRoZSBmcmFtZWJ1ZmZlcgo+ID4+ID4gaXMgbmF0aXZlIGVuZGlhbiwgbm90IGxpdHRs ZSBlbmRpYW4uICBNb3N0IHVzZXJzcGFjZSBhbHNvIG9wZXJhdGVzIG9uCj4gPj4gPiBuYXRpdmUg ZW5kaWFuIG9ubHkuCj4gPj4gPgo+ID4+ID4gU28sIGdvIHVwZGF0ZSB0aGUgY29tbWVudHMgZm9y IGFsbCAxNisyNCszMiBicHAgUkdCIGZvcm1hdHMuCj4gPj4gPgo+ID4+ID4gTGVhdmluZyB0aGUg eXV2IGZvcm1hdHMgYXMtaXMuICBJIGhhdmUgbm8gaWRlYSBpZiBhbmQgaG93IHRob3NlIGFyZSB1 c2VkCj4gPj4gPiBvbiBiaWdlbmRpYW4gbWFjaGluZXMuCj4gPj4KPiA+PiBJIHRoaW5rIHRoaXMg aXMgcHJlbWF0dXJlLiBUaGUgY3VycmVudCBzaXR1YXRpb24gaXMgdGhhdCBJIGNhbid0IGdldAo+ ID4+IG1vZGV0ZXN0IHRvIHdvcmsgKmF0IGFsbCogb24gbXkgTlYzNCAvIEJFIHNldHVwIChJIG1l YW4sIGl0IHJ1bnMsIGp1c3QKPiA+PiB0aGUgY29sb3JzIGRpc3BsYXllZCBhcmUgd3JvbmcpLiBJ IGJlbGlldmUgdGhhdCBjdXJyZW50bHkgaXQgcGFja3MKPiA+PiB0aGluZ3MgaW4gImNwdSBuYXRp dmUgZW5kaWFuIi4gSSd2ZSB0cmllZCBmdXR6aW5nIHdpdGggdGhhdCB3aXRob3V0Cj4gPj4gbXVj aCBzdWNjZXNzLCBhbHRob3VnaCBJIGRpZG4ndCBzcGVuZCB0b28gbXVjaCB0aW1lIG9uIGl0LiBJ IGhhdmUgYQo+ID4+IE5WMzQgcGx1Z2dlZCBpbnRvIG15IExFIHNldHVwIGFzIHdlbGwgYWx0aG91 Z2ggSSBoYXZlbid0IHRlc3RlZCB0bwo+ID4+IGRvdWJsZS1jaGVjayB0aGF0IGl0IGFsbCB3b3Jr cyB0aGVyZS4gSG93ZXZlciBJJ20gcXVpdGUgc3VyZSBpdCB1c2VkCj4gPj4gdG8sIGFzIEkgdXNl ZCBtb2RldGVzdCB0byBoZWxwIGRldmVsb3AgdGhlIFlVViBvdmVybGF5IHN1cHBvcnQgZm9yCj4g Pj4gdGhvc2UgR1BVcy4KPiA+Cj4gPiBJIGp1c3QgdG9vayBhIHF1aWNrIHN0YWIgYXQgZml4aW5n IG1vZGV0ZXN0IHRvIHJlc3BlY3QgdGhlIGN1cnJlbnQKPiA+IHdvcmRpbmcgaW4gZHJtX2ZvdXJj Yy5oOgo+ID4KPiA+IGdpdDovL2dpdGh1Yi5jb20vdnN5cmphbGEvbGliZHJtLmdpdCBtb2RldGVz dF9lbmRpYW4KPiAKPiBMb29rcyBsaWtlIHRoZXJlIHdhcyBzb21lIGNhcmVsZXNzIHRlc3Rpbmcg b24gbXkgcGFydCA6KCBTbyAuLi4gaXQKPiBsb29rcyBsaWtlIHRoZSBjdXJyZW50IG1vZGV0ZXN0 IHdpdGhvdXQgdGhvc2UgY2hhbmdlcyBkb2VzLCBpbiBmYWN0LAo+IHdvcmsgb24gTlYzNC9CRS4g V2l0aCB0aGUgY2hhbmdlcywgaXQgYnJlYWtzIChhbmQgdGhlIGhhbmRsaW5nIG9mIHRoZQo+IGIq IG1vZGVzIGlzIGEgbGl0dGxlIGJyb2tlbiBpbiB0aG9zZSBwYXRjaGVzIC0tIHRoZXkncmUgbm90 IHNlbGVjdGFibGUKPiBmcm9tIHRoZSBjbWRsaW5lLikgV2hpY2ggbWVhbnMgdGhhdCwgYXMgTWlj aGVsICYgY28gcHJlZGljdGVkLCBpdAo+IGFwcGVhcnMgdG8gYmUgdGFraW5nIEJFIGlucHV0IG5v dCBMRSBpbnB1dC4gVGhpcyBpcyB2ZXJ5IHN1cnByaXNpbmcgdG8KPiBtZSwgYnV0IGl0IGlzIHdo YXQgaXQgaXMuIEFzIEkgbWVudGlvbmVkIGJlZm9yZSwgdGhlIGRldGFpbHMgb2YgaG93Cj4gdGhl ICJCRSIgbW9kZSB3b3JrcyBvbiB0aGUgR1BVcyBpcyBsYXJnZWx5IHVua25vd24gdG8gdXMgYmV5 b25kIGEgZmV3Cj4gYmFzaWNzLiBOb3RlIHRoYXQgb25seSBYUjI0IHdvcmtzLCBBUjI0IGVuZHMg dXAgd2l0aCBhbGwgYmxhY2sKPiBkaXNwbGF5ZWQuIFRoaXMgYWxzbyBoYXBwZW5zIG9uIExFLgoK RGlkIHlvdSB0cnkgOGJwcCBvciAxNmJwcCBmb3JtYXRzPyBJIGV4cGVjdCB0aGF0IGlmIHlvdSd2 ZSBqdXN0IGJsaW5kbHkKZW5hYmxlZCBzb21lIG1hZ2ljIGJ5dGUgc3dhcHBlciBpbiB0aGUgaGFy ZHdhcmUgaXQgd2lsbCBvbmx5IGZvcgphIHNwZWNpZmljIHBpeGVsIHNpemUuCgotLSAKVmlsbGUg U3lyasOkbMOkCkludGVsIE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK