From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tomi Valkeinen Subject: [PATCHv4 21/29] drm/omap: dss: Support for detecting display stack readiness Date: Thu, 30 Mar 2017 14:15:21 +0300 Message-ID: <1490872529-23084-22-git-send-email-tomi.valkeinen@ti.com> References: <1490872529-23084-1-git-send-email-tomi.valkeinen@ti.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fllnx209.ext.ti.com (fllnx209.ext.ti.com [198.47.19.16]) by gabe.freedesktop.org (Postfix) with ESMTPS id C911A6E89C for ; Thu, 30 Mar 2017 11:16:33 +0000 (UTC) In-Reply-To: <1490872529-23084-1-git-send-email-tomi.valkeinen@ti.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, Laurent Pinchart Cc: Peter Ujfalusi , Tomi Valkeinen , Jyri Sarha List-Id: dri-devel@lists.freedesktop.org RnJvbTogUGV0ZXIgVWpmYWx1c2kgPHBldGVyLnVqZmFsdXNpQHRpLmNvbT4KCldoZW4gb21hcGRz cyBpcyBsb2FkZWQgKGFsbCBjb3JlIGNvbXBvbmVudHMgYXJlIGluIHBsYWNlKSBjcmVhdGUgYSBs aXN0IG9mCmRldmljZXMgdXNlZCBpbiB0aGUgZGlzcGxheSBncmFwaC4gVGhpcyBsaXN0IGxhdGVy IGNhbiBiZSB1c2VkIGJ5IG9tYXBkcm0KdmlhIHRoZSBvbWFwZHNzX3N0YWNrX2lzX3JlYWR5KCkg ZnVuY3Rpb24gdG8gY2hlY2sgdGhhdCB0aGVzZSBjb21wb25lbnRzCmFyZSBsb2FkZWQuIEJhc2Vk IG9uIHRoaXMgaW5mb3JtYXRpb24sIG9tYXBkcm0gY2FuIGRlZmVyIHByb2JlIGluIGNhc2Ugd2hl bgp0aGUgb21hcGRzcyBzdGFjayBpcyBub3QgcmVhZHkgeWV0LgoKU2lnbmVkLW9mZi1ieTogUGV0 ZXIgVWpmYWx1c2kgPHBldGVyLnVqZmFsdXNpQHRpLmNvbT4KU2lnbmVkLW9mZi1ieTogVG9taSBW YWxrZWluZW4gPHRvbWkudmFsa2VpbmVuQHRpLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vb21h cGRybS9kc3MvYmFzZS5jICAgIHwgMTA3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIGRyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9kc3MuYyAgICAgfCAgIDEgKwogZHJpdmVy cy9ncHUvZHJtL29tYXBkcm0vZHNzL29tYXBkc3MuaCB8ICAgMyArCiAzIGZpbGVzIGNoYW5nZWQs IDExMSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0v ZHNzL2Jhc2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9iYXNlLmMKaW5kZXggN2Rk NDQ3ZTZjNGQ3Li4xM2U5MWZhYWY3YTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9vbWFw ZHJtL2Rzcy9iYXNlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL2Jhc2UuYwpA QCAtMSw5ICsxLDIxIEBACiAjaW5jbHVkZSA8bGludXgva2VybmVsLmg+CiAjaW5jbHVkZSA8bGlu dXgvbW9kdWxlLmg+CisjaW5jbHVkZSA8bGludXgvb2YuaD4KKyNpbmNsdWRlIDxsaW51eC9vZl9n cmFwaC5oPgorI2luY2x1ZGUgPGxpbnV4L2xpc3QuaD4KKyNpbmNsdWRlICJvbWFwZHNzLmgiCiAK IHN0YXRpYyBib29sIGRzc19pbml0aWFsaXplZDsKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZGlzcGNf b3BzICpvcHM7CiAKK3N0YXRpYyBzdHJ1Y3QgbGlzdF9oZWFkIG9tYXBkc3NfY29tcF9saXN0Owor CitzdHJ1Y3Qgb21hcGRzc19jb21wX25vZGUgeworCXN0cnVjdCBsaXN0X2hlYWQgbGlzdDsKKwlz dHJ1Y3QgZGV2aWNlX25vZGUgKm5vZGU7CisJYm9vbCBkc3NfY29yZV9jb21wb25lbnQ7Cit9Owor CiB2b2lkIG9tYXBkc3Nfc2V0X2lzX2luaXRpYWxpemVkKGJvb2wgc2V0KQogewogCWRzc19pbml0 aWFsaXplZCA9IHNldDsKQEAgLTI4LDYgKzQwLDEwMSBAQCBjb25zdCBzdHJ1Y3QgZGlzcGNfb3Bz ICpkaXNwY19nZXRfb3BzKHZvaWQpCiB9CiBFWFBPUlRfU1lNQk9MKGRpc3BjX2dldF9vcHMpOwog CitzdGF0aWMgYm9vbCBvbWFwZHNzX2xpc3RfY29udGFpbnMoY29uc3Qgc3RydWN0IGRldmljZV9u b2RlICpub2RlKQoreworCXN0cnVjdCBvbWFwZHNzX2NvbXBfbm9kZSAqY29tcDsKKworCWxpc3Rf Zm9yX2VhY2hfZW50cnkoY29tcCwgJm9tYXBkc3NfY29tcF9saXN0LCBsaXN0KSB7CisJCWlmIChj b21wLT5ub2RlID09IG5vZGUpCisJCQlyZXR1cm4gdHJ1ZTsKKwl9CisKKwlyZXR1cm4gZmFsc2U7 Cit9CisKK3N0YXRpYyB2b2lkIG9tYXBkc3Nfd2Fsa19kZXZpY2Uoc3RydWN0IGRldmljZSAqZGV2 LCBzdHJ1Y3QgZGV2aWNlX25vZGUgKm5vZGUsCisJCQkJYm9vbCBkc3NfY29yZSkKK3sKKwlzdHJ1 Y3QgZGV2aWNlX25vZGUgKm47CisJc3RydWN0IG9tYXBkc3NfY29tcF9ub2RlICpjb21wID0gZGV2 bV9remFsbG9jKGRldiwgc2l6ZW9mKCpjb21wKSwKKwkJCQkJCSAgICAgIEdGUF9LRVJORUwpOwor CisJaWYgKGNvbXApIHsKKwkJY29tcC0+bm9kZSA9IG5vZGU7CisJCWNvbXAtPmRzc19jb3JlX2Nv bXBvbmVudCA9IGRzc19jb3JlOworCQlsaXN0X2FkZCgmY29tcC0+bGlzdCwgJm9tYXBkc3NfY29t cF9saXN0KTsKKwl9CisKKwkvKgorCSAqIG9mX2dyYXBoX2dldF9yZW1vdGVfcG9ydF9wYXJlbnQo KSBwcmludHMgYW4gZXJyb3IgaWYgdGhlcmUgaXMgbm8KKwkgKiBwb3J0L3BvcnRzIG5vZGUuIFRv IGF2b2lkIHRoYXQsIGNoZWNrIGZpcnN0IHRoYXQgdGhlcmUncyB0aGUgbm9kZS4KKwkgKi8KKwlu ID0gb2ZfZ2V0X2NoaWxkX2J5X25hbWUobm9kZSwgInBvcnRzIik7CisJaWYgKCFuKQorCQluID0g b2ZfZ2V0X2NoaWxkX2J5X25hbWUobm9kZSwgInBvcnQiKTsKKwlpZiAoIW4pCisJCXJldHVybjsK KworCW9mX25vZGVfcHV0KG4pOworCisJbiA9IE5VTEw7CisJd2hpbGUgKChuID0gb2ZfZ3JhcGhf Z2V0X25leHRfZW5kcG9pbnQobm9kZSwgbikpICE9IE5VTEwpIHsKKwkJc3RydWN0IGRldmljZV9u b2RlICpwbiA9IG9mX2dyYXBoX2dldF9yZW1vdGVfcG9ydF9wYXJlbnQobik7CisKKwkJaWYgKCFw bikKKwkJCWNvbnRpbnVlOworCisJCWlmICghb2ZfZGV2aWNlX2lzX2F2YWlsYWJsZShwbikgfHwg b21hcGRzc19saXN0X2NvbnRhaW5zKHBuKSkgeworCQkJb2Zfbm9kZV9wdXQocG4pOworCQkJY29u dGludWU7CisJCX0KKworCQlvbWFwZHNzX3dhbGtfZGV2aWNlKGRldiwgcG4sIGZhbHNlKTsKKwl9 Cit9CisKK3ZvaWQgb21hcGRzc19nYXRoZXJfY29tcG9uZW50cyhzdHJ1Y3QgZGV2aWNlICpkZXYp Cit7CisJc3RydWN0IGRldmljZV9ub2RlICpjaGlsZDsKKworCUlOSVRfTElTVF9IRUFEKCZvbWFw ZHNzX2NvbXBfbGlzdCk7CisKKwlvbWFwZHNzX3dhbGtfZGV2aWNlKGRldiwgZGV2LT5vZl9ub2Rl LCB0cnVlKTsKKworCWZvcl9lYWNoX2F2YWlsYWJsZV9jaGlsZF9vZl9ub2RlKGRldi0+b2Zfbm9k ZSwgY2hpbGQpIHsKKwkJaWYgKCFvZl9maW5kX3Byb3BlcnR5KGNoaWxkLCAiY29tcGF0aWJsZSIs IE5VTEwpKQorCQkJY29udGludWU7CisKKwkJb21hcGRzc193YWxrX2RldmljZShkZXYsIGNoaWxk LCB0cnVlKTsKKwl9Cit9CitFWFBPUlRfU1lNQk9MKG9tYXBkc3NfZ2F0aGVyX2NvbXBvbmVudHMp OworCitzdGF0aWMgYm9vbCBvbWFwZHNzX2NvbXBvbmVudF9pc19sb2FkZWQoc3RydWN0IG9tYXBk c3NfY29tcF9ub2RlICpjb21wKQoreworCWlmIChjb21wLT5kc3NfY29yZV9jb21wb25lbnQpCisJ CXJldHVybiB0cnVlOworCWlmIChvbWFwZHNzX2NvbXBvbmVudF9pc19kaXNwbGF5KGNvbXAtPm5v ZGUpKQorCQlyZXR1cm4gdHJ1ZTsKKwlpZiAob21hcGRzc19jb21wb25lbnRfaXNfb3V0cHV0KGNv bXAtPm5vZGUpKQorCQlyZXR1cm4gdHJ1ZTsKKworCXJldHVybiBmYWxzZTsKK30KKworYm9vbCBv bWFwZHNzX3N0YWNrX2lzX3JlYWR5KHZvaWQpCit7CisJc3RydWN0IG9tYXBkc3NfY29tcF9ub2Rl ICpjb21wOworCisJbGlzdF9mb3JfZWFjaF9lbnRyeShjb21wLCAmb21hcGRzc19jb21wX2xpc3Qs IGxpc3QpIHsKKwkJaWYgKCFvbWFwZHNzX2NvbXBvbmVudF9pc19sb2FkZWQoY29tcCkpCisJCQly ZXR1cm4gZmFsc2U7CisJfQorCisJcmV0dXJuIHRydWU7Cit9CitFWFBPUlRfU1lNQk9MKG9tYXBk c3Nfc3RhY2tfaXNfcmVhZHkpOworCiBNT0RVTEVfQVVUSE9SKCJUb21pIFZhbGtlaW5lbiA8dG9t aS52YWxrZWluZW5AdGkuY29tPiIpOwogTU9EVUxFX0RFU0NSSVBUSU9OKCJPTUFQIERpc3BsYXkg U3Vic3lzdGVtIEJhc2UiKTsKIE1PRFVMRV9MSUNFTlNFKCJHUEwgdjIiKTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9kc3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFw ZHJtL2Rzcy9kc3MuYwppbmRleCA1ZWIyZjEyNjA1NDcuLmNlYjQ4MzY1MGY4YyAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL2Rzcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9vbWFwZHJtL2Rzcy9kc3MuYwpAQCAtMTI1OCw2ICsxMjU4LDcgQEAgc3RhdGljIGludCBkc3Nf YmluZChzdHJ1Y3QgZGV2aWNlICpkZXYpCiAKIAlwbV9zZXRfdnRfc3dpdGNoKDApOwogCisJb21h cGRzc19nYXRoZXJfY29tcG9uZW50cyhkZXYpOwogCW9tYXBkc3Nfc2V0X2lzX2luaXRpYWxpemVk KHRydWUpOwogCiAJcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRy bS9kc3Mvb21hcGRzcy5oIGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL29tYXBkc3MuaApp bmRleCA3ZTFmZWI5MzUxMzcuLmQ1YzM2OWJkNTY1YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL29tYXBkcm0vZHNzL29tYXBkc3MuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9k c3Mvb21hcGRzcy5oCkBAIC05MzksNCArOTM5LDcgQEAgY29uc3Qgc3RydWN0IGRpc3BjX29wcyAq ZGlzcGNfZ2V0X29wcyh2b2lkKTsKIGJvb2wgb21hcGRzc19jb21wb25lbnRfaXNfZGlzcGxheShz dHJ1Y3QgZGV2aWNlX25vZGUgKm5vZGUpOwogYm9vbCBvbWFwZHNzX2NvbXBvbmVudF9pc19vdXRw dXQoc3RydWN0IGRldmljZV9ub2RlICpub2RlKTsKIAorYm9vbCBvbWFwZHNzX3N0YWNrX2lzX3Jl YWR5KHZvaWQpOwordm9pZCBvbWFwZHNzX2dhdGhlcl9jb21wb25lbnRzKHN0cnVjdCBkZXZpY2Ug KmRldik7CisKICNlbmRpZiAvKiBfX09NQVBfRFJNX0RTU19IICovCi0tIAoyLjcuNAoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==