From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Stultz Subject: [RFC][PATCH] drm: kirin: Fix dsi probe/attach logic Date: Thu, 29 Aug 2019 06:05:50 +0000 Message-ID: <20190829060550.62095-1-john.stultz@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pg1-x543.google.com (mail-pg1-x543.google.com [IPv6:2607:f8b0:4864:20::543]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4F2B689FCC for ; Thu, 29 Aug 2019 06:06:02 +0000 (UTC) Received: by mail-pg1-x543.google.com with SMTP id m3so985776pgv.13 for ; Wed, 28 Aug 2019 23:06:02 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: lkml Cc: Jernej Skrabec , Neil Armstrong , David Airlie , Jonas Karlman , "dri-devel@lists.freedesktop.org" , Xinliang Liu , Thierry Reding , Laurent Pinchart , Rongrong Zou , Sean Paul , Sam Ravnborg , Matt Redfearn List-Id: dri-devel@lists.freedesktop.org U2luY2UgY29tbWl0IDgzZjM1YmMzYTg1MiAoImRybS9icmlkZ2U6IGFkdjc1MTE6IEF0dGFjaCB0 byBEU0kKaG9zdCBhdCBwcm9iZSB0aW1lIikgbGFuZGVkIGluIC1uZXh0IHRoZSBIaUtleSBib2Fy ZCB3b3VsZCBmYWlsCnRvIGJvb3QsIGxvb3Bpbmc6CgogIGFkdjc1MTEgMi0wMDM5OiBmYWlsZWQg dG8gZmluZCBkc2kgaG9zdAoKbWVzc2FnZXMgb3ZlciBhbmQgb3Zlci4gQW5kcnplaiBIYWpkYSBz dWdnZXN0ZWQgdGhpcyBpcyBkdWUgdG8gYQpjaXJjdWxhciBkZXBlbmRlbmN5IGlzc3VlLCBhbmQg dGhhdCB0aGUgYWR2NzUxMSBjaGFuZ2UgaXMKY29ycmVjdGluZyB0aGUgaW1wcm9wZXIgb3JkZXIg dXNlZCBlYXJsaWVyLgoKVW5mb3J0dW5hdGVseSB0aGlzIG1lYW5zIHRoZSBEU0kgZHJpdmVycyB0 aGF0IHVzZSBhZHY3NTExIG5lZWQKdG8gYWxzbyBuZWVkIHRvIGJlIHVwZGF0ZWQgdG8gdXNlIHRo ZSBwcm9wZXIgb3JkZXJpbmcgdG8KY29udGludWUgdG8gd29yay4KClRoaXMgcGF0Y2ggdHJpZXMg dG8gcmVvcmRlciB0aGUgaW5pdGlhbGl6YXRpb24gdG8gcmVnaXN0ZXIgdGhlCmRzaV9ob3N0IGZp cnN0LCBhbmQgdGhlbiBjYWxsIGNvbXBvbmVudF9hZGQgdmlhIGRzaV9ob3N0X2F0dGFjaCwKaW5z dGVhZCBvZiBkb2luZyB0aGF0IGF0IHByb2JlIHRpbWUuCgpUaGlzIHNlZW1zIHRvIHJlc29sdmUg dGhlIGlzc3VlIHdpdGggdGhlIEhpS2V5IGJvYXJkLgoKQ2M6IEFuZHJ6ZWogSGFqZGEgPGEuaGFq ZGFAc2Ftc3VuZy5jb20+CkNjOiBNYXR0IFJlZGZlYXJuIDxtYXR0LnJlZGZlYXJuQHRoaW5jaS5j b20+CkNjOiBYaW5saWFuZyBMaXUgPHoubGl1eGlubGlhbmdAaGlzaWxpY29uLmNvbT4KQ2M6IFJv bmdyb25nIFpvdSA8em91cm9uZ3JvbmdAZ21haWwuY29tPgpDYzogTGF1cmVudCBQaW5jaGFydCA8 TGF1cmVudC5waW5jaGFydEBpZGVhc29uYm9hcmQuY29tPgpDYzogTmVpbCBBcm1zdHJvbmcgPG5h cm1zdHJvbmdAYmF5bGlicmUuY29tPgpDYzogSm9uYXMgS2FybG1hbiA8am9uYXNAa3dpYm9vLnNl PgpDYzogSmVybmVqIFNrcmFiZWMgPGplcm5lai5za3JhYmVjQHNpb2wubmV0PgpDYzogVGhpZXJy eSBSZWRpbmcgPHRoaWVycnkucmVkaW5nQGdtYWlsLmNvbT4KQ2M6IERhdmlkIEFpcmxpZSA8YWly bGllZEBsaW51eC5pZT4sCkNjOiBTZWFuIFBhdWwgPHNlYW5wYXVsQGNocm9taXVtLm9yZz4KQ2M6 IFNhbSBSYXZuYm9yZyA8c2FtQHJhdm5ib3JnLm9yZz4KQ2M6ICJkcmktZGV2ZWxAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnIiA8ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZz4KRml4ZXM6IDgz ZjM1YmMzYTg1MiAoImRybS9icmlkZ2U6IGFkdjc1MTE6IEF0dGFjaCB0byBEU0kgaG9zdCBhdCBw cm9iZSB0aW1lIikKU2lnbmVkLW9mZi1ieTogSm9obiBTdHVsdHogPGpvaG4uc3R1bHR6QGxpbmFy by5vcmc+Ci0tLQpOb3RlOiBJJ20gcmVhbGx5IG5vdCBzdXBlciBmYW1pbGlhciB3aXRoIHRoZSBE U0kgY29kZSBoZXJlLAphbmQgYW0gbW9zdGx5IGp1c3QgdHJ5aW5nIHRvIHJlZmFjdG9yIHRoZSBl eGlzdGluZyBjb2RlIGluIGEKc2ltaWxhciBmYXNoaW9uIHRvIHRoZSBzdWdnZXN0ZWQgZHctbWlw aS1kc2ktcm9ja2NoaXAuYwppbXBsZW1lbnRhdGlvbi4gQ2FyZWZ1bCByZXZpZXcgd291bGQgYmUg Z3JlYXRseSBhcHByZWNpYXRlZCEKCkFsc28gdGhlcmUgaXMgYW4gb3V0c3RhbmRpbmcgcmVncmVz c2lvbiBvbiB0aGUgZGI0MTBjIHNpbmNlIGl0CnNpbWlsYXJseSB1c2VzIHRoZSBhZHY3NTExIGFu ZCBwcm9iYWJseSBuZWVkcyBhIHNpbWlsYXIgcmV3b3JrLgotLS0KIGRyaXZlcnMvZ3B1L2RybS9o aXNpbGljb24va2lyaW4vZHdfZHJtX2RzaS5jIHwgMTExICsrKysrKysrKystLS0tLS0tLS0KIDEg ZmlsZSBjaGFuZ2VkLCA1NiBpbnNlcnRpb25zKCspLCA1NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaGlzaWxpY29uL2tpcmluL2R3X2RybV9kc2kuYyBiL2RyaXZl cnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4vZHdfZHJtX2RzaS5jCmluZGV4IDViZjgxMzg5NDFk ZS4uNjk2Y2VlMWExMjE5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaGlzaWxpY29uL2tp cmluL2R3X2RybV9kc2kuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaGlzaWxpY29uL2tpcmluL2R3 X2RybV9kc2kuYwpAQCAtNzksNiArNzksNyBAQCBzdHJ1Y3QgZHNpX2h3X2N0eCB7CiB9OwogCiBz dHJ1Y3QgZHdfZHNpIHsKKwlzdHJ1Y3QgZGV2aWNlICpkZXY7CiAJc3RydWN0IGRybV9lbmNvZGVy IGVuY29kZXI7CiAJc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZTsKIAlzdHJ1Y3QgbWlwaV9kc2lf aG9zdCBob3N0OwpAQCAtNzI0LDUxICs3MjUsNiBAQCBzdGF0aWMgaW50IGR3X2RybV9lbmNvZGVy X2luaXQoc3RydWN0IGRldmljZSAqZGV2LAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGRz aV9ob3N0X2F0dGFjaChzdHJ1Y3QgbWlwaV9kc2lfaG9zdCAqaG9zdCwKLQkJCSAgIHN0cnVjdCBt aXBpX2RzaV9kZXZpY2UgKm1kc2kpCi17Ci0Jc3RydWN0IGR3X2RzaSAqZHNpID0gaG9zdF90b19k c2koaG9zdCk7Ci0KLQlpZiAobWRzaS0+bGFuZXMgPCAxIHx8IG1kc2ktPmxhbmVzID4gNCkgewot CQlEUk1fRVJST1IoImRzaSBkZXZpY2UgcGFyYW1zIGludmFsaWRcbiIpOwotCQlyZXR1cm4gLUVJ TlZBTDsKLQl9Ci0KLQlkc2ktPmxhbmVzID0gbWRzaS0+bGFuZXM7Ci0JZHNpLT5mb3JtYXQgPSBt ZHNpLT5mb3JtYXQ7Ci0JZHNpLT5tb2RlX2ZsYWdzID0gbWRzaS0+bW9kZV9mbGFnczsKLQotCXJl dHVybiAwOwotfQotCi1zdGF0aWMgaW50IGRzaV9ob3N0X2RldGFjaChzdHJ1Y3QgbWlwaV9kc2lf aG9zdCAqaG9zdCwKLQkJCSAgIHN0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKm1kc2kpCi17Ci0JLyog ZG8gbm90aGluZyAqLwotCXJldHVybiAwOwotfQotCi1zdGF0aWMgY29uc3Qgc3RydWN0IG1pcGlf ZHNpX2hvc3Rfb3BzIGRzaV9ob3N0X29wcyA9IHsKLQkuYXR0YWNoID0gZHNpX2hvc3RfYXR0YWNo LAotCS5kZXRhY2ggPSBkc2lfaG9zdF9kZXRhY2gsCi19OwotCi1zdGF0aWMgaW50IGRzaV9ob3N0 X2luaXQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZHdfZHNpICpkc2kpCi17Ci0Jc3RydWN0 IG1pcGlfZHNpX2hvc3QgKmhvc3QgPSAmZHNpLT5ob3N0OwotCWludCByZXQ7Ci0KLQlob3N0LT5k ZXYgPSBkZXY7Ci0JaG9zdC0+b3BzID0gJmRzaV9ob3N0X29wczsKLQlyZXQgPSBtaXBpX2RzaV9o b3N0X3JlZ2lzdGVyKGhvc3QpOwotCWlmIChyZXQpIHsKLQkJRFJNX0VSUk9SKCJmYWlsZWQgdG8g cmVnaXN0ZXIgZHNpIGhvc3RcbiIpOwotCQlyZXR1cm4gcmV0OwotCX0KLQotCXJldHVybiAwOwot fQotCiBzdGF0aWMgaW50IGRzaV9icmlkZ2VfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBz dHJ1Y3QgZHdfZHNpICpkc2kpCiB7CiAJc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyID0gJmRz aS0+ZW5jb2RlcjsKQEAgLTc5NiwxMCArNzUyLDYgQEAgc3RhdGljIGludCBkc2lfYmluZChzdHJ1 Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2UgKm1hc3Rlciwgdm9pZCAqZGF0YSkKIAlpZiAo cmV0KQogCQlyZXR1cm4gcmV0OwogCi0JcmV0ID0gZHNpX2hvc3RfaW5pdChkZXYsIGRzaSk7Ci0J aWYgKHJldCkKLQkJcmV0dXJuIHJldDsKLQogCXJldCA9IGRzaV9icmlkZ2VfaW5pdChkcm1fZGV2 LCBkc2kpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CkBAIC04MTcsMTMgKzc2OSwyMiBAQCBz dGF0aWMgY29uc3Qgc3RydWN0IGNvbXBvbmVudF9vcHMgZHNpX29wcyA9IHsKIAkudW5iaW5kCT0g ZHNpX3VuYmluZCwKIH07CiAKLXN0YXRpYyBpbnQgZHNpX3BhcnNlX2R0KHN0cnVjdCBwbGF0Zm9y bV9kZXZpY2UgKnBkZXYsIHN0cnVjdCBkd19kc2kgKmRzaSkKK3N0YXRpYyBpbnQgZHNpX2hvc3Rf YXR0YWNoKHN0cnVjdCBtaXBpX2RzaV9ob3N0ICpob3N0LAorCQkJICAgc3RydWN0IG1pcGlfZHNp X2RldmljZSAqbWRzaSkKIHsKLQlzdHJ1Y3QgZHNpX2h3X2N0eCAqY3R4ID0gZHNpLT5jdHg7Ci0J c3RydWN0IGRldmljZV9ub2RlICpucCA9IHBkZXYtPmRldi5vZl9ub2RlOwotCXN0cnVjdCByZXNv dXJjZSAqcmVzOworCXN0cnVjdCBkd19kc2kgKmRzaSA9IGhvc3RfdG9fZHNpKGhvc3QpOworCXN0 cnVjdCBkZXZpY2Vfbm9kZSAqbnAgPSBkc2ktPmRldi0+b2Zfbm9kZTsKIAlpbnQgcmV0OwogCisJ aWYgKG1kc2ktPmxhbmVzIDwgMSB8fCBtZHNpLT5sYW5lcyA+IDQpIHsKKwkJRFJNX0VSUk9SKCJk c2kgZGV2aWNlIHBhcmFtcyBpbnZhbGlkXG4iKTsKKwkJcmV0dXJuIC1FSU5WQUw7CisJfQorCisJ ZHNpLT5sYW5lcyA9IG1kc2ktPmxhbmVzOworCWRzaS0+Zm9ybWF0ID0gbWRzaS0+Zm9ybWF0Owor CWRzaS0+bW9kZV9mbGFncyA9IG1kc2ktPm1vZGVfZmxhZ3M7CisKIAkvKgogCSAqIEdldCB0aGUg ZW5kcG9pbnQgbm9kZS4gSW4gb3VyIGNhc2UsIGRzaSBoYXMgb25lIG91dHB1dCBwb3J0MQogCSAq IHRvIHdoaWNoIHRoZSBleHRlcm5hbCBIRE1JIGJyaWRnZSBpcyBjb25uZWN0ZWQuCkBAIC04MzIs NiArNzkzLDQyIEBAIHN0YXRpYyBpbnQgZHNpX3BhcnNlX2R0KHN0cnVjdCBwbGF0Zm9ybV9kZXZp Y2UgKnBkZXYsIHN0cnVjdCBkd19kc2kgKmRzaSkKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0Owog CisJcmV0dXJuIGNvbXBvbmVudF9hZGQoZHNpLT5kZXYsICZkc2lfb3BzKTsKK30KKworc3RhdGlj IGludCBkc2lfaG9zdF9kZXRhY2goc3RydWN0IG1pcGlfZHNpX2hvc3QgKmhvc3QsCisJCQkgICBz dHJ1Y3QgbWlwaV9kc2lfZGV2aWNlICptZHNpKQoreworCS8qIGRvIG5vdGhpbmcgKi8KKwlyZXR1 cm4gMDsKK30KKworc3RhdGljIGNvbnN0IHN0cnVjdCBtaXBpX2RzaV9ob3N0X29wcyBkc2lfaG9z dF9vcHMgPSB7CisJLmF0dGFjaCA9IGRzaV9ob3N0X2F0dGFjaCwKKwkuZGV0YWNoID0gZHNpX2hv c3RfZGV0YWNoLAorfTsKKworc3RhdGljIGludCBkc2lfaG9zdF9pbml0KHN0cnVjdCBkZXZpY2Ug KmRldiwgc3RydWN0IGR3X2RzaSAqZHNpKQoreworCXN0cnVjdCBtaXBpX2RzaV9ob3N0ICpob3N0 ID0gJmRzaS0+aG9zdDsKKwlpbnQgcmV0OworCisJaG9zdC0+ZGV2ID0gZGV2OworCWhvc3QtPm9w cyA9ICZkc2lfaG9zdF9vcHM7CisJcmV0ID0gbWlwaV9kc2lfaG9zdF9yZWdpc3Rlcihob3N0KTsK KwlpZiAocmV0KSB7CisJCURSTV9FUlJPUigiZmFpbGVkIHRvIHJlZ2lzdGVyIGRzaSBob3N0XG4i KTsKKwkJcmV0dXJuIHJldDsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBkc2lf cGFyc2VfZHQoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwgc3RydWN0IGR3X2RzaSAqZHNp KQoreworCXN0cnVjdCBkc2lfaHdfY3R4ICpjdHggPSBkc2ktPmN0eDsKKwlzdHJ1Y3QgcmVzb3Vy Y2UgKnJlczsKKwogCWN0eC0+cGNsayA9IGRldm1fY2xrX2dldCgmcGRldi0+ZGV2LCAicGNsayIp OwogCWlmIChJU19FUlIoY3R4LT5wY2xrKSkgewogCQlEUk1fRVJST1IoImZhaWxlZCB0byBnZXQg cGNsayBjbG9ja1xuIik7CkBAIC04NjIsMTUgKzg1OSwxOSBAQCBzdGF0aWMgaW50IGRzaV9wcm9i ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQogCX0KIAlkc2kgPSAmZGF0YS0+ZHNpOwog CWN0eCA9ICZkYXRhLT5jdHg7CisJZHNpLT5kZXYgPSAmcGRldi0+ZGV2OwogCWRzaS0+Y3R4ID0g Y3R4OwogCiAJcmV0ID0gZHNpX3BhcnNlX2R0KHBkZXYsIGRzaSk7CiAJaWYgKHJldCkKIAkJcmV0 dXJuIHJldDsKIAotCXBsYXRmb3JtX3NldF9kcnZkYXRhKHBkZXYsIGRhdGEpOworCXJldCA9IGRz aV9ob3N0X2luaXQoJnBkZXYtPmRldiwgZHNpKTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0Owog Ci0JcmV0dXJuIGNvbXBvbmVudF9hZGQoJnBkZXYtPmRldiwgJmRzaV9vcHMpOworCXBsYXRmb3Jt X3NldF9kcnZkYXRhKHBkZXYsIGRhdGEpOworCXJldHVybiAwOwogfQogCiBzdGF0aWMgaW50IGRz aV9yZW1vdmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKLS0gCjIuMTcuMQoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs