From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rodrigo Vivi Subject: [PATCH 05/13] drm/i915/cnp: add CNP gmbus support Date: Tue, 30 May 2017 15:42:55 -0700 Message-ID: <1496184183-30740-5-git-send-email-rodrigo.vivi@intel.com> References: <1496184183-30740-1-git-send-email-rodrigo.vivi@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 662B76E112 for ; Tue, 30 May 2017 22:42:52 +0000 (UTC) In-Reply-To: <1496184183-30740-1-git-send-email-rodrigo.vivi@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Jani Nikula , Daniel Vetter , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org T24gQ05QIFBDSCBiYXNlZCBwbGF0Zm9ybXMgdGhlIGdtYnVzIGlzIG9uIHRoZSBzb3V0aCBkaXNw bGF5IHRoYXQKaXMgb24gUENILiBUaGUgZXhpc3RpbmcgaW1wbGVtZW50YXRpb24gZm9yIHByZXZp b3VzIHBsYXRmb3JtcwphbHJlYWR5IGNvdmVycyB0aGUgbmVlZCBmb3IgQ05QIGV4cGVjdCBmb3Ig dGhlIHBpbiBwYWlyIGNvbmZpZ3VyYXRpb24KdGhhdCBmb2xsb3dzIHNpbWlsYXIgZGVmaW5pdGlv bnMgdGhhdCB3ZSBoYWQgb24gQlhULgoKdjI6IERvbid0IGRyb3AgIl9CWFQiIGFzIHRoZSBpbmRp Y2F0b3Igb2YgdGhlIGZpcnN0IHBsYXRmb3JtCiAgICBzdXBwb3J0aW5nIHRoaXMgcGluIG51bWJl cnMuIFN1Z2dlc3RlZCBieSBEYW5pZWwuCnYzOiBBZGQgbWlzc2luZyBlbHNlIGFuZCBmaXggcmVn aXN0ZXIgdGFibGUgc2luY2UgQ05QIEdQSU9fQ1RMCiAgICBzdGFydHMgb24gMHhDNTAxNC4KdjQ6 IEZpeCBwaW4gbnVtYmVyIGFuZCBtYXAgYWNjb3JkaW5nIHRvIHRoZSBjdXJyZW50IGF2YWlsYWJs ZSBWQlQuCiAgICBSZS1hZGQgcGluIDQgZm9yIHBvcnQgRC4gTG9zdCBkdXJpbmcgc29tZSByZWJh c2UuCgpDYzogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+CkNjOiBKYW5p IE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBSb2RyaWdvIFZp dmkgPHJvZHJpZ28udml2aUBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBBbnVzaGEgU3JpdmF0c2Eg PGFudXNoYS5zcml2YXRzYUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9yZWcuaCAgIHwgIDMgKystCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgfCAg OCArKysrKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaTJjLmMgIHwgMjAgKysrKysr KysrKysrKysrKysrLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgNiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAppbmRleCBjYjgzZmI3Li4xMzI5NDIwIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKQEAgLTI2MjYsOSArMjYyNiwxMCBAQCBlbnVtIHNrbF9k aXNwX3Bvd2VyX3dlbGxzIHsKICNkZWZpbmUgICBHTUJVU19QSU5fRFBCCQk1IC8qIFNEVk8sIEhE TUlCICovCiAjZGVmaW5lICAgR01CVVNfUElOX0RQRAkJNiAvKiBIRE1JRCAqLwogI2RlZmluZSAg IEdNQlVTX1BJTl9SRVNFUlZFRAk3IC8qIDcgcmVzZXJ2ZWQgKi8KLSNkZWZpbmUgICBHTUJVU19Q SU5fMV9CWFQJMQorI2RlZmluZSAgIEdNQlVTX1BJTl8xX0JYVAkxIC8qIEJYVCsgKGF0b20pIGFu ZCBDTlArIChiaWcgY29yZSkgKi8KICNkZWZpbmUgICBHTUJVU19QSU5fMl9CWFQJMgogI2RlZmlu ZSAgIEdNQlVTX1BJTl8zX0JYVAkzCisjZGVmaW5lICAgR01CVVNfUElOXzRfQ05QCTQKICNkZWZp bmUgICBHTUJVU19OVU1fUElOUwk3IC8qIGluY2x1ZGluZyAwICovCiAjZGVmaW5lIEdNQlVTMQkJ CV9NTUlPKGRldl9wcml2LT5ncGlvX21taW9fYmFzZSArIDB4NTEwNCkgLyogY29tbWFuZC9zdGF0 dXMgKi8KICNkZWZpbmUgICBHTUJVU19TV19DTFJfSU5UCSgxPDwzMSkKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2hkbWkuYwppbmRleCA0MTI2N2ZmLi5lYzA3NzlhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf aGRtaS5jCkBAIC0xODAyLDE5ICsxODAyLDIxIEBAIHN0YXRpYyB1OCBpbnRlbF9oZG1pX2RkY19w aW4oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCiAJc3dpdGNoIChwb3J0KSB7 CiAJY2FzZSBQT1JUX0I6Ci0JCWlmIChJU19HRU45X0xQKGRldl9wcml2KSkKKwkJaWYgKElTX0dF TjlfTFAoZGV2X3ByaXYpIHx8IEhBU19QQ0hfQ05QKGRldl9wcml2KSkKIAkJCWRkY19waW4gPSBH TUJVU19QSU5fMV9CWFQ7CiAJCWVsc2UKIAkJCWRkY19waW4gPSBHTUJVU19QSU5fRFBCOwogCQli cmVhazsKIAljYXNlIFBPUlRfQzoKLQkJaWYgKElTX0dFTjlfTFAoZGV2X3ByaXYpKQorCQlpZiAo SVNfR0VOOV9MUChkZXZfcHJpdikgfHwgSEFTX1BDSF9DTlAoZGV2X3ByaXYpKQogCQkJZGRjX3Bp biA9IEdNQlVTX1BJTl8yX0JYVDsKIAkJZWxzZQogCQkJZGRjX3BpbiA9IEdNQlVTX1BJTl9EUEM7 CiAJCWJyZWFrOwogCWNhc2UgUE9SVF9EOgotCQlpZiAoSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikp CisJCWlmIChIQVNfUENIX0NOUChkZXZfcHJpdikpCisJCQlkZGNfcGluID0gR01CVVNfUElOXzRf Q05QOworCQllbHNlIGlmIChJU19DSEVSUllWSUVXKGRldl9wcml2KSkKIAkJCWRkY19waW4gPSBH TUJVU19QSU5fRFBEX0NIVjsKIAkJZWxzZQogCQkJZGRjX3BpbiA9IEdNQlVTX1BJTl9EUEQ7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9pMmMuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2kyYy5jCmluZGV4IGI2NDAxZTguLjNlYjRhOTEgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2kyYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2kyYy5jCkBAIC02OCwxMSArNjgsMjUgQEAgc3RydWN0IGdtYnVzX3BpbiB7CiAJ W0dNQlVTX1BJTl8zX0JYVF0gPSB7ICJtaXNjIiwgR1BJT0QgfSwKIH07CiAKKy8qCisgKiBGSVhN RTogU3BlYyBtYXBzIDMtbWlzYy0weGM1NDFjIGFuZCA0LXBvcnRkLTB4YzU0MjAuCisgKiBIb3dl dmVyLCBjdXJyZW50IGF2YWlsYWJsZSBwcmUtcHJvZCBWQlQgbWFwczoKKyAqIHBvcnREIHRvIHBp biAzIHVzaW5nIDB4YzU0MjAuCisgKi8KK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZ21idXNfcGluIGdt YnVzX3BpbnNfY25wW10gPSB7CisJW0dNQlVTX1BJTl8xX0JYVF0gPSB7ICJkcGIiLCBHUElPQiB9 LAorCVtHTUJVU19QSU5fMl9CWFRdID0geyAiZHBjIiwgR1BJT0MgfSwKKwlbR01CVVNfUElOXzNf QlhUXSA9IHsgIm1pc2MiLCBHUElPRSB9LAorCVtHTUJVU19QSU5fNF9DTlBdID0geyAiZHBkIiwg R1BJT0QgfSwKK307CisKIC8qIHBpbiBpcyBleHBlY3RlZCB0byBiZSB2YWxpZCAqLwogc3RhdGlj IGNvbnN0IHN0cnVjdCBnbWJ1c19waW4gKmdldF9nbWJ1c19waW4oc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAogCQkJCQkgICAgIHVuc2lnbmVkIGludCBwaW4pCiB7Ci0JaWYgKElT X0dFTjlfTFAoZGV2X3ByaXYpKQorCWlmIChIQVNfUENIX0NOUChkZXZfcHJpdikpCisJCXJldHVy biAmZ21idXNfcGluc19jbnBbcGluXTsKKwllbHNlIGlmIChJU19HRU45X0xQKGRldl9wcml2KSkK IAkJcmV0dXJuICZnbWJ1c19waW5zX2J4dFtwaW5dOwogCWVsc2UgaWYgKElTX0dFTjlfQkMoZGV2 X3ByaXYpKQogCQlyZXR1cm4gJmdtYnVzX3BpbnNfc2tsW3Bpbl07CkBAIC04Nyw3ICsxMDEsOSBA QCBib29sIGludGVsX2dtYnVzX2lzX3ZhbGlkX3BpbihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCiB7CiAJdW5zaWduZWQgaW50IHNpemU7CiAKLQlpZiAoSVNfR0VOOV9MUChkZXZf cHJpdikpCisJaWYgKEhBU19QQ0hfQ05QKGRldl9wcml2KSkKKwkJc2l6ZSA9IEFSUkFZX1NJWkUo Z21idXNfcGluc19jbnApOworCWVsc2UgaWYgKElTX0dFTjlfTFAoZGV2X3ByaXYpKQogCQlzaXpl ID0gQVJSQVlfU0laRShnbWJ1c19waW5zX2J4dCk7CiAJZWxzZSBpZiAoSVNfR0VOOV9CQyhkZXZf cHJpdikpCiAJCXNpemUgPSBBUlJBWV9TSVpFKGdtYnVzX3BpbnNfc2tsKTsKLS0gCjEuOS4xCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZngg bWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK