From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: [PATCH v3 3/7] drm/bridge: ti-sn65dsi86: Implement AUX channel Date: Mon, 13 Aug 2018 17:30:42 -0400 Message-ID: <20180813213058.184821-4-sean@poorly.run> References: <20180813213058.184821-1-sean@poorly.run> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-yw1-xc42.google.com (mail-yw1-xc42.google.com [IPv6:2607:f8b0:4864:20::c42]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8E6FE6E0CA for ; Mon, 13 Aug 2018 21:31:21 +0000 (UTC) Received: by mail-yw1-xc42.google.com with SMTP id r184-v6so14712598ywg.6 for ; Mon, 13 Aug 2018 14:31:21 -0700 (PDT) In-Reply-To: <20180813213058.184821-1-sean@poorly.run> 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 Cc: Sandeep Panda , Laurent Pinchart List-Id: dri-devel@lists.freedesktop.org RnJvbTogU2VhbiBQYXVsIDxzZWFucGF1bEBjaHJvbWl1bS5vcmc+CgpUaGlzIHdhcyBoYW5kLXJv bGxlZCBpbiB0aGUgZmlyc3QgdmVyc2lvbiwgYW5kIHdpbGwgc3VyZWx5IGJlIHVzZWZ1bCBhcwp3 ZSBleHBhbmQgdGhlIGRyaXZlciB0byBzdXBwb3J0IG1vcmUgdmFyaWVkIHVzZSBjYXNlcy4KCkNo YW5nZXMgaW4gdjI6Ci0gQ2hhbmdlIHN1YmplY3QgcHJlZml4IHMvcGFuZWwvYnJpZGdlLwotIERv d25ncmFkZSB3YXJuaW5nIGluIHBvbGwgZnVuY3Rpb24gdG8gZXJyb3IgbWVzc2FnZQotIEZpeCBE UF9FRFBfQ09ORklHVVJBVElPTl9TRVQgd3JpdGUgdmFsdWUgKFNhbmRlZXApCi0gTWFzayB1cHBl ciA4IGJpdHMgb2YgbXNnLT5hZGRyZXNzIChTYW5kZWVwKQotIENoZWNrIGF1eCBjbWQgc3RhdHVz IGZvciBlcnJvcnMgYWZ0ZXIgY29tcGxldGluZyB0aGUgc2VuZCAoU2FuZGVlcCkKLSBSZW1vdmUg bGVuZ3RoIGNoZWNrIHNpbmNlIGl0J3MgY292ZXJlZCBpbiB0aGUgYXV4IHN0YXR1cwotIEZsaXAg dGhlIFJFQUQgY2hlY2sgaW4gdHJhbnNmZXIgdG8gV1JJVEUgY2hlY2sgKyBlYXJseSBleGl0CkNo YW5nZXMgaW4gdjM6Ci0gQWRkZWQgdG8gdGhlIHNldAotIFdyYXBwZWQgKHgpIGluIFdEQVRBL1JE QVRBICNkZWZpbmVzCi0gUmVwbGFjZSByZWFkeF9wb2xsKiB3aXRoIHJlZ21hcF9yZWFkX3BvbGwq CgpDYzogU2FuZGVlcCBQYW5kYSA8c3BhbmRhQGNvZGVhdXJvcmEub3JnPgpTaWduZWQtb2ZmLWJ5 OiBTZWFuIFBhdWwgPHNlYW5wYXVsQGNocm9taXVtLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v YnJpZGdlL3RpLXNuNjVkc2k4Ni5jIHwgMTAzICsrKysrKysrKysrKysrKysrKysrKysrKy0tCiAx IGZpbGUgY2hhbmdlZCwgOTUgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3RpLXNuNjVkc2k4Ni5jIGIvZHJpdmVycy9ncHUv ZHJtL2JyaWRnZS90aS1zbjY1ZHNpODYuYwppbmRleCA1ODdkNGU0ZjU2NzRjLi41MDFmNGE4MWVh NWFiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3RpLXNuNjVkc2k4Ni5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvdGktc242NWRzaTg2LmMKQEAgLTcsMTIgKzcsMTQg QEAKICNpbmNsdWRlIDxkcm0vZHJtX2F0b21pYy5oPgogI2luY2x1ZGUgPGRybS9kcm1fYXRvbWlj X2hlbHBlci5oPgogI2luY2x1ZGUgPGRybS9kcm1fY3J0Y19oZWxwZXIuaD4KKyNpbmNsdWRlIDxk cm0vZHJtX2RwX2hlbHBlci5oPgogI2luY2x1ZGUgPGRybS9kcm1fbWlwaV9kc2kuaD4KICNpbmNs dWRlIDxkcm0vZHJtX29mLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9wYW5lbC5oPgogI2luY2x1ZGUg PGxpbnV4L2Nsay5oPgogI2luY2x1ZGUgPGxpbnV4L2dwaW8vY29uc3VtZXIuaD4KICNpbmNsdWRl IDxsaW51eC9pMmMuaD4KKyNpbmNsdWRlIDxsaW51eC9pb3BvbGwuaD4KICNpbmNsdWRlIDxsaW51 eC9vZl9ncmFwaC5oPgogI2luY2x1ZGUgPGxpbnV4L3BtX3J1bnRpbWUuaD4KICNpbmNsdWRlIDxs aW51eC9yZWdtYXAuaD4KQEAgLTQ2LDcgKzQ4LDcgQEAKICNkZWZpbmUgU05fREFUQV9GT1JNQVRf UkVHCQkJMHg1QgogI2RlZmluZSBTTl9IUERfRElTQUJMRV9SRUcJCQkweDVDCiAjZGVmaW5lICBI UERfRElTQUJMRQkJCQlCSVQoMCkKLSNkZWZpbmUgU05fQVVYX1dEQVRBMF9SRUcJCQkweDY0Cisj ZGVmaW5lIFNOX0FVWF9XREFUQV9SRUcoeCkJCQkoMHg2NCArICh4KSkKICNkZWZpbmUgU05fQVVY X0FERFJfMTlfMTZfUkVHCQkJMHg3NAogI2RlZmluZSBTTl9BVVhfQUREUl8xNV84X1JFRwkJCTB4 NzUKICNkZWZpbmUgU05fQVVYX0FERFJfN18wX1JFRwkJCTB4NzYKQEAgLTU0LDYgKzU2LDcgQEAK ICNkZWZpbmUgU05fQVVYX0NNRF9SRUcJCQkJMHg3OAogI2RlZmluZSAgQVVYX0NNRF9TRU5ECQkJ CUJJVCgxKQogI2RlZmluZSAgQVVYX0NNRF9SRVEoeCkJCQkJKCh4KSA8PCA0KQorI2RlZmluZSBT Tl9BVVhfUkRBVEFfUkVHKHgpCQkJKDB4NzkgKyAoeCkpCiAjZGVmaW5lIFNOX1NTQ19DT05GSUdf UkVHCQkJMHg5MwogI2RlZmluZSAgRFBfTlVNX0xBTkVTX01BU0sJCQlHRU5NQVNLKDUsIDQpCiAj ZGVmaW5lICBEUF9OVU1fTEFORVMoeCkJCQkoKHgpIDw8IDQpCkBAIC02Myw2ICs2NiwxMCBAQAog I2RlZmluZSBTTl9NTF9UWF9NT0RFX1JFRwkJCTB4OTYKICNkZWZpbmUgIE1MX1RYX01BSU5fTElO S19PRkYJCQkwCiAjZGVmaW5lICBNTF9UWF9OT1JNQUxfTU9ERQkJCUJJVCgwKQorI2RlZmluZSBT Tl9BVVhfQ01EX1NUQVRVU19SRUcJCQkweEY0CisjZGVmaW5lICBBVVhfSVJRX1NUQVRVU19BVVhf UlBMWV9UT1VUCQlCSVQoMykKKyNkZWZpbmUgIEFVWF9JUlFfU1RBVFVTX0FVWF9TSE9SVAkJQklU KDUpCisjZGVmaW5lICBBVVhfSVJRX1NUQVRVU19OQVRfSTJDX0ZBSUwJCUJJVCg2KQogCiAjZGVm aW5lIE1JTl9EU0lfQ0xLX0ZSRVFfTUhaCTQwCiAKQEAgLTcwLDExICs3NywxNSBAQAogI2RlZmlu ZSBEUF9DTEtfRlVER0VfTlVNCTEwCiAjZGVmaW5lIERQX0NMS19GVURHRV9ERU4JOAogCisvKiBN YXRjaGVzIERQX0FVWF9NQVhfUEFZTE9BRF9CWVRFUyAoZm9yIG5vdykgKi8KKyNkZWZpbmUgU05f QVVYX01BWF9QQVlMT0FEX0JZVEVTCTE2CisKICNkZWZpbmUgU05fUkVHVUxBVE9SX1NVUFBMWV9O VU0JCTQKIAogc3RydWN0IHRpX3NuX2JyaWRnZSB7CiAJc3RydWN0IGRldmljZQkJCSpkZXY7CiAJ c3RydWN0IHJlZ21hcAkJCSpyZWdtYXA7CisJc3RydWN0IGRybV9kcF9hdXgJCWF1eDsKIAlzdHJ1 Y3QgZHJtX2JyaWRnZQkJYnJpZGdlOwogCXN0cnVjdCBkcm1fY29ubmVjdG9yCQljb25uZWN0b3I7 CiAJc3RydWN0IGRldmljZV9ub2RlCQkqaG9zdF9ub2RlOwpAQCAtNDcxLDEzICs0ODIsOCBAQCBz dGF0aWMgdm9pZCB0aV9zbl9icmlkZ2VfZW5hYmxlKHN0cnVjdCBkcm1fYnJpZGdlICpicmlkZ2Up CiAJICogYXV0aGVudGljYXRpb24gbWV0aG9kLiBXZSBuZWVkIHRvIGVuYWJsZSB0aGlzIG1ldGhv ZCBpbiB0aGUgZURQIHBhbmVsCiAJICogYXQgRGlzcGxheVBvcnQgYWRkcmVzcyAweDAwMTBBIHBy aW9yIHRvIGxpbmsgdHJhaW5pbmcuCiAJICovCi0JcmVnbWFwX3dyaXRlKHBkYXRhLT5yZWdtYXAs IFNOX0FVWF9XREFUQTBfUkVHLCAweDAxKTsKLQlyZWdtYXBfd3JpdGUocGRhdGEtPnJlZ21hcCwg U05fQVVYX0FERFJfMTlfMTZfUkVHLCAweDAwKTsKLQlyZWdtYXBfd3JpdGUocGRhdGEtPnJlZ21h cCwgU05fQVVYX0FERFJfMTVfOF9SRUcsIDB4MDEpOwotCXJlZ21hcF93cml0ZShwZGF0YS0+cmVn bWFwLCBTTl9BVVhfQUREUl83XzBfUkVHLCAweDBBKTsKLQlyZWdtYXBfd3JpdGUocGRhdGEtPnJl Z21hcCwgU05fQVVYX0xFTkdUSF9SRUcsIDB4MDEpOwotCXJlZ21hcF93cml0ZShwZGF0YS0+cmVn bWFwLCBTTl9BVVhfQ01EX1JFRywgMHg4MSk7Ci0JdXNsZWVwX3JhbmdlKDEwMDAwLCAxMDUwMCk7 IC8qIDEwbXMgZGVsYXkgcmVjb21tZW5kZWQgYnkgc3BlYyAqLworCWRybV9kcF9kcGNkX3dyaXRl YigmcGRhdGEtPmF1eCwgRFBfRURQX0NPTkZJR1VSQVRJT05fU0VULAorCQkJICAgRFBfQUxURVJO QVRFX1NDUkFNQkxFUl9SRVNFVF9FTkFCTEUpOwogCiAJLyogU2VtaSBhdXRvIGxpbmsgdHJhaW5p bmcgbW9kZSAqLwogCXJlZ21hcF93cml0ZShwZGF0YS0+cmVnbWFwLCBTTl9NTF9UWF9NT0RFX1JF RywgMHgwQSk7CkBAIC01MjUsNiArNTMxLDgyIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Jy aWRnZV9mdW5jcyB0aV9zbl9icmlkZ2VfZnVuY3MgPSB7CiAJLnBvc3RfZGlzYWJsZSA9IHRpX3Nu X2JyaWRnZV9wb3N0X2Rpc2FibGUsCiB9OwogCitzdGF0aWMgc3RydWN0IHRpX3NuX2JyaWRnZSAq YXV4X3RvX3RpX3NuX2JyaWRnZShzdHJ1Y3QgZHJtX2RwX2F1eCAqYXV4KQoreworCXJldHVybiBj b250YWluZXJfb2YoYXV4LCBzdHJ1Y3QgdGlfc25fYnJpZGdlLCBhdXgpOworfQorCitzdGF0aWMg c3NpemVfdCB0aV9zbl9hdXhfdHJhbnNmZXIoc3RydWN0IGRybV9kcF9hdXggKmF1eCwKKwkJCQkg IHN0cnVjdCBkcm1fZHBfYXV4X21zZyAqbXNnKQoreworCXN0cnVjdCB0aV9zbl9icmlkZ2UgKnBk YXRhID0gYXV4X3RvX3RpX3NuX2JyaWRnZShhdXgpOworCXUzMiByZXF1ZXN0ID0gbXNnLT5yZXF1 ZXN0ICYgfkRQX0FVWF9JMkNfTU9UOworCXUzMiByZXF1ZXN0X3ZhbCA9IEFVWF9DTURfUkVRKG1z Zy0+cmVxdWVzdCk7CisJdTggKmJ1ZiA9ICh1OCAqKW1zZy0+YnVmZmVyOworCXVuc2lnbmVkIGlu dCB2YWw7CisJaW50IHJldCwgaTsKKworCWlmIChtc2ctPnNpemUgPiBTTl9BVVhfTUFYX1BBWUxP QURfQllURVMpCisJCXJldHVybiAtRUlOVkFMOworCisJc3dpdGNoIChyZXF1ZXN0KSB7CisJY2Fz ZSBEUF9BVVhfTkFUSVZFX1dSSVRFOgorCWNhc2UgRFBfQVVYX0kyQ19XUklURToKKwljYXNlIERQ X0FVWF9OQVRJVkVfUkVBRDoKKwljYXNlIERQX0FVWF9JMkNfUkVBRDoKKwkJcmVnbWFwX3dyaXRl KHBkYXRhLT5yZWdtYXAsIFNOX0FVWF9DTURfUkVHLCByZXF1ZXN0X3ZhbCk7CisJCWJyZWFrOwor CWRlZmF1bHQ6CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCXJlZ21hcF93cml0ZShwZGF0YS0+ cmVnbWFwLCBTTl9BVVhfQUREUl8xOV8xNl9SRUcsCisJCSAgICAgKG1zZy0+YWRkcmVzcyA+PiAx NikgJiAweEYpOworCXJlZ21hcF93cml0ZShwZGF0YS0+cmVnbWFwLCBTTl9BVVhfQUREUl8xNV84 X1JFRywKKwkJICAgICAobXNnLT5hZGRyZXNzID4+IDgpICYgMHhGRik7CisJcmVnbWFwX3dyaXRl KHBkYXRhLT5yZWdtYXAsIFNOX0FVWF9BRERSXzdfMF9SRUcsIG1zZy0+YWRkcmVzcyAmIDB4RkYp OworCisJcmVnbWFwX3dyaXRlKHBkYXRhLT5yZWdtYXAsIFNOX0FVWF9MRU5HVEhfUkVHLCBtc2ct PnNpemUpOworCisJaWYgKHJlcXVlc3QgPT0gRFBfQVVYX05BVElWRV9XUklURSB8fCByZXF1ZXN0 ID09IERQX0FVWF9JMkNfV1JJVEUpIHsKKwkJZm9yIChpID0gMDsgaSA8IG1zZy0+c2l6ZTsgaSsr KQorCQkJcmVnbWFwX3dyaXRlKHBkYXRhLT5yZWdtYXAsIFNOX0FVWF9XREFUQV9SRUcoaSksCisJ CQkJICAgICBidWZbaV0pOworCX0KKworCXJlZ21hcF93cml0ZShwZGF0YS0+cmVnbWFwLCBTTl9B VVhfQ01EX1JFRywgcmVxdWVzdF92YWwgfCBBVVhfQ01EX1NFTkQpOworCisJcmV0ID0gcmVnbWFw X3JlYWRfcG9sbF90aW1lb3V0KHBkYXRhLT5yZWdtYXAsIFNOX0FVWF9DTURfUkVHLCB2YWwsCisJ CQkJICAgICAgICEodmFsICYgQVVYX0NNRF9TRU5EKSwgMjAwLAorCQkJCSAgICAgICA1MCAqIDEw MDApOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKKwlyZXQgPSByZWdtYXBfcmVhZChwZGF0 YS0+cmVnbWFwLCBTTl9BVVhfQ01EX1NUQVRVU19SRUcsICZ2YWwpOworCWlmIChyZXQpCisJCXJl dHVybiByZXQ7CisJZWxzZSBpZiAoKHZhbCAmIEFVWF9JUlFfU1RBVFVTX05BVF9JMkNfRkFJTCkK KwkJIHx8ICh2YWwgJiBBVVhfSVJRX1NUQVRVU19BVVhfUlBMWV9UT1VUKQorCQkgfHwgKHZhbCAm IEFVWF9JUlFfU1RBVFVTX0FVWF9TSE9SVCkpCisJCXJldHVybiAtRU5YSU87CisKKwlpZiAocmVx dWVzdCA9PSBEUF9BVVhfTkFUSVZFX1dSSVRFIHx8IHJlcXVlc3QgPT0gRFBfQVVYX0kyQ19XUklU RSkKKwkJcmV0dXJuIG1zZy0+c2l6ZTsKKworCWZvciAoaSA9IDA7IGkgPCBtc2ctPnNpemU7IGkr KykgeworCQl1bnNpZ25lZCBpbnQgdmFsOworCQlyZXQgPSByZWdtYXBfcmVhZChwZGF0YS0+cmVn bWFwLCBTTl9BVVhfUkRBVEFfUkVHKGkpLAorCQkJCSAgJnZhbCk7CisJCWlmIChyZXQpCisJCQly ZXR1cm4gcmV0OworCisJCVdBUk5fT04odmFsICYgfjB4RkYpOworCQlidWZbaV0gPSAodTgpKHZh bCAmIDB4RkYpOworCX0KKworCXJldHVybiBtc2ctPnNpemU7Cit9CisKIHN0YXRpYyBpbnQgdGlf c25fYnJpZGdlX3BhcnNlX2RzaV9ob3N0KHN0cnVjdCB0aV9zbl9icmlkZ2UgKnBkYXRhKQogewog CXN0cnVjdCBkZXZpY2Vfbm9kZSAqbnAgPSBwZGF0YS0+ZGV2LT5vZl9ub2RlOwpAQCAtNjA0LDYg KzY4NiwxMSBAQCBzdGF0aWMgaW50IHRpX3NuX2JyaWRnZV9wcm9iZShzdHJ1Y3QgaTJjX2NsaWVu dCAqY2xpZW50LAogCiAJaTJjX3NldF9jbGllbnRkYXRhKGNsaWVudCwgcGRhdGEpOwogCisJcGRh dGEtPmF1eC5uYW1lID0gInRpLXNuNjVkc2k4Ni1hdXgiOworCXBkYXRhLT5hdXguZGV2ID0gcGRh dGEtPmRldjsKKwlwZGF0YS0+YXV4LnRyYW5zZmVyID0gdGlfc25fYXV4X3RyYW5zZmVyOworCWRy bV9kcF9hdXhfcmVnaXN0ZXIoJnBkYXRhLT5hdXgpOworCiAJcGRhdGEtPmJyaWRnZS5mdW5jcyA9 ICZ0aV9zbl9icmlkZ2VfZnVuY3M7CiAJcGRhdGEtPmJyaWRnZS5vZl9ub2RlID0gY2xpZW50LT5k ZXYub2Zfbm9kZTsKIAotLSAKU2VhbiBQYXVsLCBTb2Z0d2FyZSBFbmdpbmVlciwgR29vZ2xlIC8g Q2hyb21pdW0gT1MKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bAo=