From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail29.static.mailgun.info (mail29.static.mailgun.info [104.130.122.29]) by gabe.freedesktop.org (Postfix) with ESMTPS id 248956EA54 for ; Fri, 4 Sep 2020 01:00:13 +0000 (UTC) From: Abhinav Kumar Date: Thu, 3 Sep 2020 17:54:37 -0700 Message-Id: <20200904005439.17146-4-abhinavk@codeaurora.org> In-Reply-To: <20200904005439.17146-1-abhinavk@codeaurora.org> References: <20200904005439.17146-1-abhinavk@codeaurora.org> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 3/5] lib/igt_fb: move the CTS fill framebuffer to igt_fb lib List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: swboyd@chromium.org, khsieh@codeaurora.org, nganji@codeaurora.org, seanpaul@chromium.org, tanmay@codeaurora.org, aravindh@codeaurora.org List-ID: VGhlIGZ1bmN0aW9uIHRvIGZpbGwgdGhlIGZyYW1lYnVmZmVyIHdpdGggdGhlIENUUyBwYXR0ZXJu CmlzIGdlbmVyaWMuIE1vdmUgaXQgdG8gdGhlIGlndF9mYiBsYXllciBzbyB0aGF0IGl0IGNhbiBi ZSB1c2VkIGJ5Cm90aGVyIG1vZHVsZXMuCgpTaWduZWQtb2ZmLWJ5OiBBYmhpbmF2IEt1bWFyIDxh YmhpbmF2a0Bjb2RlYXVyb3JhLm9yZz4KLS0tCiBsaWIvaWd0X2ZiLmMgICAgICAgICAgICAgICAg fCA2NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBsaWIvaWd0X2ZiLmggICAg ICAgICAgICAgICAgfCAgMyArKwogdG9vbHMvaW50ZWxfZHBfY29tcGxpYW5jZS5jIHwgNzAgKysr KysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA3OCBp bnNlcnRpb25zKCspLCA2MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWIvaWd0X2ZiLmMg Yi9saWIvaWd0X2ZiLmMKaW5kZXggMzg2NGI3YTEuLmQ2ZjBiOWVkIDEwMDY0NAotLS0gYS9saWIv aWd0X2ZiLmMKKysrIGIvbGliL2lndF9mYi5jCkBAIC0xLDQgKzEsNSBAQAogLyoKKyAqIENvcHly aWdodCAoYykgMjAyMCwgVGhlIExpbnV4IEZvdW5kYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu CiAgKiBDb3B5cmlnaHQgwqkgMjAxMywyMDE0IEludGVsIENvcnBvcmF0aW9uCiAgKgogICogUGVy bWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24g b2J0YWluaW5nIGEKQEAgLTEyODAsNiArMTI4MSw3MCBAQCB2b2lkIGlndF9wYWludF9jb2xvcihj YWlyb190ICpjciwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsCiAJY2Fpcm9fZmlsbChjcik7 CiB9CiAKKy8qKgorICogaWd0X2ZpbGxfY3RzX2ZyYW1lYnVmZmVyOgorICogQHBpeG1hcDogaGFu ZGxlIHRvIHRoZSBtYXBwZWQgYnVmZmVyCisgKiBAdmlkZW9fd2lkdGg6IHJlcXVpcmVkIHdpZHRo IGZvciB0aGUgQ1RTIHBhdHRlcm4KKyAqIEB2aWRlb19oZWlnaHQ6IHJlcXVpcmVkIGhlaWdodCBm b3IgdGhlIENUUyBwYXR0ZXJuCisgKiBAYml0ZGVwdGg6IHJlcXVpcmVkIGJpdGRlcHRoIGZvciB0 aGUgQ1RTIHBhdHRlcm4KKyAqIEBhbHBoYTogcmVxdWlyZWQgYWxwaGEgZm9yIHRoZSBDVFMgcGF0 dGVybgorICogVGhpcyBmdW5jdGlvbnMgZHJhd3MgdGhlIENUUyB0ZXN0IHBhdHRlcm4gZm9yIGEg Z2l2ZW4gd2lkdGgsIGhlaWdodC4KKyAqLworaW50IGlndF9maWxsX2N0c19mcmFtZWJ1ZmZlcih1 aW50MzJfdCAqcGl4bWFwLCB1aW50MzJfdCB2aWRlb193aWR0aCwKKwkJdWludDMyX3QgdmlkZW9f aGVpZ2h0LCB1aW50MzJfdCBiaXRkZXB0aCwgaW50IGFscGhhKQoreworCXVpbnQzMl90IHRpbGVf aGVpZ2h0LCB0aWxlX3dpZHRoOworCXVpbnQzMl90ICpyZWRfcHRyLCAqZ3JlZW5fcHRyLCAqYmx1 ZV9wdHI7CisJdWludDMyX3QgKndoaXRlX3B0ciwgKnNyY19wdHIsICpkc3RfcHRyOworCWludCB4 LCB5OworCWludDMyX3QgcGl4ZWxfdmFsOworCisJdGlsZV9oZWlnaHQgPSA2NDsKKwl0aWxlX3dp ZHRoID0gMSA8PCBiaXRkZXB0aDsKKworCXJlZF9wdHIgPSBwaXhtYXA7CisJZ3JlZW5fcHRyID0g cmVkX3B0ciArICh2aWRlb193aWR0aCAqIHRpbGVfaGVpZ2h0KTsKKwlibHVlX3B0ciA9IGdyZWVu X3B0ciArICh2aWRlb193aWR0aCAqIHRpbGVfaGVpZ2h0KTsKKwl3aGl0ZV9wdHIgPSBibHVlX3B0 ciArICh2aWRlb193aWR0aCAqIHRpbGVfaGVpZ2h0KTsKKwl4ID0gMDsKKworCS8qIEZpbGwgdGhl IGZyYW1lIGJ1ZmZlciB3aXRoIHZpZGVvIHBhdHRlcm4gZnJvbSBDVFMgMy4xLjUgKi8KKwl3aGls ZSAoeCA8IHZpZGVvX3dpZHRoKSB7CisJCWZvciAocGl4ZWxfdmFsID0gMDsgcGl4ZWxfdmFsIDwg MjU2OworCQkgICAgIHBpeGVsX3ZhbCA9IHBpeGVsX3ZhbCArICgyNTYgLyB0aWxlX3dpZHRoKSkg eworCQkJcmVkX3B0clt4XSA9IGFscGhhIDw8IDI0IHwgcGl4ZWxfdmFsIDw8IDE2OworCQkJZ3Jl ZW5fcHRyW3hdID0gYWxwaGEgPDwgMjQgfCBwaXhlbF92YWwgPDwgODsKKwkJCWJsdWVfcHRyW3hd ID0gYWxwaGEgPDwgMjQgfCBwaXhlbF92YWwgPDwgMDsKKwkJCXdoaXRlX3B0clt4XSA9IGFscGhh IDw8IDI0IHwgcmVkX3B0clt4XSB8IGdyZWVuX3B0clt4XSB8CisJCQkJICAgICAgIGJsdWVfcHRy W3hdOworCQkJaWYgKCsreCA+PSB2aWRlb193aWR0aCkKKwkJCQlicmVhazsKKwkJfQorCX0KKwlm b3IgKHkgPSAwOyB5IDwgdmlkZW9faGVpZ2h0OyB5KyspIHsKKwkJaWYgKHkgPT0gMCB8fCB5ID09 IDY0IHx8IHkgPT0gMTI4IHx8IHkgPT0gMTkyKQorCQkJY29udGludWU7CisJCXN3aXRjaCAoKHkg LyB0aWxlX2hlaWdodCkgJSA0KSB7CisJCWNhc2UgMDoKKwkJCXNyY19wdHIgPSByZWRfcHRyOwor CQkJYnJlYWs7CisJCWNhc2UgMToKKwkJCXNyY19wdHIgPSBncmVlbl9wdHI7CisJCQlicmVhazsK KwkJY2FzZSAyOgorCQkJc3JjX3B0ciA9IGJsdWVfcHRyOworCQkJYnJlYWs7CisJCWNhc2UgMzoK KwkJCXNyY19wdHIgPSB3aGl0ZV9wdHI7CisJCQlicmVhazsKKwkJfQorCQlkc3RfcHRyID0gcGl4 bWFwICsgKHkgKiB2aWRlb193aWR0aCk7CisJCW1lbWNweShkc3RfcHRyLCBzcmNfcHRyLCAodmlk ZW9fd2lkdGggKiA0KSk7CisJfQorCisJcmV0dXJuIDA7Cit9CisKIC8qKgogICogaWd0X3BhaW50 X2NvbG9yX2FscGhhOgogICogQGNyOiBjYWlybyBkcmF3aW5nIGNvbnRleHQKZGlmZiAtLWdpdCBh L2xpYi9pZ3RfZmIuaCBiL2xpYi9pZ3RfZmIuaAppbmRleCA1ZWM5MDZiNy4uYTFmOTQ1MDMgMTAw NjQ0Ci0tLSBhL2xpYi9pZ3RfZmIuaAorKysgYi9saWIvaWd0X2ZiLmgKQEAgLTEsNCArMSw1IEBA CiAvKgorICogQ29weXJpZ2h0IChjKSAyMDIwLCBUaGUgTGludXggRm91bmRhdGlvbi4gQWxsIHJp Z2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCDCqSAyMDEzLDIwMTQgSW50ZWwgQ29ycG9yYXRp b24KICAqCiAgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwg dG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQpAQCAtMjA2LDYgKzIwNyw4IEBAIGJvb2wgaWd0X2Zv cm1hdF9pc19mcDE2KHVpbnQzMl90IGRybV9mb3JtYXQpOwogaW50IGlndF9mb3JtYXRfcGxhbmVf YnBwKHVpbnQzMl90IGRybV9mb3JtYXQsIGludCBwbGFuZSk7CiB2b2lkIGlndF9mb3JtYXRfYXJy YXlfZmlsbCh1aW50MzJfdCAqKmZvcm1hdHNfYXJyYXksIHVuc2lnbmVkIGludCAqY291bnQsCiAJ CQkgICBib29sIGFsbG93X3l1dik7CitpbnQgaWd0X2ZpbGxfY3RzX2ZyYW1lYnVmZmVyKHVpbnQz Ml90ICpwaXhtYXAsIHVpbnQzMl90IHZpZGVvX3dpZHRoLAorCQl1aW50MzJfdCB2aWRlb19oZWln aHQsIHVpbnQzMl90IGJpdGRlcHRoLCBpbnQgYWxwaGEpOwogCiAjZW5kaWYgLyogX19JR1RfRkJf SF9fICovCiAKZGlmZiAtLWdpdCBhL3Rvb2xzL2ludGVsX2RwX2NvbXBsaWFuY2UuYyBiL3Rvb2xz L2ludGVsX2RwX2NvbXBsaWFuY2UuYwppbmRleCBmYzUxMjcxMS4uYzhjNWM4NDEgMTAwNjQ0Ci0t LSBhL3Rvb2xzL2ludGVsX2RwX2NvbXBsaWFuY2UuYworKysgYi90b29scy9pbnRlbF9kcF9jb21w bGlhbmNlLmMKQEAgLTQ0OCw3MCArNDQ4LDEyIEBAIHN0YXRpYyBpbnQgc2V0dXBfdmlkZW9fcGF0 dGVybl9mcmFtZWJ1ZmZlcihzdHJ1Y3QgY29ubmVjdG9yICpkcF9jb25uKQogCiB9CiAKLXN0YXRp YyBpbnQgZmlsbF9mcmFtZWJ1ZmZlcihzdHJ1Y3QgY29ubmVjdG9yICpkcF9jb25uKQotewotCXVp bnQzMl90IHRpbGVfaGVpZ2h0LCB0aWxlX3dpZHRoLCB2aWRlb193aWR0aCwgdmlkZW9faGVpZ2h0 OwotCXVpbnQzMl90ICpyZWRfcHRyLCAqZ3JlZW5fcHRyLCAqYmx1ZV9wdHIsICp3aGl0ZV9wdHIs ICpzcmNfcHRyLCAqZHN0X3B0cjsKLQlpbnQgeCwgeTsKLQlpbnQzMl90IHBpeGVsX3ZhbDsKLQl1 aW50OF90IGFscGhhOwotCi0JdmlkZW9fd2lkdGggPSBkcF9jb25uLT50ZXN0X3BhdHRlcm4uaGRp c3BsYXk7Ci0JdmlkZW9faGVpZ2h0ID0gZHBfY29ubi0+dGVzdF9wYXR0ZXJuLnZkaXNwbGF5Owot Ci0JdGlsZV9oZWlnaHQgPSA2NDsKLQl0aWxlX3dpZHRoID0gMSA8PCAgKGRwX2Nvbm4tPnRlc3Rf cGF0dGVybi5iaXRkZXB0aCk7Ci0KLQlyZWRfcHRyID0gZHBfY29ubi0+dGVzdF9wYXR0ZXJuLnBp eG1hcDsKLQlncmVlbl9wdHIgPSByZWRfcHRyICsgKHZpZGVvX3dpZHRoICogdGlsZV9oZWlnaHQp OwotCWJsdWVfcHRyID0gZ3JlZW5fcHRyICsgKHZpZGVvX3dpZHRoICogdGlsZV9oZWlnaHQpOwot CXdoaXRlX3B0ciA9IGJsdWVfcHRyICsgKHZpZGVvX3dpZHRoICogdGlsZV9oZWlnaHQpOwotCXgg PSAwOwotCi0JLyogRmlsbCB0aGUgZnJhbWUgYnVmZmVyIHdpdGggdmlkZW8gcGF0dGVybiBmcm9t IENUUyAzLjEuNSAqLwotCXdoaWxlICh4IDwgdmlkZW9fd2lkdGgpIHsKLQkJZm9yIChwaXhlbF92 YWwgPSAwOyBwaXhlbF92YWwgPCAyNTY7Ci0JCSAgICAgcGl4ZWxfdmFsID0gcGl4ZWxfdmFsICsg KDI1NiAvIHRpbGVfd2lkdGgpKSB7Ci0JCQlhbHBoYSA9IGdlbiA9PSAxMCA/IDB4ZmYgOiAwOwot CQkJcmVkX3B0clt4XSA9IGFscGhhIDw8IDI0IHwgcGl4ZWxfdmFsIDw8IDE2OwotCQkJZ3JlZW5f cHRyW3hdID0gYWxwaGEgPDwgMjQgfCBwaXhlbF92YWwgPDwgODsKLQkJCWJsdWVfcHRyW3hdID0g YWxwaGEgPDwgMjQgfCBwaXhlbF92YWwgPDwgMDsKLQkJCXdoaXRlX3B0clt4XSA9IGFscGhhIDw8 IDI0IHwgcmVkX3B0clt4XSB8IGdyZWVuX3B0clt4XSB8Ci0JCQkJICAgICAgIGJsdWVfcHRyW3hd OwotCQkJaWYgKCsreCA+PSB2aWRlb193aWR0aCkKLQkJCQlicmVhazsKLQkJfQotCX0KLQlmb3Ig KHkgPSAwOyB5IDwgdmlkZW9faGVpZ2h0OyB5KyspIHsKLQkJaWYgKHkgPT0gMCB8fCB5ID09IDY0 IHx8IHkgPT0gMTI4IHx8IHkgPT0gMTkyKQotCQkJY29udGludWU7Ci0JCXN3aXRjaCAoKHkgLyB0 aWxlX2hlaWdodCkgJSA0KSB7Ci0JCWNhc2UgMDoKLQkJCXNyY19wdHIgPSByZWRfcHRyOwotCQkJ YnJlYWs7Ci0JCWNhc2UgMToKLQkJCXNyY19wdHIgPSBncmVlbl9wdHI7Ci0JCQlicmVhazsKLQkJ Y2FzZSAyOgotCQkJc3JjX3B0ciA9IGJsdWVfcHRyOwotCQkJYnJlYWs7Ci0JCWNhc2UgMzoKLQkJ CXNyY19wdHIgPSB3aGl0ZV9wdHI7Ci0JCQlicmVhazsKLQkJfQotCQlkc3RfcHRyID0gZHBfY29u bi0+dGVzdF9wYXR0ZXJuLnBpeG1hcCArICh5ICogdmlkZW9fd2lkdGgpOwotCQltZW1jcHkoZHN0 X3B0ciwgc3JjX3B0ciwgKHZpZGVvX3dpZHRoICogNCkpOwotCX0KLQltdW5tYXAoZHBfY29ubi0+ dGVzdF9wYXR0ZXJuLnBpeG1hcCwKLQkgICAgICAgZHBfY29ubi0+dGVzdF9wYXR0ZXJuLnNpemUp OwotCXJldHVybiAwOwotfQotCiBzdGF0aWMgaW50IHNldF90ZXN0X21vZGUoc3RydWN0IGNvbm5l Y3RvciAqZHBfY29ubikKIHsKIAlpbnQgcmV0ID0gMDsKIAlpbnQgaTsKIAlib29sIGZvdW5kX3N0 ZCA9IGZhbHNlLCBmb3VuZF9mcyA9IGZhbHNlOworCXVpbnQzMl90IGFscGhhOwogCWRybU1vZGVD b25uZWN0b3IgKmMgPSBkcF9jb25uLT5jb25uZWN0b3I7CiAKIAkvKiBJZ25vcmUgYW55IGRpc2Nv bm5lY3RlZCBkZXZpY2VzICovCkBAIC01ODQsNiArNTI2LDcgQEAgc3RhdGljIGludCBzZXRfdGVz dF9tb2RlKHN0cnVjdCBjb25uZWN0b3IgKmRwX2Nvbm4pCiAJCWRwX2Nvbm4tPnRlc3RfcGF0dGVy bi5oZGlzcGxheSA9IGhkaXNwbGF5OwogCQlkcF9jb25uLT50ZXN0X3BhdHRlcm4udmRpc3BsYXkg PSB2ZGlzcGxheTsKIAkJZHBfY29ubi0+dGVzdF9wYXR0ZXJuLmJpdGRlcHRoID0gYml0ZGVwdGg7 CisJCWFscGhhID0gZ2VuID09IDEwID8gMHhmZiA6IDA7CiAKIAkJcmV0ID0gc2V0dXBfdmlkZW9f cGF0dGVybl9mcmFtZWJ1ZmZlcihkcF9jb25uKTsKIAkJaWYgKHJldCkgewpAQCAtNTkyLDEyICs1 MzUsMTkgQEAgc3RhdGljIGludCBzZXRfdGVzdF9tb2RlKHN0cnVjdCBjb25uZWN0b3IgKmRwX2Nv bm4pCiAJCQlyZXR1cm4gcmV0OwogCQl9CiAKLQkJcmV0ID0gZmlsbF9mcmFtZWJ1ZmZlcihkcF9j b25uKTsKKwkJcmV0ID0gaWd0X2ZpbGxfY3RzX2ZyYW1lYnVmZmVyKGRwX2Nvbm4tPnRlc3RfcGF0 dGVybi5waXhtYXAsCisJCQkJZHBfY29ubi0+dGVzdF9wYXR0ZXJuLmhkaXNwbGF5LAorCQkJCWRw X2Nvbm4tPnRlc3RfcGF0dGVybi52ZGlzcGxheSwKKwkJCQlkcF9jb25uLT50ZXN0X3BhdHRlcm4u Yml0ZGVwdGgsCisJCQkJYWxwaGEpOwogCQlpZiAocmV0KSB7CiAJCQlpZ3Rfd2FybigiRmlsbGlu ZyBmcmFtZWJ1ZmZlciBmb3IgY29ubmVjdG9yICV1IGZhaWxlZCAoJWQpXG4iLAogCQkJCSBjLT5j b25uZWN0b3JfaWQsIHJldCk7CiAJCQlyZXR1cm4gcmV0OwogCQl9CisJCS8qIHVubWFwcGluZyB0 aGUgYnVmZmVyIHByZXZpb3VzbHkgbWFwcGVkIGR1cmluZyBzZXR1cCAqLworCQltdW5tYXAoZHBf Y29ubi0+dGVzdF9wYXR0ZXJuLnBpeG1hcCwKKwkJCQlkcF9jb25uLT50ZXN0X3BhdHRlcm4uc2l6 ZSk7CiAJfQogCiAJcmV0dXJuIHJldDsKLS0gClRoZSBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRl ciwgSW5jLiBpcyBhIG1lbWJlciBvZiB0aGUgQ29kZSBBdXJvcmEgRm9ydW0sCmEgTGludXggRm91 bmRhdGlvbiBDb2xsYWJvcmF0aXZlIFByb2plY3QKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaWd0LWRldgo=