From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kieran Bingham Subject: [PATCH v4 5/5] drm: adv7511: Add support for i2c_new_secondary_device Date: Tue, 13 Feb 2018 17:48:57 +0000 Message-ID: <1518544137-2742-6-git-send-email-kbingham@kernel.org> References: <1518544137-2742-1-git-send-email-kbingham@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by gabe.freedesktop.org (Postfix) with ESMTPS id AA7096E2B0 for ; Tue, 13 Feb 2018 17:49:12 +0000 (UTC) In-Reply-To: <1518544137-2742-1-git-send-email-kbingham@kernel.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org Cc: Jean-Michel Hautbois , Kieran Bingham , Kieran Bingham , Sergei Shtylyov List-Id: dri-devel@lists.freedesktop.org RnJvbTogS2llcmFuIEJpbmdoYW0gPGtpZXJhbi5iaW5naGFtK3JlbmVzYXNAaWRlYXNvbmJvYXJk LmNvbT4KClRoZSBBRFY3NTExIGhhcyBmb3VyIDI1Ni1ieXRlIG1hcHMgdGhhdCBjYW4gYmUgYWNj ZXNzZWQgdmlhIHRoZSBtYWluIEkyQwpwb3J0cy4gRWFjaCBtYXAgaGFzIGl0IG93biBJMkMgYWRk cmVzcyBhbmQgYWN0cyBhcyBhIHN0YW5kYXJkIHNsYXZlCmRldmljZSBvbiB0aGUgSTJDIGJ1cy4K CkFsbG93IGEgZGV2aWNlIHRyZWUgbm9kZSB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBhZGRyZXNz ZXMgc28gdGhhdAphZGRyZXNzIGNvbmZsaWN0cyB3aXRoIG90aGVyIGRldmljZXMgb24gdGhlIHNh bWUgYnVzIG1heSBiZSByZXNvbHZlZCBhdAp0aGUgYm9hcmQgZGVzY3JpcHRpb24gbGV2ZWwuCgpT aWduZWQtb2ZmLWJ5OiBLaWVyYW4gQmluZ2hhbSA8a2llcmFuLmJpbmdoYW0rcmVuZXNhc0BpZGVh c29uYm9hcmQuY29tPgpSZXZpZXdlZC1ieTogTGF1cmVudCBQaW5jaGFydCA8bGF1cmVudC5waW5j aGFydEBpZGVhc29uYm9hcmQuY29tPgotLS0KdjI6CiAtIFVwZGF0ZSBtaXNzaW5nIGVkaWQtaTJj IGFkZHJlc3Mgc2V0dGluZwogLSBTcGxpdCBvdXQgRFQgYmluZGluZ3MKIC0gUmVuYW1lIGFuZCBt b3ZlIHRoZSBJMkMgZGVmYXVsdCBhZGRyZXNzZXMgdG8gdGhlaXIgb3duIHNlY3Rpb24KCnYzOgog LSBObyBjaGFuZ2UKCnY0OgogLSBDaGFuZ2UgcmVnaXN0cmF0aW9uIG9yZGVyIG9mIHBhY2tldC9j ZWMgdG8gZml4IGVycm9yIHBhdGggYW5kCiAgIHNpbXBsaWZ5IGNvZGUgY2hhbmdlLgogLSBDb2xs ZWN0IExhdXJlbnQncyBSQiB0YWcKCiBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2Fkdjc1MTEvYWR2 NzUxMS5oICAgICB8ICA2ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYWR2NzUxMS9hZHY3 NTExX2Rydi5jIHwgNDIgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFu Z2VkLCAzMyBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vYnJpZGdlL2Fkdjc1MTEvYWR2NzUxMS5oIGIvZHJpdmVycy9ncHUvZHJtL2Jy aWRnZS9hZHY3NTExL2Fkdjc1MTEuaAppbmRleCBkMDM0YjJjYjVlZWUuLjczZDhjY2I5Nzc0MiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hZHY3NTExL2Fkdjc1MTEuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2Fkdjc1MTEvYWR2NzUxMS5oCkBAIC05Myw2ICs5Mywx MSBAQAogI2RlZmluZSBBRFY3NTExX1JFR19DSElQX0lEX0hJR0gJCTB4ZjUKICNkZWZpbmUgQURW NzUxMV9SRUdfQ0hJUF9JRF9MT1cJCQkweGY2CiAKKy8qIEhhcmR3YXJlIGRlZmluZWQgZGVmYXVs dCBhZGRyZXNzZXMgZm9yIEkyQyByZWdpc3RlciBtYXBzICovCisjZGVmaW5lIEFEVjc1MTFfQ0VD X0kyQ19BRERSX0RFRkFVTFQJCTB4M2MKKyNkZWZpbmUgQURWNzUxMV9FRElEX0kyQ19BRERSX0RF RkFVTFQJCTB4M2YKKyNkZWZpbmUgQURWNzUxMV9QQUNLRVRfSTJDX0FERFJfREVGQVVMVAkJMHgz OAorCiAjZGVmaW5lIEFEVjc1MTFfQ1NDX0VOQUJMRQkJCUJJVCg3KQogI2RlZmluZSBBRFY3NTEx X0NTQ19VUERBVEVfTU9ERQkJCUJJVCg1KQogCkBAIC0zMjEsNiArMzI2LDcgQEAgZW51bSBhZHY3 NTExX3R5cGUgewogc3RydWN0IGFkdjc1MTEgewogCXN0cnVjdCBpMmNfY2xpZW50ICppMmNfbWFp bjsKIAlzdHJ1Y3QgaTJjX2NsaWVudCAqaTJjX2VkaWQ7CisJc3RydWN0IGkyY19jbGllbnQgKmky Y19wYWNrZXQ7CiAJc3RydWN0IGkyY19jbGllbnQgKmkyY19jZWM7CiAKIAlzdHJ1Y3QgcmVnbWFw ICpyZWdtYXA7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2Fkdjc1MTEvYWR2 NzUxMV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYWR2NzUxMS9hZHY3NTExX2Rydi5j CmluZGV4IGVmYTI5ZGI1ZmMyYi4uODAyYmM0MzNmNTRhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vYnJpZGdlL2Fkdjc1MTEvYWR2NzUxMV9kcnYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v YnJpZGdlL2Fkdjc1MTEvYWR2NzUxMV9kcnYuYwpAQCAtNTg2LDcgKzU4Niw3IEBAIHN0YXRpYyBp bnQgYWR2NzUxMV9nZXRfbW9kZXMoc3RydWN0IGFkdjc1MTEgKmFkdjc1MTEsCiAJLyogUmVhZGlu ZyB0aGUgRURJRCBvbmx5IHdvcmtzIGlmIHRoZSBkZXZpY2UgaXMgcG93ZXJlZCAqLwogCWlmICgh YWR2NzUxMS0+cG93ZXJlZCkgewogCQl1bnNpZ25lZCBpbnQgZWRpZF9pMmNfYWRkciA9Ci0JCQkJ CShhZHY3NTExLT5pMmNfbWFpbi0+YWRkciA8PCAxKSArIDQ7CisJCQkJCShhZHY3NTExLT5pMmNf ZWRpZC0+YWRkciA8PCAxKTsKIAogCQlfX2Fkdjc1MTFfcG93ZXJfb24oYWR2NzUxMSk7CiAKQEAg LTk2OSwxMCArOTY5LDEwIEBAIHN0YXRpYyBpbnQgYWR2NzUxMV9pbml0X2NlY19yZWdtYXAoc3Ry dWN0IGFkdjc1MTEgKmFkdikKIHsKIAlpbnQgcmV0OwogCi0JYWR2LT5pMmNfY2VjID0gaTJjX25l d19kdW1teShhZHYtPmkyY19tYWluLT5hZGFwdGVyLAotCQkJCSAgICAgYWR2LT5pMmNfbWFpbi0+ YWRkciAtIDEpOworCWFkdi0+aTJjX2NlYyA9IGkyY19uZXdfc2Vjb25kYXJ5X2RldmljZShhZHYt PmkyY19tYWluLCAiY2VjIiwKKwkJCQkJQURWNzUxMV9DRUNfSTJDX0FERFJfREVGQVVMVCk7CiAJ aWYgKCFhZHYtPmkyY19jZWMpCi0JCXJldHVybiAtRU5PTUVNOworCQlyZXR1cm4gLUVJTlZBTDsK IAlpMmNfc2V0X2NsaWVudGRhdGEoYWR2LT5pMmNfY2VjLCBhZHYpOwogCiAJYWR2LT5yZWdtYXBf Y2VjID0gZGV2bV9yZWdtYXBfaW5pdF9pMmMoYWR2LT5pMmNfY2VjLApAQCAtMTA4Miw4ICsxMDgy LDYgQEAgc3RhdGljIGludCBhZHY3NTExX3Byb2JlKHN0cnVjdCBpMmNfY2xpZW50ICppMmMsIGNv bnN0IHN0cnVjdCBpMmNfZGV2aWNlX2lkICppZCkKIAlzdHJ1Y3QgYWR2NzUxMV9saW5rX2NvbmZp ZyBsaW5rX2NvbmZpZzsKIAlzdHJ1Y3QgYWR2NzUxMSAqYWR2NzUxMTsKIAlzdHJ1Y3QgZGV2aWNl ICpkZXYgPSAmaTJjLT5kZXY7Ci0JdW5zaWduZWQgaW50IG1haW5faTJjX2FkZHIgPSBpMmMtPmFk ZHIgPDwgMTsKLQl1bnNpZ25lZCBpbnQgZWRpZF9pMmNfYWRkciA9IG1haW5faTJjX2FkZHIgKyA0 OwogCXVuc2lnbmVkIGludCB2YWw7CiAJaW50IHJldDsKIApAQCAtMTE1MywyMyArMTE1MSwzNCBA QCBzdGF0aWMgaW50IGFkdjc1MTFfcHJvYmUoc3RydWN0IGkyY19jbGllbnQgKmkyYywgY29uc3Qg c3RydWN0IGkyY19kZXZpY2VfaWQgKmlkKQogCWlmIChyZXQpCiAJCWdvdG8gdW5pbml0X3JlZ3Vs YXRvcnM7CiAKLQlyZWdtYXBfd3JpdGUoYWR2NzUxMS0+cmVnbWFwLCBBRFY3NTExX1JFR19FRElE X0kyQ19BRERSLCBlZGlkX2kyY19hZGRyKTsKLQlyZWdtYXBfd3JpdGUoYWR2NzUxMS0+cmVnbWFw LCBBRFY3NTExX1JFR19QQUNLRVRfSTJDX0FERFIsCi0JCSAgICAgbWFpbl9pMmNfYWRkciAtIDB4 YSk7Ci0JcmVnbWFwX3dyaXRlKGFkdjc1MTEtPnJlZ21hcCwgQURWNzUxMV9SRUdfQ0VDX0kyQ19B RERSLAotCQkgICAgIG1haW5faTJjX2FkZHIgLSAyKTsKLQogCWFkdjc1MTFfcGFja2V0X2Rpc2Fi bGUoYWR2NzUxMSwgMHhmZmZmKTsKIAotCWFkdjc1MTEtPmkyY19lZGlkID0gaTJjX25ld19kdW1t eShpMmMtPmFkYXB0ZXIsIGVkaWRfaTJjX2FkZHIgPj4gMSk7CisJYWR2NzUxMS0+aTJjX2VkaWQg PSBpMmNfbmV3X3NlY29uZGFyeV9kZXZpY2UoaTJjLCAiZWRpZCIsCisJCQkJCUFEVjc1MTFfRURJ RF9JMkNfQUREUl9ERUZBVUxUKTsKIAlpZiAoIWFkdjc1MTEtPmkyY19lZGlkKSB7Ci0JCXJldCA9 IC1FTk9NRU07CisJCXJldCA9IC1FSU5WQUw7CiAJCWdvdG8gdW5pbml0X3JlZ3VsYXRvcnM7CiAJ fQogCisJcmVnbWFwX3dyaXRlKGFkdjc1MTEtPnJlZ21hcCwgQURWNzUxMV9SRUdfRURJRF9JMkNf QUREUiwKKwkJICAgICBhZHY3NTExLT5pMmNfZWRpZC0+YWRkciA8PCAxKTsKKworCWFkdjc1MTEt PmkyY19wYWNrZXQgPSBpMmNfbmV3X3NlY29uZGFyeV9kZXZpY2UoaTJjLCAicGFja2V0IiwKKwkJ CQkJQURWNzUxMV9QQUNLRVRfSTJDX0FERFJfREVGQVVMVCk7CisJaWYgKCFhZHY3NTExLT5pMmNf cGFja2V0KSB7CisJCXJldCA9IC1FSU5WQUw7CisJCWdvdG8gZXJyX2kyY191bnJlZ2lzdGVyX2Vk aWQ7CisJfQorCisJcmVnbWFwX3dyaXRlKGFkdjc1MTEtPnJlZ21hcCwgQURWNzUxMV9SRUdfUEFD S0VUX0kyQ19BRERSLAorCQkgICAgIGFkdjc1MTEtPmkyY19wYWNrZXQtPmFkZHIgPDwgMSk7CisK IAlyZXQgPSBhZHY3NTExX2luaXRfY2VjX3JlZ21hcChhZHY3NTExKTsKIAlpZiAocmV0KQotCQln b3RvIGVycl9pMmNfdW5yZWdpc3Rlcl9lZGlkOworCQlnb3RvIGVycl9pMmNfdW5yZWdpc3Rlcl9w YWNrZXQ7CisKKwlyZWdtYXBfd3JpdGUoYWR2NzUxMS0+cmVnbWFwLCBBRFY3NTExX1JFR19DRUNf STJDX0FERFIsCisJCSAgICAgYWR2NzUxMS0+aTJjX2NlYy0+YWRkciA8PCAxKTsKIAogCUlOSVRf V09SSygmYWR2NzUxMS0+aHBkX3dvcmssIGFkdjc1MTFfaHBkX3dvcmspOwogCkBAIC0xMjA3LDYg KzEyMTYsOCBAQCBzdGF0aWMgaW50IGFkdjc1MTFfcHJvYmUoc3RydWN0IGkyY19jbGllbnQgKmky YywgY29uc3Qgc3RydWN0IGkyY19kZXZpY2VfaWQgKmlkKQogCWkyY191bnJlZ2lzdGVyX2Rldmlj ZShhZHY3NTExLT5pMmNfY2VjKTsKIAlpZiAoYWR2NzUxMS0+Y2VjX2NsaykKIAkJY2xrX2Rpc2Fi bGVfdW5wcmVwYXJlKGFkdjc1MTEtPmNlY19jbGspOworZXJyX2kyY191bnJlZ2lzdGVyX3BhY2tl dDoKKwlpMmNfdW5yZWdpc3Rlcl9kZXZpY2UoYWR2NzUxMS0+aTJjX3BhY2tldCk7CiBlcnJfaTJj X3VucmVnaXN0ZXJfZWRpZDoKIAlpMmNfdW5yZWdpc3Rlcl9kZXZpY2UoYWR2NzUxMS0+aTJjX2Vk aWQpOwogdW5pbml0X3JlZ3VsYXRvcnM6CkBAIC0xMjMzLDYgKzEyNDQsNyBAQCBzdGF0aWMgaW50 IGFkdjc1MTFfcmVtb3ZlKHN0cnVjdCBpMmNfY2xpZW50ICppMmMpCiAKIAljZWNfdW5yZWdpc3Rl cl9hZGFwdGVyKGFkdjc1MTEtPmNlY19hZGFwKTsKIAorCWkyY191bnJlZ2lzdGVyX2RldmljZShh ZHY3NTExLT5pMmNfcGFja2V0KTsKIAlpMmNfdW5yZWdpc3Rlcl9kZXZpY2UoYWR2NzUxMS0+aTJj X2VkaWQpOwogCiAJcmV0dXJuIDA7Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vZHJpLWRldmVsCg==