From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH v2 2/3] drm/i915: Determine DSI panel orientation from VBT Date: Mon, 22 Oct 2018 17:20:15 +0300 Message-ID: <20181022142015.4026-1-ville.syrjala@linux.intel.com> References: <20181019195948.26811-2-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5318789BFF for ; Mon, 22 Oct 2018 14:20:19 +0000 (UTC) In-Reply-To: <20181019195948.26811-2-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Hans de Goede List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClZC VCBhcHBlYXJzIHRvIGhhdmUgdHdvIChvciBwb3NzaWJseSB0aHJlZSkgd2F5cyB0byBpbmRpY2F0 ZSB0aGUgcGFuZWwKcm90YXRpb24uIFRoZSBmaXJzdCBpcyBpbiB0aGUgTUlQSSBjb25maWcgYmxv Y2ssIGJ1dCB0aGF0IGFwcGFyZW5seQp1c3VhbGx5IChtYXliZSBhbHdheXM/KSBpbmRpY2F0ZXMg MCBkZWdyZWVzIGRlc3BpdGUgdGhlIGFjdHVhbCBwYW5lbApvcmllbnRhdGlvbi4gVGhlIHNlY29u ZCB3YXkgdG8gaW5kaWNhdGUgdGhpcyBpcyBpbiB0aGUgZ2VuZXJhbCBmZWF0dXJlcwpibG9jaywg d2hpY2ggY2FuIGp1c3QgaW5kaWNhdGUgd2hldGhlciAxODAgZGVncmVzcyByb3RhdGlvbiBpcyB1 c2VkLgpUaGUgdGhpcmQgbWlnaHQgYmUgYSBzZXBhcmF0ZSByb3RhdGlvbiBkYXRhIGJsb2NrLCBi dXQgdGhhdCBpcyBub3QKYXQgYWxsIGRvY3VtZW50ZWQgc28gd2hvIGtub3dzIHdoYXQgaXQgbWF5 IGNvbnRhaW4uCgpMZXQncyB0cnkgdGhlIGZpcnN0IHR3by4gV2UgZmlyc3QgdHJ5IHRoZSBEU0kg c3BlY2ljaWMgVkJUCmluZm9ybWF0aW9uLCBhbmQgaXQgaXQgZG9lc24ndCBsb29rIHRydXN0d29y dGh5IChpZS4gaW5kaWNhdGVzCjAgZGVncmVlcykgd2UgZmFsbCBiYWNrIHRvIHRoZSAxODAgZGVn cmVlIHRoaW5nLiBKdXN0IHRvIGF2b2lkIHRvbwptYW55IGNoYW5nZXMgaW4gb25lIGdvIHdlIHNo YWxsIGFsc28ga2VlcCB0aGUgaGFyZHdhcmUgcmVhZG91dCBwYXRoCmZvciBub3cuCgpJZiB0aGlz IHdvcmtzIGZvciBtb3JlIHRoYW4ganVzdCBteSBWTFYgRkZSRCB0aGUgcXVlc3Rpb24gYmVjb21l cwpob3cgbWFueSBvZiB0aGUgcGFuZWwgb3JpZW50YXRpb24gcXVpcmtzIGFyZSBub3cgcmVkdW5k YW50PwoKdjI6IE1vdmUgdGhlIGNvZGUgaW50byBpbnRlbF9kc2kuYyAoSmFuaSkKCkNjOiBIYW5z IGRlIEdvZWRlIDxoZGVnb2VkZUByZWRoYXQuY29tPgpSZXZpZXdlZC1ieTogSmFuaSBOaWt1bGEg PGphbmkubmlrdWxhQGludGVsLmNvbT4gI3YxClNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzD pCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3Mu YyB8IDMxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2RzaS5jICB8IDE3ICsrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kc2kuaCAgfCAgMiArKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvdmx2X2RzaS5j ICAgIHwgIDIgKy0KIDUgZmlsZXMgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDMwMTdlZjAzN2ZlZC4uMTE1ZDU5NjNl NWE2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTExMDIsNiArMTEwMiw3IEBAIHN0cnVj dCBpbnRlbF92YnRfZGF0YSB7CiAJdW5zaWduZWQgaW50IHBhbmVsX3R5cGU6NDsKIAlpbnQgbHZk c19zc2NfZnJlcTsKIAl1bnNpZ25lZCBpbnQgYmlvc19sdmRzX3ZhbDsgLyogaW5pdGlhbCBbUENI X11MVkRTIHJlZyB2YWwgaW4gVkJJT1MgKi8KKwllbnVtIGRybV9wYW5lbF9vcmllbnRhdGlvbiBv cmllbnRhdGlvbjsKIAogCWVudW0gZHJyc19zdXBwb3J0X3R5cGUgZHJyc190eXBlOwogCkBAIC0x MTQ3LDYgKzExNDgsNyBAQCBzdHJ1Y3QgaW50ZWxfdmJ0X2RhdGEgewogCQl1OCAqZGF0YTsKIAkJ Y29uc3QgdTggKnNlcXVlbmNlW01JUElfU0VRX01BWF07CiAJCXU4ICpkZWFzc2VydF9zZXE7IC8q IFVzZWQgYnkgZml4dXBfbWlwaV9zZXF1ZW5jZXMoKSAqLworCQllbnVtIGRybV9wYW5lbF9vcmll bnRhdGlvbiBvcmllbnRhdGlvbjsKIAl9IGRzaTsKIAogCWludCBjcnRfZGRjX3BpbjsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Jpb3MuYwppbmRleCAxZmFhNDk0ZTJiYzkuLmE0YmZkOTIyMTJkZiAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYwpAQCAtNDIwLDYgKzQyMCwxMyBAQCBwYXJzZV9nZW5l cmFsX2ZlYXR1cmVzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJaW50ZWxf Ymlvc19zc2NfZnJlcXVlbmN5KGRldl9wcml2LCBnZW5lcmFsLT5zc2NfZnJlcSk7CiAJZGV2X3By aXYtPnZidC5kaXNwbGF5X2Nsb2NrX21vZGUgPSBnZW5lcmFsLT5kaXNwbGF5X2Nsb2NrX21vZGU7 CiAJZGV2X3ByaXYtPnZidC5mZGlfcnhfcG9sYXJpdHlfaW52ZXJ0ZWQgPSBnZW5lcmFsLT5mZGlf cnhfcG9sYXJpdHlfaW52ZXJ0ZWQ7CisJaWYgKGJkYi0+dmVyc2lvbiA+PSAxODEpIHsKKwkJZGV2 X3ByaXYtPnZidC5vcmllbnRhdGlvbiA9IGdlbmVyYWwtPnJvdGF0ZV8xODAgPworCQkJRFJNX01P REVfUEFORUxfT1JJRU5UQVRJT05fQk9UVE9NX1VQIDoKKwkJCURSTV9NT0RFX1BBTkVMX09SSUVO VEFUSU9OX05PUk1BTDsKKwl9IGVsc2UgeworCQlkZXZfcHJpdi0+dmJ0Lm9yaWVudGF0aW9uID0g RFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fVU5LTk9XTjsKKwl9CiAJRFJNX0RFQlVHX0tNUygi QkRCX0dFTkVSQUxfRkVBVFVSRVMgaW50X3R2X3N1cHBvcnQgJWQgaW50X2NydF9zdXBwb3J0ICVk IGx2ZHNfdXNlX3NzYyAlZCBsdmRzX3NzY19mcmVxICVkIGRpc3BsYXlfY2xvY2tfbW9kZSAlZCBm ZGlfcnhfcG9sYXJpdHlfaW52ZXJ0ZWQgJWRcbiIsCiAJCSAgICAgIGRldl9wcml2LT52YnQuaW50 X3R2X3N1cHBvcnQsCiAJCSAgICAgIGRldl9wcml2LT52YnQuaW50X2NydF9zdXBwb3J0LApAQCAt ODUyLDYgKzg1OSwzMCBAQCBwYXJzZV9taXBpX2NvbmZpZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCiAKIAlwYXJzZV9kc2lfYmFja2xpZ2h0X3BvcnRzKGRldl9wcml2LCBiZGIt PnZlcnNpb24sIHBvcnQpOwogCisJLyogRklYTUUgaXMgdGhlIDkwIHZzLiAyNzAgY29ycmVjdD8g Ki8KKwlzd2l0Y2ggKGNvbmZpZy0+cm90YXRpb24pIHsKKwljYXNlIEVOQUJMRV9ST1RBVElPTl8w OgorCQkvKgorCQkgKiBNb3N0IChhbGw/KSBWQlRzIGNsYWltIDAgZGVncmVlcyBkZXNwaXRlIGhh dmluZworCQkgKiBhbiB1cHNpZGUgZG93biBwYW5lbCwgdGh1cyB3ZSBkbyBub3QgdHJ1c3QgdGhp cy4KKwkJICovCisJCWRldl9wcml2LT52YnQuZHNpLm9yaWVudGF0aW9uID0KKwkJCURSTV9NT0RF X1BBTkVMX09SSUVOVEFUSU9OX1VOS05PV047CisJCWJyZWFrOworCWNhc2UgRU5BQkxFX1JPVEFU SU9OXzkwOgorCQlkZXZfcHJpdi0+dmJ0LmRzaS5vcmllbnRhdGlvbiA9CisJCQlEUk1fTU9ERV9Q QU5FTF9PUklFTlRBVElPTl9SSUdIVF9VUDsKKwkJYnJlYWs7CisJY2FzZSBFTkFCTEVfUk9UQVRJ T05fMTgwOgorCQlkZXZfcHJpdi0+dmJ0LmRzaS5vcmllbnRhdGlvbiA9CisJCQlEUk1fTU9ERV9Q QU5FTF9PUklFTlRBVElPTl9CT1RUT01fVVA7CisJCWJyZWFrOworCWNhc2UgRU5BQkxFX1JPVEFU SU9OXzI3MDoKKwkJZGV2X3ByaXYtPnZidC5kc2kub3JpZW50YXRpb24gPQorCQkJRFJNX01PREVf UEFORUxfT1JJRU5UQVRJT05fTEVGVF9VUDsKKwkJYnJlYWs7CisJfQorCiAJLyogV2UgaGF2ZSBt YW5kYXRvcnkgbWlwaSBjb25maWcgYmxvY2tzLiBJbml0aWFsaXplIGFzIGdlbmVyaWMgcGFuZWwg Ki8KIAlkZXZfcHJpdi0+dmJ0LmRzaS5wYW5lbF9pZCA9IE1JUElfRFNJX0dFTkVSSUNfUEFORUxf SUQ7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5jCmluZGV4IGEzMmNjMWY0YjM4NC4uY2NiYmVi ZjExOGMxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuYwpAQCAtMjgsMyArMjgsMjAgQEAgaW50 IGludGVsX2RzaV90bHB4X25zKGNvbnN0IHN0cnVjdCBpbnRlbF9kc2kgKmludGVsX2RzaSkKIAkJ cmV0dXJuIDIwMDsKIAl9CiB9CisKK2VudW0gZHJtX3BhbmVsX29yaWVudGF0aW9uCitpbnRlbF9k c2lfZ2V0X3BhbmVsX29yaWVudGF0aW9uKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rv cikKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5l Y3Rvci0+YmFzZS5kZXYpOworCWVudW0gZHJtX3BhbmVsX29yaWVudGF0aW9uIG9yaWVudGF0aW9u OworCisJb3JpZW50YXRpb24gPSBkZXZfcHJpdi0+dmJ0LmRzaS5vcmllbnRhdGlvbjsKKwlpZiAo b3JpZW50YXRpb24gIT0gRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fVU5LTk9XTikKKwkJcmV0 dXJuIG9yaWVudGF0aW9uOworCisJb3JpZW50YXRpb24gPSBkZXZfcHJpdi0+dmJ0Lm9yaWVudGF0 aW9uOworCWlmIChvcmllbnRhdGlvbiAhPSBEUk1fTU9ERV9QQU5FTF9PUklFTlRBVElPTl9VTktO T1dOKQorCQlyZXR1cm4gb3JpZW50YXRpb247CisKKwlyZXR1cm4gRFJNX01PREVfUEFORUxfT1JJ RU5UQVRJT05fTk9STUFMOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHNpLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuaAppbmRleCAxNDU2Nzky OWRlOWEuLjNmMWJmODg0ZmY3NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHNpLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmgKQEAgLTE0OCw2 ICsxNDgsOCBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNfY21kX21vZGUoc3RydWN0IGludGVsX2Rz aSAqaW50ZWxfZHNpKQogLyogaW50ZWxfZHNpLmMgKi8KIGludCBpbnRlbF9kc2lfYml0cmF0ZShj b25zdCBzdHJ1Y3QgaW50ZWxfZHNpICppbnRlbF9kc2kpOwogaW50IGludGVsX2RzaV90bHB4X25z KGNvbnN0IHN0cnVjdCBpbnRlbF9kc2kgKmludGVsX2RzaSk7CitlbnVtIGRybV9wYW5lbF9vcmll bnRhdGlvbgoraW50ZWxfZHNpX2dldF9wYW5lbF9vcmllbnRhdGlvbihzdHJ1Y3QgaW50ZWxfY29u bmVjdG9yICpjb25uZWN0b3IpOwogCiAvKiB2bHZfZHNpLmMgKi8KIHZvaWQgdmx2X2RzaV93YWl0 X2Zvcl9maWZvX2VtcHR5KHN0cnVjdCBpbnRlbF9kc2kgKmludGVsX2RzaSwgZW51bSBwb3J0IHBv cnQpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvdmx2X2RzaS5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvdmx2X2RzaS5jCmluZGV4IGRjYzU5ZjY1M2U1Yi4uOTlhYTdhYmQxNWE4 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvdmx2X2RzaS5jCkBAIC0xNjk1LDcgKzE2OTUsNyBAQCB2bHZfZHNpX2dl dF9wYW5lbF9vcmllbnRhdGlvbihzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiAJ CQlyZXR1cm4gb3JpZW50YXRpb247CiAJfQogCi0JcmV0dXJuIERSTV9NT0RFX1BBTkVMX09SSUVO VEFUSU9OX05PUk1BTDsKKwlyZXR1cm4gaW50ZWxfZHNpX2dldF9wYW5lbF9vcmllbnRhdGlvbihj b25uZWN0b3IpOwogfQogCiBzdGF0aWMgdm9pZCBpbnRlbF9kc2lfYWRkX3Byb3BlcnRpZXMoc3Ry dWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQotLSAKMi4xOC4xCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK