From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Keeping Subject: Re: [RFC/PATCH] drm/rockchip: don't wait for vblank if fb hasn't changed Date: Wed, 13 Jan 2016 14:34:25 +0000 Message-ID: <20160113143425.363ce07a.john@metanate.com> References: <1452689614-6570-1-git-send-email-john@metanate.com> <20160113142320.GQ19130@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20160113142320.GQ19130@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: linux-rockchip.vger.kernel.org T24gV2VkLCAxMyBKYW4gMjAxNiAxNToyMzoyMCArMDEwMCwgRGFuaWVsIFZldHRlciB3cm90ZToK Cj4gT24gV2VkLCBKYW4gMTMsIDIwMTYgYXQgMTI6NTM6MzRQTSArMDAwMCwgSm9obiBLZWVwaW5n IHdyb3RlOgo+ID4gQXMgY29tbWVudGVkIGluIGRybV9hdG9taWNfaGVscGVyX3dhaXRfZm9yX3Zi bGFua3MoKSwgdXNlcnNwYWNlCj4gPiByZWxpZXMgb24gY3Vyc29yIGlvY3RscyBiZWluZyB1bnN5 bmNlZC4gIENvbnZlcnRpbmcgdGhlIHJvY2tjaGlwCj4gPiBkcml2ZXIgdG8gYXRvbWljIGhhcyBz aWduaWZpY2FudGx5IGltcGFjdGVkIGN1cnNvciBwZXJmb3JtYW5jZSBieQo+ID4gbWFraW5nIGV2 ZXJ5IGN1cnNvciB1cGRhdGUgd2FpdCBmb3IgdmJsYW5rLgo+ID4gCj4gPiBCeSBza2lwcGluZyB0 aGUgdmJsYW5rIHN5bmMgd2hlbiB0aGUgZnJhbWVidWZmZXIgaGFzIG5vdCBjaGFuZ2VkCj4gPiAo YXMgaXMgZG9uZSBpbiBkcm1fYXRvbWljX2hlbHBlcl93YWl0X2Zvcl92YmxhbmtzKCkpIHdlIGNh biBhdm9pZAo+ID4gdGhpcyBmb3IgdGhlIGNvbW1vbiBjYXNlIG9mIG1vdmluZyB0aGUgY3Vyc29y IGFuZCBvbmx5IG5lZWQgdG8KPiA+IGRlbGF5IHRoZSBjdXJzb3IgaW9jdGwgd2hlbiB0aGUgY3Vy c29yIGljb24gY2hhbmdlcy4KPiA+IAo+ID4gSSBvcmlnaW5hbGx5IGluc2VydGVkIGEgY2hlY2sg b24gbGVnYWN5X2N1cnNvcl91cGRhdGUgYXMgd2VsbCwgYnV0Cj4gPiB0aGF0IGNhdXNlZCBhIHN0 b3JtIG9mIGlvbW11IHBhZ2UgZmF1bHRzLiAgSSBkaWRuJ3QgaW52ZXN0aWdhdGUgdGhlCj4gPiBj YXVzZSBvZiB0aG9zZSBzaW5jZSB0aGlzIGNoYW5nZSBnaXZlcyBlbm91Z2ggb2YgYSBwZXJmb3Jt YW5jZQo+ID4gaW1wcm92ZW1lbnQgZm9yIG15IHVzZSBjYXNlLgo+ID4gCj4gPiBUaGlzIGlzIFJG QyBiZWNhdXNlIG9mIHRoYXQgYW5kIGJlY2F1c2UgdGhlIGZyYW1lYnVmZmVyX2NoYW5nZWQoKQo+ ID4gZnVuY3Rpb24gaXMgY29waWVkIGZyb20gZHJtX2F0b21pY19oZWxwZXIuYyBhcyBhIHF1aWNr IHdheSB0byB0ZXN0Cj4gPiB0aGUgcmVzdWx0Lgo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBKb2hu IEtlZXBpbmcgPGpvaG5AbWV0YW5hdGUuY29tPgo+ID4gLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJt L3JvY2tjaGlwL3JvY2tjaGlwX2RybV9mYi5jIHwgMjcKPiA+ICsrKysrKysrKysrKysrKysrKysr KysrKystLSAxIGZpbGUgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMgo+ID4gZGVsZXRpb25z KC0pCj4gPiAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2No aXBfZHJtX2ZiLmMKPiA+IGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9m Yi5jIGluZGV4IGY3ODQ0ODguLjhmZDk4MjEKPiA+IDEwMDY0NCAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2ZiLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9y b2NrY2hpcC9yb2NrY2hpcF9kcm1fZmIuYwo+ID4gQEAgLTE3Nyw4ICsxNzcsMjggQEAgc3RhdGlj IHZvaWQKPiA+IHJvY2tjaGlwX2NydGNfd2FpdF9mb3JfdXBkYXRlKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YykKPiA+IGNydGNfZnVuY3MtPndhaXRfZm9yX3VwZGF0ZShjcnRjKTsgfQo+ID4gIAo+ID4g K3N0YXRpYyBib29sIGZyYW1lYnVmZmVyX2NoYW5nZWQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwK PiA+ICsJCQkJc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKm9sZF9zdGF0ZSwKPiA+ICsJCQkJc3Ry dWN0IGRybV9jcnRjICpjcnRjKQo+ID4gK3sKPiA+ICsJc3RydWN0IGRybV9wbGFuZSAqcGxhbmU7 Cj4gPiArCXN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKm9sZF9wbGFuZV9zdGF0ZTsKPiA+ICsJaW50 IGk7Cj4gPiArCj4gPiArCWZvcl9lYWNoX3BsYW5lX2luX3N0YXRlKG9sZF9zdGF0ZSwgcGxhbmUs IG9sZF9wbGFuZV9zdGF0ZSwKPiA+IGkpIHsKPiA+ICsJCWlmIChwbGFuZS0+c3RhdGUtPmNydGMg IT0gY3J0YyAmJgo+ID4gKwkJICAgIG9sZF9wbGFuZV9zdGF0ZS0+Y3J0YyAhPSBjcnRjKQo+ID4g KwkJCWNvbnRpbnVlOwo+ID4gKwo+ID4gKwkJaWYgKHBsYW5lLT5zdGF0ZS0+ZmIgIT0gb2xkX3Bs YW5lX3N0YXRlLT5mYikKPiA+ICsJCQlyZXR1cm4gdHJ1ZTsKPiA+ICsJfQo+ID4gKwo+ID4gKwly ZXR1cm4gZmFsc2U7Cj4gPiArfSAgCj4gCj4gUGxlYXNlIGRvbid0IGhhbmQtcm9sbCBsb2dpYyB0 aGF0IGFmZmVjdHMgc2VtYW50aWNzIGxpa2UgdGhpcy4gSW5zdGVhZAo+IHBsZWFzZSB1c2UgZHJt X2F0b21pY19oZWxwZXJfd2FpdF9mb3JfdmJsYW5rcygpLCB3aGljaCBzaG91bGQgZG8gdGhpcwo+ IGNvcnJlY3RseSBmb3IgeW91Lgo+IAo+IElmIHRoYXQncyBub3QgdGhlIGNhc2UgdGhlbiB3ZSBu ZWVkIHRvIGltcHJvdmUgdGhlIGdlbmVyaWMgaGVscGVyLCBvcgo+IGZpZ3VyZSBvdXQgd2hhdCdz IGRpZmZlcmVudCB3aXRoIHJvY2toaXAuCgpBY2NvcmRpbmcgdG8gY29tbWl0IDYzZWJiOWYgKGRy bS9yb2NrY2hpcDogQ29udmVydCB0byBzdXBwb3J0IGF0b21pYwpBUEkpIGl0J3MgYmVjYXVzZSBy b2NrY2hpcCBkb2Vzbid0IGhhdmUgYSBoYXJkd2FyZSB2YmxhbmsgY291bnRlci4KCkknbSBub3Qg ZW50aXJlbHkgY2xlYXIgb24gd2h5IHRoaXMgcHJldmVudHMgdGhlIHVzZSBvZgpkcm1fYXRvbWlj X2hlbHBlcl93YWl0X2Zvcl92YmxhbmtzKCkuCgo+ID4gKwo+ID4gIHN0YXRpYyB2b2lkCj4gPiAt cm9ja2NoaXBfYXRvbWljX3dhaXRfZm9yX2NvbXBsZXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRl Cj4gPiAqb2xkX3N0YXRlKSArcm9ja2NoaXBfYXRvbWljX3dhaXRfZm9yX2NvbXBsZXRlKHN0cnVj dCBkcm1fZGV2aWNlCj4gPiAqZGV2LCBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqb2xkX3N0YXRl KSB7Cj4gPiAgCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGU7Cj4gPiAgCXN0 cnVjdCBkcm1fY3J0YyAqY3J0YzsKPiA+IEBAIC0xOTQsNiArMjE0LDkgQEAgcm9ja2NoaXBfYXRv bWljX3dhaXRfZm9yX2NvbXBsZXRlKHN0cnVjdAo+ID4gZHJtX2F0b21pY19zdGF0ZSAqb2xkX3N0 YXRlKSBpZiAoIWNydGMtPnN0YXRlLT5hY3RpdmUpCj4gPiAgCQkJY29udGludWU7Cj4gPiAgCj4g PiArCQlpZiAoIWZyYW1lYnVmZmVyX2NoYW5nZWQoZGV2LCBvbGRfc3RhdGUsIGNydGMpKQo+ID4g KwkJCWNvbnRpbnVlOwo+ID4gKwo+ID4gIAkJcmV0ID0gZHJtX2NydGNfdmJsYW5rX2dldChjcnRj KTsKPiA+ICAJCWlmIChyZXQgIT0gMCkKPiA+ICAJCQljb250aW51ZTsKPiA+IEBAIC0yNDEsNyAr MjY0LDcgQEAgcm9ja2NoaXBfYXRvbWljX2NvbW1pdF9jb21wbGV0ZShzdHJ1Y3QKPiA+IHJvY2tj aGlwX2F0b21pY19jb21taXQgKmNvbW1pdCkgCj4gPiAgCWRybV9hdG9taWNfaGVscGVyX2NvbW1p dF9wbGFuZXMoZGV2LCBzdGF0ZSwgdHJ1ZSk7Cj4gPiAgCj4gPiAtCXJvY2tjaGlwX2F0b21pY193 YWl0X2Zvcl9jb21wbGV0ZShzdGF0ZSk7Cj4gPiArCXJvY2tjaGlwX2F0b21pY193YWl0X2Zvcl9j b21wbGV0ZShkZXYsIHN0YXRlKTsKPiA+ICAKPiA+ICAJZHJtX2F0b21pY19oZWxwZXJfY2xlYW51 cF9wbGFuZXMoZGV2LCBzdGF0ZSk7Cj4gPiAgCj4gPiAtLSAKPiA+IDIuNy4wLnJjMy4xNDAuZzUy MGEwOTMKPiA+IAo+ID4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KPiA+IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKPiA+IGRyaS1kZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKPiA+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWwgIAo+IApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2Ry aS1kZXZlbAo=