From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rob Clark Subject: [RFC 3/3] drm/bridge: adv7511: deal with bootloader lighting up display Date: Tue, 11 Jul 2017 14:20:08 -0400 Message-ID: <20170711182008.28298-4-robdclark@gmail.com> References: <20170711182008.28298-1-robdclark@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170711182008.28298-1-robdclark@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, linux-clk@vger.kernel.org Cc: linux-arm-msm@vger.kernel.org, Michael Turquette , Stephen Boyd , viresh.kumar@linaro.org List-Id: linux-arm-msm@vger.kernel.org V2UgbmVlZCB0byBkbyBzb21lIHRoaW5ncyBhIGJpdCBkaWZmZXJlbnRseSBpZiB0aGUgYnJpZGdl IGNoaXAgaXMKYWxyZWFkeSBwb3dlcmVkIHVwIHdoZW4gdGhlIGRyaXZlciBsb2FkcyAoaWUuIGJv b3Rsb2FkZXIgaGFzIGFscmVhZHkKZW5hYmxlZCBkaXNwbGF5KS4gIEluIHBhcnRpY3VsYXIgd2Ug ZG9uJ3Qgd2FudCB0byBkbyBhbnl0aGluZyB0aGF0CndvdWxkIGtpbGwgdGhlIGRpc3BsYXkuCi0t LQogZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hZHY3NTExL2Fkdjc1MTFfZHJ2LmMgfCA1NyArKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2Fkdjc1MTEv YWR2NzUzMy5jICAgICB8ICAzICsrCiAyIGZpbGVzIGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyks IDE4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYWR2 NzUxMS9hZHY3NTExX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hZHY3NTExL2Fkdjc1 MTFfZHJ2LmMKaW5kZXggZjc1YWI2Mjc4MTEzLi4xNWU3MjVmYTg2MTYgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9icmlkZ2UvYWR2NzUxMS9hZHY3NTExX2Rydi5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9icmlkZ2UvYWR2NzUxMS9hZHY3NTExX2Rydi5jCkBAIC0xMDcsNiArMTA3LDcgQEAg c3RhdGljIGJvb2wgYWR2NzUxMV9yZWdpc3Rlcl92b2xhdGlsZShzdHJ1Y3QgZGV2aWNlICpkZXYs IHVuc2lnbmVkIGludCByZWcpCiAJY2FzZSBBRFY3NTExX1JFR19CU1RBVFVTKDEpOgogCWNhc2Ug QURWNzUxMV9SRUdfQ0hJUF9JRF9ISUdIOgogCWNhc2UgQURWNzUxMV9SRUdfQ0hJUF9JRF9MT1c6 CisJY2FzZSBBRFY3NTExX1JFR19QT1dFUjoKIAkJcmV0dXJuIHRydWU7CiAJfQogCkBAIC01ODQs NiArNTg1LDggQEAgc3RhdGljIGludCBhZHY3NTExX2dldF9tb2RlcyhzdHJ1Y3QgYWR2NzUxMSAq YWR2NzUxMSwKIAkJCSAgICAgZWRpZF9pMmNfYWRkcik7CiAJfQogCisJYWR2NzUxMS0+Y3VycmVu dF9lZGlkX3NlZ21lbnQgPSAtMTsKKwogCWVkaWQgPSBkcm1fZG9fZ2V0X2VkaWQoY29ubmVjdG9y LCBhZHY3NTExX2dldF9lZGlkX2Jsb2NrLCBhZHY3NTExKTsKIAogCWlmICghYWR2NzUxMS0+cG93 ZXJlZCkKQEAgLTYyNyw3ICs2MzAsOCBAQCBhZHY3NTExX2RldGVjdChzdHJ1Y3QgYWR2NzUxMSAq YWR2NzUxMSwgc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAkgKiBoYXMgdG8gYmUg cmVpbml0aWFsaXplZC4gKi8KIAlpZiAoc3RhdHVzID09IGNvbm5lY3Rvcl9zdGF0dXNfY29ubmVj dGVkICYmIGhwZCAmJiBhZHY3NTExLT5wb3dlcmVkKSB7CiAJCXJlZ2NhY2hlX21hcmtfZGlydHko YWR2NzUxMS0+cmVnbWFwKTsKLQkJYWR2NzUxMV9wb3dlcl9vbihhZHY3NTExKTsKKwkJaWYgKCFh ZHY3NTExLT5wb3dlcmVkKQorCQkJYWR2NzUxMV9wb3dlcl9vbihhZHY3NTExKTsKIAkJYWR2NzUx MV9nZXRfbW9kZXMoYWR2NzUxMSwgY29ubmVjdG9yKTsKIAkJaWYgKGFkdjc1MTEtPnN0YXR1cyA9 PSBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZCkKIAkJCXN0YXR1cyA9IGNvbm5lY3Rvcl9zdGF0 dXNfZGlzY29ubmVjdGVkOwpAQCAtMTA0NCwzMyArMTA0OCw0NyBAQCBzdGF0aWMgaW50IGFkdjc1 MTFfcHJvYmUoc3RydWN0IGkyY19jbGllbnQgKmkyYywgY29uc3Qgc3RydWN0IGkyY19kZXZpY2Vf aWQgKmlkKQogCQlyZXR1cm4gcmV0OwogCX0KIAorCWFkdjc1MTEtPnJlZ21hcCA9IGRldm1fcmVn bWFwX2luaXRfaTJjKGkyYywgJmFkdjc1MTFfcmVnbWFwX2NvbmZpZyk7CisJaWYgKElTX0VSUihh ZHY3NTExLT5yZWdtYXApKSB7CisJCXJldCA9IFBUUl9FUlIoYWR2NzUxMS0+cmVnbWFwKTsKKwkJ Z290byB1bmluaXRfcmVndWxhdG9yczsKKwl9CisKKwlyZXQgPSByZWdtYXBfcmVhZChhZHY3NTEx LT5yZWdtYXAsIEFEVjc1MTFfUkVHX0NISVBfUkVWSVNJT04sICZ2YWwpOworCWlmIChyZXQpCisJ CWdvdG8gdW5pbml0X3JlZ3VsYXRvcnM7CisJZGV2X2RiZyhkZXYsICJSZXYuICVkXG4iLCB2YWwp OworCisJcmV0ID0gcmVnbWFwX3JlYWQoYWR2NzUxMS0+cmVnbWFwLCBBRFY3NTExX1JFR19QT1dF UiwgJnZhbCk7CisJaWYgKHJldCkKKwkJZ290byB1bmluaXRfcmVndWxhdG9yczsKKwlkZXZfZGJn KGRldiwgIlBvd2VyOiAleFxuIiwgdmFsKTsKKworCWlmICgodmFsICYgQURWNzUxMV9QT1dFUl9Q T1dFUl9ET1dOKSA9PSAwKSB7CisJCWRldl9kYmcoZGV2LCAicG93ZXJlZCBvbiBhdCBwcm9iZSFc biIpOworCQlyZWdjYWNoZV9zeW5jKGFkdjc1MTEtPnJlZ21hcCk7CisJCWFkdjc1MTEtPnBvd2Vy ZWQgPSB0cnVlOworCX0KKwogCS8qCiAJICogVGhlIHBvd2VyIGRvd24gR1BJTyBpcyBvcHRpb25h bC4gSWYgcHJlc2VudCwgdG9nZ2xlIGl0IGZyb20gYWN0aXZlIHRvCiAJICogaW5hY3RpdmUgdG8g d2FrZSB1cCB0aGUgZW5jb2Rlci4KIAkgKi8KLQlhZHY3NTExLT5ncGlvX3BkID0gZGV2bV9ncGlv ZF9nZXRfb3B0aW9uYWwoZGV2LCAicGQiLCBHUElPRF9PVVRfSElHSCk7CisJYWR2NzUxMS0+Z3Bp b19wZCA9IGRldm1fZ3Bpb2RfZ2V0X29wdGlvbmFsKGRldiwgInBkIiwKKwkJCWFkdjc1MTEtPnBv d2VyZWQgPyBHUElPRF9BU0lTIDogR1BJT0RfT1VUX0hJR0gpOwogCWlmIChJU19FUlIoYWR2NzUx MS0+Z3Bpb19wZCkpIHsKIAkJcmV0ID0gUFRSX0VSUihhZHY3NTExLT5ncGlvX3BkKTsKIAkJZ290 byB1bmluaXRfcmVndWxhdG9yczsKIAl9CiAKLQlpZiAoYWR2NzUxMS0+Z3Bpb19wZCkgeworCWlm IChhZHY3NTExLT5ncGlvX3BkICYmICFhZHY3NTExLT5wb3dlcmVkKSB7CiAJCW1kZWxheSg1KTsK IAkJZ3Bpb2Rfc2V0X3ZhbHVlX2NhbnNsZWVwKGFkdjc1MTEtPmdwaW9fcGQsIDApOwogCX0KIAot CWFkdjc1MTEtPnJlZ21hcCA9IGRldm1fcmVnbWFwX2luaXRfaTJjKGkyYywgJmFkdjc1MTFfcmVn bWFwX2NvbmZpZyk7Ci0JaWYgKElTX0VSUihhZHY3NTExLT5yZWdtYXApKSB7Ci0JCXJldCA9IFBU Ul9FUlIoYWR2NzUxMS0+cmVnbWFwKTsKLQkJZ290byB1bmluaXRfcmVndWxhdG9yczsKLQl9Ci0K LQlyZXQgPSByZWdtYXBfcmVhZChhZHY3NTExLT5yZWdtYXAsIEFEVjc1MTFfUkVHX0NISVBfUkVW SVNJT04sICZ2YWwpOwotCWlmIChyZXQpCi0JCWdvdG8gdW5pbml0X3JlZ3VsYXRvcnM7Ci0JZGV2 X2RiZyhkZXYsICJSZXYuICVkXG4iLCB2YWwpOwotCi0JaWYgKGFkdjc1MTEtPnR5cGUgPT0gQURW NzUxMSkKKwlpZiAoYWR2NzUxMS0+cG93ZXJlZCkKKwkJYWR2NzUxMV9ocGQoYWR2NzUxMSk7ICAv KiBjbGVhciBwZW5kaW5nIGlycSdzICovCisJZWxzZSBpZiAoYWR2NzUxMS0+dHlwZSA9PSBBRFY3 NTExKQogCQlyZXQgPSByZWdtYXBfcmVnaXN0ZXJfcGF0Y2goYWR2NzUxMS0+cmVnbWFwLAogCQkJ CQkgICAgYWR2NzUxMV9maXhlZF9yZWdpc3RlcnMsCiAJCQkJCSAgICBBUlJBWV9TSVpFKGFkdjc1 MTFfZml4ZWRfcmVnaXN0ZXJzKSk7CkBAIC0xMDg1LDcgKzExMDMsOCBAQCBzdGF0aWMgaW50IGFk djc1MTFfcHJvYmUoc3RydWN0IGkyY19jbGllbnQgKmkyYywgY29uc3Qgc3RydWN0IGkyY19kZXZp Y2VfaWQgKmlkKQogCXJlZ21hcF93cml0ZShhZHY3NTExLT5yZWdtYXAsIEFEVjc1MTFfUkVHX0NF Q19JMkNfQUREUiwKIAkJICAgICBtYWluX2kyY19hZGRyIC0gMik7CiAKLQlhZHY3NTExX3BhY2tl dF9kaXNhYmxlKGFkdjc1MTEsIDB4ZmZmZik7CisJaWYgKCFhZHY3NTExLT5wb3dlcmVkKQorCQlh ZHY3NTExX3BhY2tldF9kaXNhYmxlKGFkdjc1MTEsIDB4ZmZmZik7CiAKIAlhZHY3NTExLT5pMmNf ZWRpZCA9IGkyY19uZXdfZHVtbXkoaTJjLT5hZGFwdGVyLCBlZGlkX2kyY19hZGRyID4+IDEpOwog CWlmICghYWR2NzUxMS0+aTJjX2VkaWQpIHsKQEAgLTExMTYsNyArMTEzNSw4IEBAIHN0YXRpYyBp bnQgYWR2NzUxMV9wcm9iZShzdHJ1Y3QgaTJjX2NsaWVudCAqaTJjLCBjb25zdCBzdHJ1Y3QgaTJj X2RldmljZV9pZCAqaWQpCiAJcmVnbWFwX3dyaXRlKGFkdjc1MTEtPnJlZ21hcCwgQURWNzUxMV9S RUdfQ0VDX0NUUkwsCiAJCSAgICAgQURWNzUxMV9DRUNfQ1RSTF9QT1dFUl9ET1dOKTsKIAotCWFk djc1MTFfcG93ZXJfb2ZmKGFkdjc1MTEpOworCWlmICghYWR2NzUxMS0+cG93ZXJlZCkKKwkJYWR2 NzUxMV9wb3dlcl9vZmYoYWR2NzUxMSk7CiAKIAlpMmNfc2V0X2NsaWVudGRhdGEoaTJjLCBhZHY3 NTExKTsKIApAQCAtMTEzMiw3ICsxMTUyLDggQEAgc3RhdGljIGludCBhZHY3NTExX3Byb2JlKHN0 cnVjdCBpMmNfY2xpZW50ICppMmMsIGNvbnN0IHN0cnVjdCBpMmNfZGV2aWNlX2lkICppZCkKIAkJ Z290byBlcnJfdW5yZWdpc3Rlcl9jZWM7CiAJfQogCi0JYWR2NzUxMV9hdWRpb19pbml0KGRldiwg YWR2NzUxMSk7CisJaWYgKCFhZHY3NTExLT5wb3dlcmVkKQorCQlhZHY3NTExX2F1ZGlvX2luaXQo ZGV2LCBhZHY3NTExKTsKIAogCXJldHVybiAwOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYnJpZGdlL2Fkdjc1MTEvYWR2NzUzMy5jIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hZHY3 NTExL2Fkdjc1MzMuYwppbmRleCBhYzgwNGY4MWUyZjYuLjQzZGM1MzgyMWFjYiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hZHY3NTExL2Fkdjc1MzMuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vYnJpZGdlL2Fkdjc1MTEvYWR2NzUzMy5jCkBAIC0xNjYsNiArMTY2LDkgQEAgaW50 IGFkdjc1MzNfaW5pdF9jZWMoc3RydWN0IGFkdjc1MTEgKmFkdikKIAkJZ290byBlcnI7CiAJfQog CisJaWYgKGFkdi0+cG93ZXJlZCkKKwkJcmV0dXJuIDA7CisKIAlyZXQgPSByZWdtYXBfcmVnaXN0 ZXJfcGF0Y2goYWR2LT5yZWdtYXBfY2VjLAogCQkJCSAgICBhZHY3NTMzX2NlY19maXhlZF9yZWdp c3RlcnMsCiAJCQkJICAgIEFSUkFZX1NJWkUoYWR2NzUzM19jZWNfZml4ZWRfcmVnaXN0ZXJzKSk7 Ci0tIAoyLjEzLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bAo=