From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 2/2] drm/i915: abstract i2c bit banging fallback in gmbus xfer Date: Tue, 1 Dec 2015 17:52:20 +0200 Message-ID: <20151201155220.GG4437@intel.com> References: <1448980166-23055-1-git-send-email-jani.nikula@intel.com> <1448980166-23055-2-git-send-email-jani.nikula@intel.com> <20151201145720.GE4437@intel.com> <87a8pu41s9.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 17D526E870 for ; Tue, 1 Dec 2015 07:52:24 -0800 (PST) Content-Disposition: inline In-Reply-To: <87a8pu41s9.fsf@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Jani Nikula Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBEZWMgMDEsIDIwMTUgYXQgMDU6Mzg6MzBQTSArMDIwMCwgSmFuaSBOaWt1bGEgd3Jv dGU6Cj4gT24gVHVlLCAwMSBEZWMgMjAxNSwgVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxh QGxpbnV4LmludGVsLmNvbT4gd3JvdGU6Cj4gPiBPbiBUdWUsIERlYyAwMSwgMjAxNSBhdCAwNDoy OToyNlBNICswMjAwLCBKYW5pIE5pa3VsYSB3cm90ZToKPiA+PiBDaG9vc2UgYmV0d2VlbiBpMmMg Yml0IGJhbmdpbmcgYW5kIGdtYnVzIGluIGEgbmV3IGhpZ2hlciBsZXZlbCBmdW5jdGlvbiwKPiA+ PiBhbmQgbGV0IHRoZSBpMmMgY29yZSByZXRyeSB0aGUgZmlyc3QgdGltZSB3ZSBmYWxsIGJhY2sg dG8gYml0IGJhbmdpbmcuCj4gPj4gCj4gPj4gU2lnbmVkLW9mZi1ieTogSmFuaSBOaWt1bGEgPGph bmkubmlrdWxhQGludGVsLmNvbT4KPiA+PiAtLS0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfaTJjLmMgfCAzOSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0K PiA+PiAgMSBmaWxlIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQo+ ID4+IAo+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9pMmMuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2kyYy5jCj4gPj4gaW5kZXggY2NiNTIyYzE3NmJk Li5lMjZlMjJhNzJlM2IgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfaTJjLmMKPiA+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9pMmMuYwo+ID4+ IEBAIC00NzIsOSArNDcyLDcgQEAgZ21idXNfeGZlcl9pbmRleF9yZWFkKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiwgc3RydWN0IGkyY19tc2cgKm1zZ3MpCj4gPj4gIH0KPiA+PiAg Cj4gPj4gIHN0YXRpYyBpbnQKPiA+PiAtZ21idXNfeGZlcihzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmFk YXB0ZXIsCj4gPj4gLQkgICBzdHJ1Y3QgaTJjX21zZyAqbXNncywKPiA+PiAtCSAgIGludCBudW0p Cj4gPj4gK2RvX2dtYnVzX3hmZXIoc3RydWN0IGkyY19hZGFwdGVyICphZGFwdGVyLCBzdHJ1Y3Qg aTJjX21zZyAqbXNncywgaW50IG51bSkKPiA+PiAgewo+ID4+ICAJc3RydWN0IGludGVsX2dtYnVz ICpidXMgPSBjb250YWluZXJfb2YoYWRhcHRlciwKPiA+PiAgCQkJCQkgICAgICAgc3RydWN0IGlu dGVsX2dtYnVzLAo+ID4+IEBAIC00ODMsMTQgKzQ4MSw2IEBAIGdtYnVzX3hmZXIoc3RydWN0IGky Y19hZGFwdGVyICphZGFwdGVyLAo+ID4+ICAJaW50IGkgPSAwLCBpbmMsIHRyeSA9IDA7Cj4gPj4g IAlpbnQgcmV0ID0gMDsKPiA+PiAgCj4gPj4gLQlpbnRlbF9kaXNwbGF5X3Bvd2VyX2dldChkZXZf cHJpdiwgUE9XRVJfRE9NQUlOX0dNQlVTKTsKPiA+PiAtCW11dGV4X2xvY2soJmRldl9wcml2LT5n bWJ1c19tdXRleCk7Cj4gPj4gLQo+ID4+IC0JaWYgKGJ1cy0+Zm9yY2VfYml0KSB7Cj4gPj4gLQkJ cmV0ID0gaTJjX2JpdF9hbGdvLm1hc3Rlcl94ZmVyKGFkYXB0ZXIsIG1zZ3MsIG51bSk7Cj4gPj4g LQkJZ290byBvdXQ7Cj4gPj4gLQl9Cj4gPj4gLQo+ID4+ICByZXRyeToKPiA+PiAgCUk5MTVfV1JJ VEUoR01CVVMwLCBidXMtPnJlZzApOwo+ID4+ICAKPiA+PiBAQCAtNTg1LDEzICs1NzUsMzQgQEAg dGltZW91dDoKPiA+PiAgCQkgYnVzLT5hZGFwdGVyLm5hbWUsIGJ1cy0+cmVnMCAmIDB4ZmYpOwo+ ID4+ICAJSTkxNV9XUklURShHTUJVUzAsIDApOwo+ID4+ICAKPiA+PiAtCS8qIEhhcmR3YXJlIG1h eSBub3Qgc3VwcG9ydCBHTUJVUyBvdmVyIHRoZXNlIHBpbnM/IFRyeSBHUElPIGJpdGJhbmdpbmcg aW5zdGVhZC4gKi8KPiA+PiArCS8qCj4gPj4gKwkgKiBIYXJkd2FyZSBtYXkgbm90IHN1cHBvcnQg R01CVVMgb3ZlciB0aGVzZSBwaW5zPyBUcnkgR1BJTyBiaXRiYW5naW5nCj4gPj4gKwkgKiBpbnN0 ZWFkLiBVc2UgRUFHQUlOIHRvIGhhdmUgaTJjIGNvcmUgcmV0cnkuCj4gPj4gKwkgKi8KPiA+PiAg CWJ1cy0+Zm9yY2VfYml0ID0gMTsKPiA+PiAtCXJldCA9IGkyY19iaXRfYWxnby5tYXN0ZXJfeGZl cihhZGFwdGVyLCBtc2dzLCBudW0pOwo+ID4+ICsJcmV0ID0gLUVBR0FJTjsKPiA+Cj4gPiBUaGlz IGRvZXMgbWVhbiB3ZSdyZSBsZWZ0IHRvIHRoZSBtZXJjeSBvZiB0aGUgdGltZW91dCBoYW5kbGlu ZyBpbiB0aGUKPiA+IGkyYyBjb3JlLiBUaGF0IGlzIGlmIG91ciBnbWJ1cyBhdHRlbXB0IHRha2Vz IHRvbyBsb25nLCB3ZSBtYXkgbmV2ZXIKPiA+IGdldCBhIGNoYW5jZSB0byByZXRyeSB3aXRoIGJp dCBiYW5naW5nLiBOb3Qgc3VyZSBpZiB0aGF0J3MgYSByZWFsCj4gPiBjb25jZXJuIG9yIG5vdC4K PiAKPiBJSVVDIHRoZSBsb25nZXN0IGl0IGNhbiB0YWtlIHRvIHRyYW5zZmVyIDQgYnl0ZXMgd2l0 aG91dCB0aW1pbmcgb3V0IGlzCj4ganVzdCB1bmRlciA1MCBtcy4gVGhlIGkyYyBjb3JlIHVzZSBh IGRlZmF1bHQgdGltZW91dCBvZiAxMDAwIG1zLiBTbyBpZgo+IHdlIGZpcnN0IHN1Y2Nlc2Z1bGx5 LCBidXQgc2xvd2x5IG1hbmFnZSB0byB0cmFuc2ZlciBxdWl0ZSBhIGJpdCAod2VsbCwKPiBhdCBs ZWFzdCA4MCBieXRlcywgYWxtb3N0IGJ1dCBub3QgcXVpdGUgdGltaW5nIG91dCksIGFuZCB0aGVu IHRpbWUgb3V0LAo+IGkyYyBjb3JlIHdvbid0IHRyeSBhZ2Fpbi4KPiAKPiBJIGRvIG5vdCB0aGlu ayB0aGlzIGlzIGEgcmVhbCBjb25jZXJuLCBidXQgaWYgaXQgaXMsIHdlIGNhbiBpbmNyZWFzZSB0 aGUKPiBhZGFwdGVyLT50aW1lb3V0IGluIG91ciBnbWJ1cyBzZXR1cCBjb2RlLgoKSG1tLiBJIHdh cyB0aGlua2luZyBpdCdzIHNob3J0ZXIgdGhhbiB0aGF0LCBidXQgSSBndWVzcyBJIHdhcyBtaXhp bmcgaXQKdXAgd2l0aCB0aGUgaTJjLWJpdC1hbGdvIHRpbWVvdXQgd2hpY2ggaXMgMi4ybXMgKHBl ciBzb21lIEREQyBzcGVjCklJUkMpLgoKMSBzZWNvbmQgc2VlbXMgcGxlbnR5IGVub3VnaCB0byBt ZS4KClJldmlld2VkLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50 ZWwuY29tPgoKPiAKPiBCUiwKPiBKYW5pLgo+IAo+IAo+IAo+ID4KPiA+IE90aGVyd2lzZSBsZ3Rt Lgo+ID4KPiA+PiAgCj4gPj4gIG91dDoKPiA+PiAtCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmdt YnVzX211dGV4KTsKPiA+PiArCXJldHVybiByZXQ7Cj4gPj4gK30KPiA+PiArCj4gPj4gK3N0YXRp YyBpbnQKPiA+PiArZ21idXNfeGZlcihzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmFkYXB0ZXIsIHN0cnVj dCBpMmNfbXNnICptc2dzLCBpbnQgbnVtKQo+ID4+ICt7Cj4gPj4gKwlzdHJ1Y3QgaW50ZWxfZ21i dXMgKmJ1cyA9IGNvbnRhaW5lcl9vZihhZGFwdGVyLCBzdHJ1Y3QgaW50ZWxfZ21idXMsCj4gPj4g KwkJCQkJICAgICAgIGFkYXB0ZXIpOwo+ID4+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2ID0gYnVzLT5kZXZfcHJpdjsKPiA+PiArCWludCByZXQ7Cj4gPj4gKwo+ID4+ICsJaW50 ZWxfZGlzcGxheV9wb3dlcl9nZXQoZGV2X3ByaXYsIFBPV0VSX0RPTUFJTl9HTUJVUyk7Cj4gPj4g KwltdXRleF9sb2NrKCZkZXZfcHJpdi0+Z21idXNfbXV0ZXgpOwo+ID4+ICsKPiA+PiArCWlmIChi dXMtPmZvcmNlX2JpdCkKPiA+PiArCQlyZXQgPSBpMmNfYml0X2FsZ28ubWFzdGVyX3hmZXIoYWRh cHRlciwgbXNncywgbnVtKTsKPiA+PiArCWVsc2UKPiA+PiArCQlyZXQgPSBkb19nbWJ1c194ZmVy KGFkYXB0ZXIsIG1zZ3MsIG51bSk7Cj4gPj4gIAo+ID4+ICsJbXV0ZXhfdW5sb2NrKCZkZXZfcHJp di0+Z21idXNfbXV0ZXgpOwo+ID4+ICAJaW50ZWxfZGlzcGxheV9wb3dlcl9wdXQoZGV2X3ByaXYs IFBPV0VSX0RPTUFJTl9HTUJVUyk7Cj4gPj4gIAo+ID4+ICAJcmV0dXJuIHJldDsKPiA+PiAtLSAK PiA+PiAyLjEuNAo+ID4+IAo+ID4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCj4gPj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ID4+IEludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPiA+PiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cj4gCj4gLS0gCj4gSmFuaSBOaWt1bGEsIEludGVsIE9w ZW4gU291cmNlIFRlY2hub2xvZ3kgQ2VudGVyCgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsIE9U QwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=