From mboxrd@z Thu Jan 1 00:00:00 1970 From: Derek Basehore Subject: [PATCH 4/5] drm/connector: Split out orientation quirk detection Date: Mon, 10 Jun 2019 21:03:49 -0700 Message-ID: <20190611040350.90064-5-dbasehore@chromium.org> References: <20190611040350.90064-1-dbasehore@chromium.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190611040350.90064-1-dbasehore@chromium.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: linux-kernel@vger.kernel.org Cc: Mark Rutland , devicetree@vger.kernel.org, Derek Basehore , Philipp Zabel , David Airlie , intel-gfx@lists.freedesktop.org, Maxime Ripard , Rob Herring , dri-devel@lists.freedesktop.org, CK Hu , linux-mediatek@lists.infradead.org, Sam Ravnborg , linux-arm-kernel@lists.infradead.org, Matthias Brugger List-Id: devicetree@vger.kernel.org VGhpcyByZW1vdmVzIHRoZSBvcmllbnRhdGlvbiBxdWlyayBkZXRlY3Rpb24gZnJvbSB0aGUgY29k ZSB0byBhZGQKYW4gb3JpZW50YXRpb24gcHJvcGVydHkgdG8gYSBwYW5lbC4gVGhpcyBpcyB1c2Vk IG9ubHkgZm9yIGxlZ2FjeSB4ODYKc3lzdGVtcywgeWV0IHdlJ2QgbGlrZSB0byBzdGFydCB1c2lu ZyB0aGlzIG9uIGRldmljZXRyZWUgc3lzdGVtcyB3aGVyZQpxdWlyayBkZXRlY3Rpb24gbGlrZSB0 aGlzIGlzIG5vdCBuZWVkZWQuCgpTaWduZWQtb2ZmLWJ5OiBEZXJlayBCYXNlaG9yZSA8ZGJhc2Vo b3JlQGNocm9taXVtLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jIHwg MTYgKysrKy0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyB8IDE0 ICsrKysrKysrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMgIHwgMTQgKysr KysrKysrKy0tLS0KIGluY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCAgICAgfCAgMiArLQogNCBm aWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9jb25uZWN0b3IuYwppbmRleCBlMTc1ODZhYWE4MGYuLjU4YTA5YjY1MDI4YiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX2Nvbm5lY3Rvci5jCkBAIC0xODk0LDMxICsxODk0LDIzIEBAIEVYUE9SVF9TWU1CT0woZHJt X2Nvbm5lY3Rvcl9zZXRfdnJyX2NhcGFibGVfcHJvcGVydHkpOwogICogZHJtX2Nvbm5lY3Rvcl9p bml0X3BhbmVsX29yaWVudGF0aW9uX3Byb3BlcnR5IC0KICAqCWluaXRpYWxpemUgdGhlIGNvbm5l Y3RlcnMgcGFuZWxfb3JpZW50YXRpb24gcHJvcGVydHkKICAqIEBjb25uZWN0b3I6IGNvbm5lY3Rv ciBmb3Igd2hpY2ggdG8gaW5pdCB0aGUgcGFuZWwtb3JpZW50YXRpb24gcHJvcGVydHkuCi0gKiBA d2lkdGg6IHdpZHRoIGluIHBpeGVscyBvZiB0aGUgcGFuZWwsIHVzZWQgZm9yIHBhbmVsIHF1aXJr IGRldGVjdGlvbgotICogQGhlaWdodDogaGVpZ2h0IGluIHBpeGVscyBvZiB0aGUgcGFuZWwsIHVz ZWQgZm9yIHBhbmVsIHF1aXJrIGRldGVjdGlvbgogICoKICAqIFRoaXMgZnVuY3Rpb24gc2hvdWxk IG9ubHkgYmUgY2FsbGVkIGZvciBidWlsdC1pbiBwYW5lbHMsIGFmdGVyIHNldHRpbmcKICAqIGNv bm5lY3Rvci0+ZGlzcGxheV9pbmZvLnBhbmVsX29yaWVudGF0aW9uIGZpcnN0IChpZiBrbm93biku CiAgKgotICogVGhpcyBmdW5jdGlvbiB3aWxsIGNoZWNrIGZvciBwbGF0Zm9ybSBzcGVjaWZpYyAo ZS5nLiBETUkgYmFzZWQpIHF1aXJrcwotICogb3ZlcnJpZGluZyBkaXNwbGF5X2luZm8ucGFuZWxf b3JpZW50YXRpb24gZmlyc3QsIHRoZW4gaWYgcGFuZWxfb3JpZW50YXRpb24KLSAqIGlzIG5vdCBE Uk1fTU9ERV9QQU5FTF9PUklFTlRBVElPTl9VTktOT1dOIGl0IHdpbGwgYXR0YWNoIHRoZQotICog InBhbmVsIG9yaWVudGF0aW9uIiBwcm9wZXJ0eSB0byB0aGUgY29ubmVjdG9yLgorICogVGhpcyBm dW5jdGlvbiB3aWxsIGNoZWNrIGlmIHRoZSBwYW5lbF9vcmllbnRhdGlvbiBpcyBub3QKKyAqIERS TV9NT0RFX1BBTkVMX09SSUVOVEFUSU9OX1VOS05PV04uIElmIG5vdCwgaXQgd2lsbCBhdHRhY2gg dGhlICJwYW5lbAorICogb3JpZW50YXRpb24iIHByb3BlcnR5IHRvIHRoZSBjb25uZWN0b3IuCiAg KgogICogUmV0dXJuczoKICAqIFplcm8gb24gc3VjY2VzcywgbmVnYXRpdmUgZXJybm8gb24gZmFp bHVyZS4KICAqLwogaW50IGRybV9jb25uZWN0b3JfaW5pdF9wYW5lbF9vcmllbnRhdGlvbl9wcm9w ZXJ0eSgKLQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBpbnQgd2lkdGgsIGludCBo ZWlnaHQpCisJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKIAlzdHJ1Y3QgZHJt X2RldmljZSAqZGV2ID0gY29ubmVjdG9yLT5kZXY7CiAJc3RydWN0IGRybV9kaXNwbGF5X2luZm8g KmluZm8gPSAmY29ubmVjdG9yLT5kaXNwbGF5X2luZm87CiAJc3RydWN0IGRybV9wcm9wZXJ0eSAq cHJvcDsKLQlpbnQgb3JpZW50YXRpb25fcXVpcms7Ci0KLQlvcmllbnRhdGlvbl9xdWlyayA9IGRy bV9nZXRfcGFuZWxfb3JpZW50YXRpb25fcXVpcmsod2lkdGgsIGhlaWdodCk7Ci0JaWYgKG9yaWVu dGF0aW9uX3F1aXJrICE9IERSTV9NT0RFX1BBTkVMX09SSUVOVEFUSU9OX1VOS05PV04pCi0JCWlu Zm8tPnBhbmVsX29yaWVudGF0aW9uID0gb3JpZW50YXRpb25fcXVpcms7CiAKIAlpZiAoaW5mby0+ cGFuZWxfb3JpZW50YXRpb24gPT0gRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fVU5LTk9XTikK IAkJcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwppbmRleCBiMDk5YTlkYzI4ZmQuLjcy YWIwOTBlYTk3YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCkBAIC00MCw2ICs0MCw3IEBACiAj aW5jbHVkZSA8ZHJtL2RybV9lZGlkLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9oZGNwLmg+CiAjaW5j bHVkZSA8ZHJtL2RybV9wcm9iZV9oZWxwZXIuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX3V0aWxzLmg+ CiAjaW5jbHVkZSA8ZHJtL2k5MTVfZHJtLmg+CiAKICNpbmNsdWRlICJpOTE1X2RlYnVnZnMuaCIK QEAgLTcyODEsOSArNzI4MiwxNiBAQCBzdGF0aWMgYm9vbCBpbnRlbF9lZHBfaW5pdF9jb25uZWN0 b3Ioc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwKIAlpbnRlbF9jb25uZWN0b3ItPnBhbmVsLmJh Y2tsaWdodC5wb3dlciA9IGludGVsX2VkcF9iYWNrbGlnaHRfcG93ZXI7CiAJaW50ZWxfcGFuZWxf c2V0dXBfYmFja2xpZ2h0KGNvbm5lY3RvciwgcGlwZSk7CiAKLQlpZiAoZml4ZWRfbW9kZSkKLQkJ ZHJtX2Nvbm5lY3Rvcl9pbml0X3BhbmVsX29yaWVudGF0aW9uX3Byb3BlcnR5KAotCQkJY29ubmVj dG9yLCBmaXhlZF9tb2RlLT5oZGlzcGxheSwgZml4ZWRfbW9kZS0+dmRpc3BsYXkpOworCWlmIChm aXhlZF9tb2RlKSB7CisJCWludCBvcmllbnRhdGlvbiA9IGRybV9nZXRfcGFuZWxfb3JpZW50YXRp b25fcXVpcmsoCisJCQkJZml4ZWRfbW9kZS0+aGRpc3BsYXksIGZpeGVkX21vZGUtPnZkaXNwbGF5 KTsKKworCQlpZiAob3JpZW50YXRpb24gIT0gRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fVU5L Tk9XTikKKwkJCWNvbm5lY3Rvci0+ZGlzcGxheV9pbmZvLnBhbmVsX29yaWVudGF0aW9uID0KKwkJ CQlvcmllbnRhdGlvbjsKKworCQlkcm1fY29ubmVjdG9yX2luaXRfcGFuZWxfb3JpZW50YXRpb25f cHJvcGVydHkoY29ubmVjdG9yKTsKKwl9CiAKIAlyZXR1cm4gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvdmx2X2RzaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvdmx2 X2RzaS5jCmluZGV4IGJmZTI4OTFlYWMzNy4uMjdmODZhNzg3ZjYwIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvdmx2 X2RzaS5jCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSA8ZHJtL2RybV9jcnRjLmg+CiAjaW5j bHVkZSA8ZHJtL2RybV9lZGlkLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9taXBpX2RzaS5oPgorI2lu Y2x1ZGUgPGRybS9kcm1fdXRpbHMuaD4KIAogI2luY2x1ZGUgImk5MTVfZHJ2LmgiCiAjaW5jbHVk ZSAiaW50ZWxfYXRvbWljLmgiCkBAIC0xNjUwLDYgKzE2NTEsNyBAQCBzdGF0aWMgdm9pZCBpbnRl bF9kc2lfYWRkX3Byb3BlcnRpZXMoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQog CiAJaWYgKGNvbm5lY3Rvci0+cGFuZWwuZml4ZWRfbW9kZSkgewogCQl1MzIgYWxsb3dlZF9zY2Fs ZXJzOworCQlpbnQgb3JpZW50YXRpb247CiAKIAkJYWxsb3dlZF9zY2FsZXJzID0gQklUKERSTV9N T0RFX1NDQUxFX0FTUEVDVCkgfCBCSVQoRFJNX01PREVfU0NBTEVfRlVMTFNDUkVFTik7CiAJCWlm ICghSEFTX0dNQ0goZGV2X3ByaXYpKQpAQCAtMTY2MCwxMiArMTY2MiwxNiBAQCBzdGF0aWMgdm9p ZCBpbnRlbF9kc2lfYWRkX3Byb3BlcnRpZXMoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVj dG9yKQogCiAJCWNvbm5lY3Rvci0+YmFzZS5zdGF0ZS0+c2NhbGluZ19tb2RlID0gRFJNX01PREVf U0NBTEVfQVNQRUNUOwogCi0JCWNvbm5lY3Rvci0+YmFzZS5kaXNwbGF5X2luZm8ucGFuZWxfb3Jp ZW50YXRpb24gPQotCQkJdmx2X2RzaV9nZXRfcGFuZWxfb3JpZW50YXRpb24oY29ubmVjdG9yKTsK LQkJZHJtX2Nvbm5lY3Rvcl9pbml0X3BhbmVsX29yaWVudGF0aW9uX3Byb3BlcnR5KAotCQkJCSZj b25uZWN0b3ItPmJhc2UsCisJCW9yaWVudGF0aW9uID0gZHJtX2dldF9wYW5lbF9vcmllbnRhdGlv bl9xdWlyaygKIAkJCQljb25uZWN0b3ItPnBhbmVsLmZpeGVkX21vZGUtPmhkaXNwbGF5LAogCQkJ CWNvbm5lY3Rvci0+cGFuZWwuZml4ZWRfbW9kZS0+dmRpc3BsYXkpOworCQlpZiAob3JpZW50YXRp b24gIT0gRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fVU5LTk9XTikKKwkJCWNvbm5lY3Rvci0+ YmFzZS5kaXNwbGF5X2luZm8ucGFuZWxfb3JpZW50YXRpb24gPSBvcmllbnRhdGlvbjsKKwkJZWxz ZQorCQkJY29ubmVjdG9yLT5iYXNlLmRpc3BsYXlfaW5mby5wYW5lbF9vcmllbnRhdGlvbiA9CisJ CQkJdmx2X2RzaV9nZXRfcGFuZWxfb3JpZW50YXRpb24oY29ubmVjdG9yKTsKKworCQlkcm1fY29u bmVjdG9yX2luaXRfcGFuZWxfb3JpZW50YXRpb25fcHJvcGVydHkoJmNvbm5lY3Rvci0+YmFzZSk7 CiAJfQogfQogCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggYi9pbmNs dWRlL2RybS9kcm1fY29ubmVjdG9yLmgKaW5kZXggNDdlNzQ5Yjc0ZTVmLi5jMjk5MmY3YTBkZDUg MTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAorKysgYi9pbmNsdWRlL2Ry bS9kcm1fY29ubmVjdG9yLmgKQEAgLTEzNzAsNyArMTM3MCw3IEBAIHZvaWQgZHJtX2Nvbm5lY3Rv cl9zZXRfbGlua19zdGF0dXNfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv ciwKIHZvaWQgZHJtX2Nvbm5lY3Rvcl9zZXRfdnJyX2NhcGFibGVfcHJvcGVydHkoCiAJCXN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIGJvb2wgY2FwYWJsZSk7CiBpbnQgZHJtX2Nvbm5l Y3Rvcl9pbml0X3BhbmVsX29yaWVudGF0aW9uX3Byb3BlcnR5KAotCXN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisJc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3Rvcik7CiBpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfbWF4X2JwY19wcm9w ZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQkJCQkgIGludCBtaW4sIGlu dCBtYXgpOwogCi0tIAoyLjIyLjAucmMyLjM4My5nZjRmYmJmMzBjMi1nb29nCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=