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 17:22:55 -0700 Message-ID: <20190611002256.186969-5-dbasehore@chromium.org> References: <20190611002256.186969-1-dbasehore@chromium.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190611002256.186969-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: Derek Basehore , p.zabel@pengutronix.de, maxime.ripard@bootlin.com, sam@ravnborg.org, intel-gfx@lists.freedesktop.org, airlied@linux.ie, matthias.bgg@gmail.com, dri-devel@lists.freedesktop.org, ck.hu@mediatek.com, linux-mediatek@lists.infradead.org, linux-arm-kernel@lists.infradead.org List-Id: linux-mediatek@lists.infradead.org VGhpcyByZW1vdmVzIHRoZSBvcmllbnRhdGlvbiBxdWlyayBkZXRlY3Rpb24gZnJvbSB0aGUgY29k ZSB0byBhZGQKYW4gb3JpZW50YXRpb24gcHJvcGVydHkgdG8gYSBwYW5lbC4gVGhpcyBpcyB1c2Vk IG9ubHkgZm9yIGxlZ2FjeSB4ODYKc3lzdGVtcywgeWV0IHdlJ2QgbGlrZSB0byBzdGFydCB1c2lu ZyB0aGlzIG9uIGRldmljZSB0cmVlIHN5c3RlbXMKd2hlcmUgcXVpcmsgZGV0ZWN0aW9uIGxpa2Ug dGhpcyBpcyBub3QgbmVlZGVkLgoKU2lnbmVkLW9mZi1ieTogRGVyZWsgQmFzZWhvcmUgPGRiYXNl aG9yZUBjaHJvbWl1bS5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyB8 IDE2ICsrKystLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L3Zsdl9kc2kuYyAgfCAx MyArKysrKysrKystLS0tCiBpbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggICAgIHwgIDIgKy0K IDMgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fY29ubmVjdG9yLmMKaW5kZXggZTE3NTg2YWFhODBmLi41OGEwOWI2NTAyOGIgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2RybV9jb25uZWN0b3IuYwpAQCAtMTg5NCwzMSArMTg5NCwyMyBAQCBFWFBPUlRfU1lNQk9M KGRybV9jb25uZWN0b3Jfc2V0X3Zycl9jYXBhYmxlX3Byb3BlcnR5KTsKICAqIGRybV9jb25uZWN0 b3JfaW5pdF9wYW5lbF9vcmllbnRhdGlvbl9wcm9wZXJ0eSAtCiAgKglpbml0aWFsaXplIHRoZSBj b25uZWN0ZXJzIHBhbmVsX29yaWVudGF0aW9uIHByb3BlcnR5CiAgKiBAY29ubmVjdG9yOiBjb25u ZWN0b3IgZm9yIHdoaWNoIHRvIGluaXQgdGhlIHBhbmVsLW9yaWVudGF0aW9uIHByb3BlcnR5Lgot ICogQHdpZHRoOiB3aWR0aCBpbiBwaXhlbHMgb2YgdGhlIHBhbmVsLCB1c2VkIGZvciBwYW5lbCBx dWlyayBkZXRlY3Rpb24KLSAqIEBoZWlnaHQ6IGhlaWdodCBpbiBwaXhlbHMgb2YgdGhlIHBhbmVs LCB1c2VkIGZvciBwYW5lbCBxdWlyayBkZXRlY3Rpb24KICAqCiAgKiBUaGlzIGZ1bmN0aW9uIHNo b3VsZCBvbmx5IGJlIGNhbGxlZCBmb3IgYnVpbHQtaW4gcGFuZWxzLCBhZnRlciBzZXR0aW5nCiAg KiBjb25uZWN0b3ItPmRpc3BsYXlfaW5mby5wYW5lbF9vcmllbnRhdGlvbiBmaXJzdCAoaWYga25v d24pLgogICoKLSAqIFRoaXMgZnVuY3Rpb24gd2lsbCBjaGVjayBmb3IgcGxhdGZvcm0gc3BlY2lm aWMgKGUuZy4gRE1JIGJhc2VkKSBxdWlya3MKLSAqIG92ZXJyaWRpbmcgZGlzcGxheV9pbmZvLnBh bmVsX29yaWVudGF0aW9uIGZpcnN0LCB0aGVuIGlmIHBhbmVsX29yaWVudGF0aW9uCi0gKiBpcyBu b3QgRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fVU5LTk9XTiBpdCB3aWxsIGF0dGFjaCB0aGUK LSAqICJwYW5lbCBvcmllbnRhdGlvbiIgcHJvcGVydHkgdG8gdGhlIGNvbm5lY3Rvci4KKyAqIFRo aXMgZnVuY3Rpb24gd2lsbCBjaGVjayBpZiB0aGUgcGFuZWxfb3JpZW50YXRpb24gaXMgbm90Cisg KiBEUk1fTU9ERV9QQU5FTF9PUklFTlRBVElPTl9VTktOT1dOLiBJZiBub3QsIGl0IHdpbGwgYXR0 YWNoIHRoZSAicGFuZWwKKyAqIG9yaWVudGF0aW9uIiBwcm9wZXJ0eSB0byB0aGUgY29ubmVjdG9y LgogICoKICAqIFJldHVybnM6CiAgKiBaZXJvIG9uIHN1Y2Nlc3MsIG5lZ2F0aXZlIGVycm5vIG9u IGZhaWx1cmUuCiAgKi8KIGludCBkcm1fY29ubmVjdG9yX2luaXRfcGFuZWxfb3JpZW50YXRpb25f cHJvcGVydHkoCi0Jc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgaW50IHdpZHRoLCBp bnQgaGVpZ2h0KQorCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiB7CiAJc3RydWN0 IGRybV9kZXZpY2UgKmRldiA9IGNvbm5lY3Rvci0+ZGV2OwogCXN0cnVjdCBkcm1fZGlzcGxheV9p bmZvICppbmZvID0gJmNvbm5lY3Rvci0+ZGlzcGxheV9pbmZvOwogCXN0cnVjdCBkcm1fcHJvcGVy dHkgKnByb3A7Ci0JaW50IG9yaWVudGF0aW9uX3F1aXJrOwotCi0Jb3JpZW50YXRpb25fcXVpcmsg PSBkcm1fZ2V0X3BhbmVsX29yaWVudGF0aW9uX3F1aXJrKHdpZHRoLCBoZWlnaHQpOwotCWlmIChv cmllbnRhdGlvbl9xdWlyayAhPSBEUk1fTU9ERV9QQU5FTF9PUklFTlRBVElPTl9VTktOT1dOKQot CQlpbmZvLT5wYW5lbF9vcmllbnRhdGlvbiA9IG9yaWVudGF0aW9uX3F1aXJrOwogCiAJaWYgKGlu Zm8tPnBhbmVsX29yaWVudGF0aW9uID09IERSTV9NT0RFX1BBTkVMX09SSUVOVEFUSU9OX1VOS05P V04pCiAJCXJldHVybiAwOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvdmx2X2Rz aS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvdmx2X2RzaS5jCmluZGV4IGJmZTI4OTFlYWMzNy4u MTEzMTI5OTk2NTMwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS92bHZfZHNpLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvdmx2X2RzaS5jCkBAIC0xNjUwLDYgKzE2NTAsNyBA QCBzdGF0aWMgdm9pZCBpbnRlbF9kc2lfYWRkX3Byb3BlcnRpZXMoc3RydWN0IGludGVsX2Nvbm5l Y3RvciAqY29ubmVjdG9yKQogCiAJaWYgKGNvbm5lY3Rvci0+cGFuZWwuZml4ZWRfbW9kZSkgewog CQl1MzIgYWxsb3dlZF9zY2FsZXJzOworCQlpbnQgb3JpZW50YXRpb247CiAKIAkJYWxsb3dlZF9z Y2FsZXJzID0gQklUKERSTV9NT0RFX1NDQUxFX0FTUEVDVCkgfCBCSVQoRFJNX01PREVfU0NBTEVf RlVMTFNDUkVFTik7CiAJCWlmICghSEFTX0dNQ0goZGV2X3ByaXYpKQpAQCAtMTY2MCwxMiArMTY2 MSwxNiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kc2lfYWRkX3Byb3BlcnRpZXMoc3RydWN0IGludGVs X2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCiAJCWNvbm5lY3Rvci0+YmFzZS5zdGF0ZS0+c2NhbGlu Z19tb2RlID0gRFJNX01PREVfU0NBTEVfQVNQRUNUOwogCi0JCWNvbm5lY3Rvci0+YmFzZS5kaXNw bGF5X2luZm8ucGFuZWxfb3JpZW50YXRpb24gPQotCQkJdmx2X2RzaV9nZXRfcGFuZWxfb3JpZW50 YXRpb24oY29ubmVjdG9yKTsKLQkJZHJtX2Nvbm5lY3Rvcl9pbml0X3BhbmVsX29yaWVudGF0aW9u X3Byb3BlcnR5KAotCQkJCSZjb25uZWN0b3ItPmJhc2UsCisJCW9yaWVudGF0aW9uID0gZHJtX2dl dF9wYW5lbF9vcmllbnRhdGlvbl9xdWlyaygKIAkJCQljb25uZWN0b3ItPnBhbmVsLmZpeGVkX21v ZGUtPmhkaXNwbGF5LAogCQkJCWNvbm5lY3Rvci0+cGFuZWwuZml4ZWRfbW9kZS0+dmRpc3BsYXkp OworCQlpZiAob3JpZW50YXRpb24gIT0gRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fVU5LTk9X TikKKwkJCWNvbm5lY3Rvci0+ZGlzcGxheV9pbmZvLnBhbmVsX29yaWVudGF0aW9uID0gb3JpZW50 YXRpb247CisJCWVsc2UKKwkJCWNvbm5lY3Rvci0+ZGlzcGxheV9pbmZvLnBhbmVsX29yaWVudGF0 aW9uID0KKwkJCQlpbnRlbF9kc2lfZ2V0X3BhbmVsX29yaWVudGF0aW9uKGNvbm5lY3Rvcik7CisK KwkJZHJtX2Nvbm5lY3Rvcl9pbml0X3BhbmVsX29yaWVudGF0aW9uX3Byb3BlcnR5KCZjb25uZWN0 b3ItPmJhc2UpOwogCX0KIH0KIApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rv ci5oIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCmluZGV4IDQ3ZTc0OWI3NGU1Zi4uYzI5 OTJmN2EwZGQ1IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKKysrIGIv aW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCkBAIC0xMzcwLDcgKzEzNzAsNyBAQCB2b2lkIGRy bV9jb25uZWN0b3Jfc2V0X2xpbmtfc3RhdHVzX3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IsCiB2b2lkIGRybV9jb25uZWN0b3Jfc2V0X3Zycl9jYXBhYmxlX3Byb3BlcnR5 KAogCQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBib29sIGNhcGFibGUpOwogaW50 IGRybV9jb25uZWN0b3JfaW5pdF9wYW5lbF9vcmllbnRhdGlvbl9wcm9wZXJ0eSgKLQlzdHJ1Y3Qg ZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworCXN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwogaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX21h eF9icGNfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKIAkJCQkJICBp bnQgbWluLCBpbnQgbWF4KTsKIAotLSAKMi4yMi4wLnJjMi4zODMuZ2Y0ZmJiZjMwYzItZ29vZwoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4 IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4