From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v3 6/9] drm/i915: Make use of indexed write GMBUS feature Date: Tue, 5 Dec 2017 19:33:14 +0200 Message-ID: <20171205173313.GX10981@intel.com> References: <20171205051513.8603-1-seanpaul@chromium.org> <20171205051513.8603-7-seanpaul@chromium.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20171205051513.8603-7-seanpaul@chromium.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Sean Paul Cc: seanpaul@google.com, David Airlie , intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Rodrigo Vivi , daniel.vetter@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBEZWMgMDUsIDIwMTcgYXQgMTI6MTU6MDVBTSAtMDUwMCwgU2VhbiBQYXVsIHdyb3Rl Ogo+IFRoaXMgcGF0Y2ggZW5hYmxlcyB0aGUgaW5kZXhlZCB3cml0ZSBmZWF0dXJlIG9mIHRoZSBH TUJVUyB0byBjb25jYXRlbmF0ZQo+IDIgY29uc2VjdXRpdmUgbWVzc2FnZXMgaW50byBvbmUuIFRo ZSBjcml0ZXJpYSBmb3IgYW4gaW5kZXhlZCB3cml0ZSBpcwo+IHRoYXQgYm90aCBtZXNzYWdlcyBh cmUgd3JpdGVzLCB0aGUgZmlyc3QgaXMgbGVuZ3RoID09IDEsIGFuZCB0aGUgc2Vjb25kCj4gaXMg bGVuZ3RoID4gMC4gVGhlIGZpcnN0IG1lc3NhZ2UgaXMgc2VudCBvdXQgYnkgdGhlIEdNQlVTIGFz IHRoZSBzbGF2ZQo+IGNvbW1hbmQsIGFuZCB0aGUgc2Vjb25kIG9uZSBpcyBzZW50IHZpYSB0aGUg R01CVVMgRklGTyBhcyB1c3VhbC4KPiAKPiBDaGFuZ2VzIGluIHYzOgo+IC0gQWRkZWQgdG8gc2Vy aWVzCj4gCj4gU3VnZ2VzdGVkLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGlu dXguaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IFNlYW4gUGF1bCA8c2VhbnBhdWxAY2hyb21p dW0ub3JnPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9pMmMuYyB8IDM5ICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwg MzQgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfaTJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9p MmMuYwo+IGluZGV4IDQ5ZmRmMDlmOTkxOS4uNzM5OTAwOWFlZTBhIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2kyYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfaTJjLmMKPiBAQCAtMzczLDcgKzM3Myw4IEBAIGdtYnVzX3hmZXJfcmVhZChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHN0cnVjdCBpMmNfbXNnICptc2csCj4gIAo+ ICBzdGF0aWMgaW50Cj4gIGdtYnVzX3hmZXJfd3JpdGVfY2h1bmsoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAo+IC0JCSAgICAgICB1bnNpZ25lZCBzaG9ydCBhZGRyLCB1OCAqYnVm LCB1bnNpZ25lZCBpbnQgbGVuKQo+ICsJCSAgICAgICB1bnNpZ25lZCBzaG9ydCBhZGRyLCB1OCAq YnVmLCB1bnNpZ25lZCBpbnQgbGVuLAo+ICsJCSAgICAgICB1MzIgZ21idXMxX2luZGV4KQo+ICB7 Cj4gIAl1bnNpZ25lZCBpbnQgY2h1bmtfc2l6ZSA9IGxlbjsKPiAgCXUzMiB2YWwsIGxvb3A7Cj4g QEAgLTM4Niw3ICszODcsNyBAQCBnbWJ1c194ZmVyX3dyaXRlX2NodW5rKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCj4gIAlJOTE1X1dSSVRFX0ZXKEdNQlVTMywgdmFsKTsK PiAgCUk5MTVfV1JJVEVfRlcoR01CVVMxLAo+IC0JCSAgICAgIEdNQlVTX0NZQ0xFX1dBSVQgfAo+ ICsJCSAgICAgIGdtYnVzMV9pbmRleCB8IEdNQlVTX0NZQ0xFX1dBSVQgfAo+ICAJCSAgICAgIChj aHVua19zaXplIDw8IEdNQlVTX0JZVEVfQ09VTlRfU0hJRlQpIHwKPiAgCQkgICAgICAoYWRkciA8 PCBHTUJVU19TTEFWRV9BRERSX1NISUZUKSB8Cj4gIAkJICAgICAgR01CVVNfU0xBVkVfV1JJVEUg fCBHTUJVU19TV19SRFkpOwo+IEBAIC00MDksNyArNDEwLDggQEAgZ21idXNfeGZlcl93cml0ZV9j aHVuayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIH0KPiAgCj4gIHN0YXRp YyBpbnQKPiAtZ21idXNfeGZlcl93cml0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYsIHN0cnVjdCBpMmNfbXNnICptc2cpCj4gK2dtYnVzX3hmZXJfd3JpdGUoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LCBzdHJ1Y3QgaTJjX21zZyAqbXNnLAo+ICsJCSB1MzIgZ21i dXMxX2luZGV4KQo+ICB7Cj4gIAl1OCAqYnVmID0gbXNnLT5idWY7Cj4gIAl1bnNpZ25lZCBpbnQg dHhfc2l6ZSA9IG1zZy0+bGVuOwo+IEBAIC00MTksNyArNDIxLDggQEAgZ21idXNfeGZlcl93cml0 ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHN0cnVjdCBpMmNfbXNnICptc2cp Cj4gIAlkbyB7Cj4gIAkJbGVuID0gbWluKHR4X3NpemUsIEdNQlVTX0JZVEVfQ09VTlRfTUFYKTsK PiAgCj4gLQkJcmV0ID0gZ21idXNfeGZlcl93cml0ZV9jaHVuayhkZXZfcHJpdiwgbXNnLT5hZGRy LCBidWYsIGxlbik7Cj4gKwkJcmV0ID0gZ21idXNfeGZlcl93cml0ZV9jaHVuayhkZXZfcHJpdiwg bXNnLT5hZGRyLCBidWYsIGxlbiwKPiArCQkJCQkgICAgIGdtYnVzMV9pbmRleCk7Cj4gIAkJaWYg KHJldCkKPiAgCQkJcmV0dXJuIHJldDsKPiAgCj4gQEAgLTQzMCw2ICs0MzMsMTQgQEAgZ21idXNf eGZlcl93cml0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHN0cnVjdCBpMmNf bXNnICptc2cpCj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiArc3RhdGljIGludAo+ICtnbWJ1c194 ZmVyX2luZGV4X3dyaXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTggY21k LAo+ICsJCSAgICAgICBzdHJ1Y3QgaTJjX21zZyAqbXNnKQo+ICt7Cj4gKwl1OCBnbWJ1czFfaW5k ZXggPSBHTUJVU19DWUNMRV9JTkRFWCB8IChjbWQgPDwgR01CVVNfU0xBVkVfSU5ERVhfU0hJRlQp Owo+ICsJcmV0dXJuIGdtYnVzX3hmZXJfd3JpdGUoZGV2X3ByaXYsIG1zZywgZ21idXMxX2luZGV4 KTsKPiArfQoKSW5zdGVhZCBvZiBhIGR1cGxpY2F0aW5nIHRoZSBlbnRpcmUgdGhpbmcgSSdkIGp1 c3QKCi0gZ21idXNfeGZlcl9pbmRleF9yZWFkCisgZ21idXNfeGZlcl9pbmRleAogIHsKICAuLi4K KyAJaWYgKG1zZ3NbMV0uZmxhZ3MgJiBJMkNfTV9SRCkKCQlnbWJ1c194ZmVyX3JlYWQoKQorIAll bHNlCisgCQlnbWJ1c194ZmVyX3dyaXRlKCkKICAuLi4KICB9CgpNYXRjaGVzIHRoZSBjdXJyZW50 IHBhdHRlcm4gYmV0dGVyIChubyAnY21kJyBwYXNzZWQgaW4pLCBhbmQKd2lsbCBnaXZlIHVzIHRo ZSAyIGJ5dGUgaW5kZXggZm9yIGZyZWUgYXMgd2VsbC4KCj4gKwo+ICAvKgo+ICAgKiBUaGUgZ21i dXMgY29udHJvbGxlciBjYW4gY29tYmluZSBhIDEgb3IgMiBieXRlIHdyaXRlIHdpdGggYSByZWFk IHRoYXQKPiAgICogaW1tZWRpYXRlbHkgZm9sbG93cyBpdCBieSB1c2luZyBhbiAiSU5ERVgiIGN5 Y2xlLgo+IEBAIC00NDQsNiArNDU1LDIwIEBAIGdtYnVzX2lzX2luZGV4X3JlYWQoc3RydWN0IGky Y19tc2cgKm1zZ3MsIGludCBpLCBpbnQgbnVtKQo+ICAJCShtc2dzW2kgKyAxXS5mbGFncyAmIEky Q19NX1JEKSk7Cj4gIH0KPiAgCj4gKy8qCj4gKyAqIFRoZSBnbWJ1cyBjb250cm9sbGVyIGNhbiBj b21iaW5lIGEgMi1tc2cgd3JpdGUgaW50byBhIHNpbmdsZSB3cml0ZSB0aGF0Cj4gKyAqIGltbWVk aWF0ZWx5IGZvbGxvd3MgaXQgYnkgdXNpbmcgYW4gIklOREVYIiBjeWNsZS4KPiArICovCj4gK3N0 YXRpYyBib29sCj4gK2dtYnVzX2lzX2luZGV4X3dyaXRlKHN0cnVjdCBpMmNfbXNnICptc2dzLCBp bnQgaSwgaW50IG51bSkKPiArewo+ICsJcmV0dXJuIChpICsgMSA8IG51bSAmJgo+ICsJCW1zZ3Nb aV0uYWRkciA9PSBtc2dzW2kgKyAxXS5hZGRyICYmCj4gKwkJIShtc2dzW2ldLmZsYWdzICYgSTJD X01fUkQpICYmCj4gKwkJIShtc2dzW2kgKyAxXS5mbGFncyAmIEkyQ19NX1JEKSAmJgo+ICsJCSht c2dzW2ldLmxlbiA9PSAxIHx8IG1zZ3NbaSArIDFdLmxlbiA+IDApKTsKCkhtbS4gV2UgZG9uJ3Qg aGF2ZSB0aGUgbGVuIGNoZWNrIGZvciB0aGUgc2Vjb25kIG1zZyBmb3IgcmVhZHMuIEkgd29uZGVy CmlmIGdtYnVzIGNhbiBhY3R1YWxseSBkbyBhIHplcm8gbGVuZ3RoICJyZWFkL3dyaXRlIj8KCj4g K30KPiArCj4gIHN0YXRpYyBpbnQKPiAgZ21idXNfeGZlcl9pbmRleF9yZWFkKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiwgc3RydWN0IGkyY19tc2cgKm1zZ3MpCj4gIHsKPiBAQCAt NDg5LDEwICs1MTQsMTQgQEAgZG9fZ21idXNfeGZlcihzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmFkYXB0 ZXIsIHN0cnVjdCBpMmNfbXNnICptc2dzLCBpbnQgbnVtKQo+ICAJCWlmIChnbWJ1c19pc19pbmRl eF9yZWFkKG1zZ3MsIGksIG51bSkpIHsKPiAgCQkJcmV0ID0gZ21idXNfeGZlcl9pbmRleF9yZWFk KGRldl9wcml2LCAmbXNnc1tpXSk7Cj4gIAkJCWluYyA9IDI7IC8qIGFuIGluZGV4IHJlYWQgaXMg dHdvIG1zZ3MgKi8KPiArCQl9IGVsc2UgaWYgKGdtYnVzX2lzX2luZGV4X3dyaXRlKG1zZ3MsIGks IG51bSkpIHsKPiArCQkJcmV0ID0gZ21idXNfeGZlcl9pbmRleF93cml0ZShkZXZfcHJpdiwgbXNn c1tpXS5idWZbMF0sCj4gKwkJCQkJJm1zZ3NbaSArIDFdKTsKPiArCQkJaW5jID0gMjsgLyogYW4g aW5kZXggd3JpdGUgaXMgdHdvIG1zZ3MgKi8KPiAgCQl9IGVsc2UgaWYgKG1zZ3NbaV0uZmxhZ3Mg JiBJMkNfTV9SRCkgewo+ICAJCQlyZXQgPSBnbWJ1c194ZmVyX3JlYWQoZGV2X3ByaXYsICZtc2dz W2ldLCAwKTsKPiAgCQl9IGVsc2Ugewo+IC0JCQlyZXQgPSBnbWJ1c194ZmVyX3dyaXRlKGRldl9w cml2LCAmbXNnc1tpXSk7Cj4gKwkJCXJldCA9IGdtYnVzX3hmZXJfd3JpdGUoZGV2X3ByaXYsICZt c2dzW2ldLCAwKTsKPiAgCQl9Cj4gIAo+ICAJCWlmICghcmV0KQo+IC0tIAo+IDIuMTUuMC41MzEu ZzJjY2IzMDEyYzktZ29vZwo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2ludGVsLWdmeAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbCBPVEMKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==