From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v4 2/2] drm/i915/gmbus: Enable burst read Date: Wed, 9 May 2018 19:15:03 +0530 Message-ID: <1525873503-5458-3-git-send-email-ramalingam.c@intel.com> References: <1525873503-5458-1-git-send-email-ramalingam.c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6BE0F6E861 for ; Wed, 9 May 2018 13:53:07 +0000 (UTC) In-Reply-To: <1525873503-5458-1-git-send-email-ramalingam.c@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, jani.nikula@linux.intel.com, rodrigo.vivi@intel.com, ville.syrjala@linux.intel.com List-Id: intel-gfx@lists.freedesktop.org U3VwcG9ydCBmb3IgQnVyc3QgcmVhZCBpbiBIVyBpcyBhZGRlZCBmb3IgSERDUDIuMiBjb21wbGlh bmNlCnJlcXVpcmVtZW50LgoKVGhpcyBwYXRjaCBlbmFibGVzIHRoZSBidXJzdCByZWFkIGZvciBh bGwgdGhlIGdtYnVzIHJlYWQgb2YgbW9yZSB0aGFuCjUxMUJ5dGVzLCBvbiBjYXBhYmxlIHBsYXRm b3Jtcy4KCnYyOgogIEV4dHJhIGxpbmUgaXMgcmVtb3ZlZC4KdjM6CiAgTWFjcm8gaXMgYWRkZWQg Zm9yIGRldGVjdGluZyB0aGUgQlVSU1RfUkVBRCBTdXBwb3J0IFtKYW5pXQogIFJ1bnRpbWUgZGV0 ZWN0aW9uIG9mIHRoZSBuZWVkIGZvciBidXJzdF9yZWFkIFtKYW5pXQogIENhbGN1bGF0aW9uIGVu aGFuY2VtZW50Lgp2NDoKICBHTUJVUzAgcmVnIHZhbCBpcyBwYXNzZWQgZnJvbSBjYWxsZXIgW3Zp bGxlXQogIFJlbW92ZWQgYSBleHRyYSB2YXIgW3ZpbGxlXQogIEV4dHJhIGJyYWNrZXRzIGFyZSBy ZW1vdmVkIFt2aWxsZV0KICBJbXBsZW1lbnRlZCB0aGUgaGFuZGxpbmcgb2YgNTEyQnl0ZXMgQnVy c3QgUmVhZC4KClNpZ25lZC1vZmYtYnk6IFJhbWFsaW5nYW0gQyA8cmFtYWxpbmdhbS5jQGludGVs LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICB8ICAzICsrKwogZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9pMmMuYyB8IDUyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0t LS0KIDMgZmlsZXMgY2hhbmdlZCwgNDYgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggMDI4NjkxMTA4MTI1Li4xNDI5M2ZjMWExNDIgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMjU1Miw2ICsyNTUyLDkgQEAgaW50ZWxfaW5mbyhj b25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAgKi8KICNkZWZpbmUgSEFT X0FVWF9JUlEoZGV2X3ByaXYpICAgdHJ1ZQogI2RlZmluZSBIQVNfR01CVVNfSVJRKGRldl9wcml2 KSAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA0KQorI2RlZmluZSBIQVNfR01CVVNfQlVSU1RfUkVB RChkZXZfcHJpdikgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTAgfHwgXAorCQkJCQlJU19HRU1J TklMQUtFKGRldl9wcml2KSB8fCBcCisJCQkJCUlTX0tBQllMQUtFKGRldl9wcml2KSkKIAogLyog V2l0aCB0aGUgOTQ1IGFuZCBsYXRlciwgWSB0aWxpbmcgZ290IGFkanVzdGVkIHNvIHRoYXQgaXQg d2FzIDMyIDEyOC1ieXRlCiAgKiByb3dzLCB3aGljaCBjaGFuZ2VkIHRoZSBhbGlnbm1lbnQgcmVx dWlyZW1lbnRzIGFuZCBmZW5jZSBwcm9ncmFtbWluZy4KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCmlu ZGV4IGRmOTk4YzEwYzQ4ZS4uMTE2NmEyNGFmZjQ4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgK QEAgLTI5OTYsNiArMjk5Niw3IEBAIGVudW0gaTkxNV9wb3dlcl93ZWxsX2lkIHsKICNkZWZpbmUg ICBHTUJVU19SQVRFXzQwMEtIWgkoMjw8OCkgLyogcmVzZXJ2ZWQgb24gUGluZXZpZXcgKi8KICNk ZWZpbmUgICBHTUJVU19SQVRFXzFNSFoJKDM8PDgpIC8qIHJlc2VydmVkIG9uIFBpbmV2aWV3ICov CiAjZGVmaW5lICAgR01CVVNfSE9MRF9FWFQJKDE8PDcpIC8qIDMwMG5zIGhvbGQgdGltZSwgcnN2 ZCBvbiBQaW5ldmlldyAqLworI2RlZmluZSAgIEdNQlVTX0JZVEVfQ05UX09WRVJSSURFICgxPDw2 KQogI2RlZmluZSAgIEdNQlVTX1BJTl9ESVNBQkxFRAkwCiAjZGVmaW5lICAgR01CVVNfUElOX1NT QwkJMQogI2RlZmluZSAgIEdNQlVTX1BJTl9WR0FEREMJMgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaTJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9pMmMu YwppbmRleCAxYzBmNmI1NmIyMDkuLjJiNTlmOGRiNDJmMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaTJjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf aTJjLmMKQEAgLTM3MSwxMiArMzcxLDMwIEBAIHVuc2lnbmVkIGludCBnbWJ1c19tYXhfeGZlcl9z aXplKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHN0YXRpYyBpbnQKIGdtYnVz X3hmZXJfcmVhZF9jaHVuayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCSAg ICAgIHVuc2lnbmVkIHNob3J0IGFkZHIsIHU4ICpidWYsIHVuc2lnbmVkIGludCBsZW4sCi0JCSAg ICAgIHUzMiBnbWJ1czFfaW5kZXgpCisJCSAgICAgIHUzMiBnbWJ1czBfcmVnLCB1MzIgZ21idXMx X2luZGV4KQogeworCXVuc2lnbmVkIGludCBzaXplID0gbGVuOworCWJvb2wgYnVyc3RfcmVhZCA9 IGxlbiA+IGdtYnVzX21heF94ZmVyX3NpemUoZGV2X3ByaXYpOworCWJvb2wgZXh0cmFfYnl0ZV9h ZGRlZCA9IGZhbHNlOworCisJaWYgKGJ1cnN0X3JlYWQpIHsKKworCQkvKgorCQkgKiBBcyBwZXIg SFcgU3BlYywgZm9yIDUxMkJ5dGVzIG5lZWQgdG8gcmVhZCBleHRyYSBCeXRlIGFuZAorCQkgKiBJ Z25vcmUgdGhlIGV4dHJhIGJ5dGUgcmVhZC4KKwkJICovCisJCWlmIChsZW4gPT0gNTEyKSB7CisJ CQlleHRyYV9ieXRlX2FkZGVkID0gdHJ1ZTsKKwkJCWxlbisrOworCQl9CisJCXNpemUgPSBsZW4g JSAyNTYgKyAyNTY7CisJCUk5MTVfV1JJVEVfRlcoR01CVVMwLCBnbWJ1czBfcmVnIHwgR01CVVNf QllURV9DTlRfT1ZFUlJJREUpOworCX0KKwogCUk5MTVfV1JJVEVfRlcoR01CVVMxLAogCQkgICAg ICBnbWJ1czFfaW5kZXggfAogCQkgICAgICBHTUJVU19DWUNMRV9XQUlUIHwKLQkJICAgICAgKGxl biA8PCBHTUJVU19CWVRFX0NPVU5UX1NISUZUKSB8CisJCSAgICAgIChzaXplIDw8IEdNQlVTX0JZ VEVfQ09VTlRfU0hJRlQpIHwKIAkJICAgICAgKGFkZHIgPDwgR01CVVNfU0xBVkVfQUREUl9TSElG VCkgfAogCQkgICAgICBHTUJVU19TTEFWRV9SRUFEIHwgR01CVVNfU1dfUkRZKTsKIAl3aGlsZSAo bGVuKSB7CkBAIC0zODksOSArNDA3LDE2IEBAIGdtYnVzX3hmZXJfcmVhZF9jaHVuayhzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAKIAkJdmFsID0gSTkxNV9SRUFEX0ZXKEdNQlVT Myk7CiAJCWRvIHsKKwkJCWlmIChleHRyYV9ieXRlX2FkZGVkICYmIGxlbiA9PSAxKQorCQkJCWJy ZWFrOworCiAJCQkqYnVmKysgPSB2YWwgJiAweGZmOwogCQkJdmFsID4+PSA4OwogCQl9IHdoaWxl ICgtLWxlbiAmJiArK2xvb3AgPCA0KTsKKworCQlpZiAoYnVyc3RfcmVhZCAmJiBsZW4gPT0gc2l6 ZSAtIDQpCisJCQkvKiBSZXNldCB0aGUgb3ZlcnJpZGUgYml0ICovCisJCQlJOTE1X1dSSVRFX0ZX KEdNQlVTMCwgZ21idXMwX3JlZyk7CiAJfQogCiAJcmV0dXJuIDA7CkBAIC0zOTksNyArNDI0LDcg QEAgZ21idXNfeGZlcl9yZWFkX2NodW5rKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwKIAogc3RhdGljIGludAogZ21idXNfeGZlcl9yZWFkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiwgc3RydWN0IGkyY19tc2cgKm1zZywKLQkJdTMyIGdtYnVzMV9pbmRleCkKKwkJ dTMyIGdtYnVzMF9yZWcsIHUzMiBnbWJ1czFfaW5kZXgpCiB7CiAJdTggKmJ1ZiA9IG1zZy0+YnVm OwogCXVuc2lnbmVkIGludCByeF9zaXplID0gbXNnLT5sZW47CkBAIC00MDcsMTAgKzQzMiwxMyBA QCBnbWJ1c194ZmVyX3JlYWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBzdHJ1 Y3QgaTJjX21zZyAqbXNnLAogCWludCByZXQ7CiAKIAlkbyB7Ci0JCWxlbiA9IG1pbihyeF9zaXpl LCBnbWJ1c19tYXhfeGZlcl9zaXplKGRldl9wcml2KSk7CisJCWlmIChIQVNfR01CVVNfQlVSU1Rf UkVBRChkZXZfcHJpdikpCisJCQlsZW4gPSByeF9zaXplOworCQllbHNlCisJCQlsZW4gPSBtaW4o cnhfc2l6ZSwgZ21idXNfbWF4X3hmZXJfc2l6ZShkZXZfcHJpdikpOwogCi0JCXJldCA9IGdtYnVz X3hmZXJfcmVhZF9jaHVuayhkZXZfcHJpdiwgbXNnLT5hZGRyLAotCQkJCQkgICAgYnVmLCBsZW4s IGdtYnVzMV9pbmRleCk7CisJCXJldCA9IGdtYnVzX3hmZXJfcmVhZF9jaHVuayhkZXZfcHJpdiwg bXNnLT5hZGRyLCBidWYsIGxlbiwKKwkJCQkJICAgIGdtYnVzMF9yZWcsIGdtYnVzMV9pbmRleCk7 CiAJCWlmIChyZXQpCiAJCQlyZXR1cm4gcmV0OwogCkBAIC00OTgsNyArNTI2LDggQEAgZ21idXNf aXNfaW5kZXhfeGZlcihzdHJ1Y3QgaTJjX21zZyAqbXNncywgaW50IGksIGludCBudW0pCiB9CiAK IHN0YXRpYyBpbnQKLWdtYnVzX2luZGV4X3hmZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LCBzdHJ1Y3QgaTJjX21zZyAqbXNncykKK2dtYnVzX2luZGV4X3hmZXIoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBzdHJ1Y3QgaTJjX21zZyAqbXNncywKKwkJIHUzMiBn bWJ1czBfcmVnKQogewogCXUzMiBnbWJ1czFfaW5kZXggPSAwOwogCXUzMiBnbWJ1czUgPSAwOwpA QCAtNTE2LDcgKzU0NSw4IEBAIGdtYnVzX2luZGV4X3hmZXIoc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2LCBzdHJ1Y3QgaTJjX21zZyAqbXNncykKIAkJSTkxNV9XUklURV9GVyhHTUJV UzUsIGdtYnVzNSk7CiAKIAlpZiAobXNnc1sxXS5mbGFncyAmIEkyQ19NX1JEKQotCQlyZXQgPSBn bWJ1c194ZmVyX3JlYWQoZGV2X3ByaXYsICZtc2dzWzFdLCBnbWJ1czFfaW5kZXgpOworCQlyZXQg PSBnbWJ1c194ZmVyX3JlYWQoZGV2X3ByaXYsICZtc2dzWzFdLCBnbWJ1czBfcmVnLAorCQkJCSAg ICAgIGdtYnVzMV9pbmRleCk7CiAJZWxzZQogCQlyZXQgPSBnbWJ1c194ZmVyX3dyaXRlKGRldl9w cml2LCAmbXNnc1sxXSwgZ21idXMxX2luZGV4KTsKIApAQCAtNTUxLDEwICs1ODEsMTIgQEAgZG9f Z21idXNfeGZlcihzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmFkYXB0ZXIsIHN0cnVjdCBpMmNfbXNnICpt c2dzLCBpbnQgbnVtLAogCWZvciAoOyBpIDwgbnVtOyBpICs9IGluYykgewogCQlpbmMgPSAxOwog CQlpZiAoZ21idXNfaXNfaW5kZXhfeGZlcihtc2dzLCBpLCBudW0pKSB7Ci0JCQlyZXQgPSBnbWJ1 c19pbmRleF94ZmVyKGRldl9wcml2LCAmbXNnc1tpXSk7CisJCQlyZXQgPSBnbWJ1c19pbmRleF94 ZmVyKGRldl9wcml2LCAmbXNnc1tpXSwKKwkJCQkJICAgICAgIGdtYnVzMF9zb3VyY2UgfCBidXMt PnJlZzApOwogCQkJaW5jID0gMjsgLyogYW4gaW5kZXggdHJhbnNtaXNzaW9uIGlzIHR3byBtc2dz ICovCiAJCX0gZWxzZSBpZiAobXNnc1tpXS5mbGFncyAmIEkyQ19NX1JEKSB7Ci0JCQlyZXQgPSBn bWJ1c194ZmVyX3JlYWQoZGV2X3ByaXYsICZtc2dzW2ldLCAwKTsKKwkJCXJldCA9IGdtYnVzX3hm ZXJfcmVhZChkZXZfcHJpdiwgJm1zZ3NbaV0sCisJCQkJCSAgICAgIGdtYnVzMF9zb3VyY2UgfCBi dXMtPnJlZzAsIDApOwogCQl9IGVsc2UgewogCQkJcmV0ID0gZ21idXNfeGZlcl93cml0ZShkZXZf cHJpdiwgJm1zZ3NbaV0sIDApOwogCQl9Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==