From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.bootlin.com (mail.bootlin.com [62.4.15.54]) by gabe.freedesktop.org (Postfix) with ESMTP id 58B296E5E6 for ; Thu, 6 Dec 2018 14:13:50 +0000 (UTC) From: Paul Kocialkowski Date: Thu, 6 Dec 2018 15:11:30 +0100 Message-Id: <20181206141132.23349-8-paul.kocialkowski@bootlin.com> In-Reply-To: <20181206141132.23349-1-paul.kocialkowski@bootlin.com> References: <20181206141132.23349-1-paul.kocialkowski@bootlin.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 7/9] lib/igt_fb: Add a stride-provisioned fashion of igt_fb_convert 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: Petri Latvala , Eben Upton , Thomas Petazzoni List-ID: VGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gb2YgaWd0X2ZiX2NvbnZlcnQgZG9lcyBub3QgYWxs b3cgcGFzc2luZwp0aGUgZGVzdGluYXRpb24gc3RyaWRlLCB3aGljaCBpcyBzb21ldGhpbmcgd2Ug d2FudCB0byBjaGFuZ2UgZm9yIHRlc3RzLgoKQWRkIGEgbmV3IGZhc2hpb24gb2YgdGhpcyBmdW5j dGlvbiB0aGF0IGFsbG9jYXRlcyB0aGUgZGVzaW50YXRpb24gYnVmZmVyCndpdGggYSBnaXZlbiBz dHJpZGUuIFNpbmNlIHRoZSBjdXJyZW50IGZ1bmN0aW9uIGRvZXMgdGhlIHNhbWUgdGhpbmcgd2l0 aAphbiB1bnNwZWNpZmllZCBzdHJpZGUgKHNldCB0byB6ZXJvLCB3aGljaCB3aWxsIGJlIGZpbGxl ZCBsYXRlciksIG1ha2UgaXQKY2FsbCBvdXIgbmV3IGZhc2hpb24gd2l0aCB0aGUgc3RyaWRlIHNl dCB0byB6ZXJvIHRvIGF2b2lkIGR1cGxpY2F0aW9uLgoKU2lnbmVkLW9mZi1ieTogUGF1bCBLb2Np YWxrb3dza2kgPHBhdWwua29jaWFsa293c2tpQGJvb3RsaW4uY29tPgotLS0KIGxpYi9pZ3RfZmIu YyB8IDM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCiBsaWIvaWd0X2Zi LmggfCAgMyArKysKIDIgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9saWIvaWd0X2ZiLmMgYi9saWIvaWd0X2ZiLmMKaW5kZXggNjEy NTBiMGUuLjE1NDhiZjRlIDEwMDY0NAotLS0gYS9saWIvaWd0X2ZiLmMKKysrIGIvbGliL2lndF9m Yi5jCkBAIC0yMjUzLDE0ICsyMjUzLDE1IEBAIHZvaWQgaWd0X3JlbW92ZV9mYihpbnQgZmQsIHN0 cnVjdCBpZ3RfZmIgKmZiKQogfQogCiAvKioKLSAqIGlndF9mYl9jb252ZXJ0OgorICogaWd0X2Zi X2NvbnZlcnRfd2l0aF9zdHJpZGU6CiAgKiBAZHN0OiBwb2ludGVyIHRvIHRoZSAjaWd0X2ZiIHN0 cnVjdHVyZSB0aGF0IHdpbGwgc3RvcmUgdGhlIGNvbnZlcnNpb24gcmVzdWx0CiAgKiBAc3JjOiBw b2ludGVyIHRvIHRoZSAjaWd0X2ZiIHN0cnVjdHVyZSB0aGF0IHN0b3JlcyB0aGUgZnJhbWUgd2Ug Y29udmVydAogICogQGRzdF9mb3VyY2M6IERSTSBmb3JtYXQgc3BlY2lmaWVyIHRvIGNvbnZlcnQg dG8KKyAqIEBkc3Rfc3RyaWRlOiBEUk0gZm9ybWF0IHNwZWNpZmllciB0byBjb252ZXJ0IHRvCiAg KgogICogVGhpcyB3aWxsIGNvbnZlcnQgYSBnaXZlbiBAc3JjIGNvbnRlbnQgdG8gdGhlIEBkc3Rf Zm91cmNjIGZvcm1hdCwKICAqIHN0b3JpbmcgdGhlIHJlc3VsdCBpbiB0aGUgQGRzdCBmYiwgYWxs b2NhdGluZyB0aGUgQGRzdCBmYgotICogdW5kZXJseWluZyBidWZmZXIuCisgKiB1bmRlcmx5aW5n IGJ1ZmZlciB3aXRoIGEgc3RyaWRlIG9mIEBkc3Rfc3RyaWRlIHN0cmlkZS4KICAqCiAgKiBPbmNl IGRvbmUgd2l0aCBAZHN0LCB0aGUgY2FsbGVyIHdpbGwgaGF2ZSB0byBjYWxsIGlndF9yZW1vdmVf ZmIoKQogICogb24gaXQgdG8gZnJlZSB0aGUgYXNzb2NpYXRlZCByZXNvdXJjZXMuCkBAIC0yMjY4 LDE1ICsyMjY5LDE4IEBAIHZvaWQgaWd0X3JlbW92ZV9mYihpbnQgZmQsIHN0cnVjdCBpZ3RfZmIg KmZiKQogICogUmV0dXJuczoKICAqIFRoZSBrbXMgaWQgb2YgdGhlIGNyZWF0ZWQgZnJhbWVidWZm ZXIuCiAgKi8KLXVuc2lnbmVkIGludCBpZ3RfZmJfY29udmVydChzdHJ1Y3QgaWd0X2ZiICpkc3Qs IHN0cnVjdCBpZ3RfZmIgKnNyYywKLQkJCSAgICB1aW50MzJfdCBkc3RfZm91cmNjKQordW5zaWdu ZWQgaW50IGlndF9mYl9jb252ZXJ0X3dpdGhfc3RyaWRlKHN0cnVjdCBpZ3RfZmIgKmRzdCwgc3Ry dWN0IGlndF9mYiAqc3JjLAorCQkJCQl1aW50MzJfdCBkc3RfZm91cmNjLAorCQkJCQl1bnNpZ25l ZCBpbnQgZHN0X3N0cmlkZSkKIHsKIAlzdHJ1Y3QgZmJfY29udmVydCBjdnQgPSB7IH07CiAJdm9p ZCAqZHN0X3B0ciwgKnNyY19wdHI7CiAJaW50IGZiX2lkOwogCi0JZmJfaWQgPSBpZ3RfY3JlYXRl X2ZiKHNyYy0+ZmQsIHNyYy0+d2lkdGgsIHNyYy0+aGVpZ2h0LAotCQkJICAgICAgZHN0X2ZvdXJj YywgTE9DQUxfRFJNX0ZPUk1BVF9NT0RfTk9ORSwgZHN0KTsKKwlmYl9pZCA9IGlndF9jcmVhdGVf ZmJfd2l0aF9ib19zaXplKHNyYy0+ZmQsIHNyYy0+d2lkdGgsIHNyYy0+aGVpZ2h0LAorCQkJCQkg ICBkc3RfZm91cmNjLAorCQkJCQkgICBMT0NBTF9EUk1fRk9STUFUX01PRF9OT05FLAorCQkJCQkg ICBkc3QsIDAsIGRzdF9zdHJpZGUpOwogCWlndF9hc3NlcnQoZmJfaWQgPiAwKTsKIAogCXNyY19w dHIgPSBpZ3RfZmJfbWFwX2J1ZmZlcihzcmMtPmZkLCBzcmMpOwpAQCAtMjI5Nyw2ICsyMzAxLDI4 IEBAIHVuc2lnbmVkIGludCBpZ3RfZmJfY29udmVydChzdHJ1Y3QgaWd0X2ZiICpkc3QsIHN0cnVj dCBpZ3RfZmIgKnNyYywKIAlyZXR1cm4gZmJfaWQ7CiB9CiAKKy8qKgorICogaWd0X2ZiX2NvbnZl cnQ6CisgKiBAZHN0OiBwb2ludGVyIHRvIHRoZSAjaWd0X2ZiIHN0cnVjdHVyZSB0aGF0IHdpbGwg c3RvcmUgdGhlIGNvbnZlcnNpb24gcmVzdWx0CisgKiBAc3JjOiBwb2ludGVyIHRvIHRoZSAjaWd0 X2ZiIHN0cnVjdHVyZSB0aGF0IHN0b3JlcyB0aGUgZnJhbWUgd2UgY29udmVydAorICogQGRzdF9m b3VyY2M6IERSTSBmb3JtYXQgc3BlY2lmaWVyIHRvIGNvbnZlcnQgdG8KKyAqCisgKiBUaGlzIHdp bGwgY29udmVydCBhIGdpdmVuIEBzcmMgY29udGVudCB0byB0aGUgQGRzdF9mb3VyY2MgZm9ybWF0 LAorICogc3RvcmluZyB0aGUgcmVzdWx0IGluIHRoZSBAZHN0IGZiLCBhbGxvY2F0aW5nIHRoZSBA ZHN0IGZiCisgKiB1bmRlcmx5aW5nIGJ1ZmZlci4KKyAqCisgKiBPbmNlIGRvbmUgd2l0aCBAZHN0 LCB0aGUgY2FsbGVyIHdpbGwgaGF2ZSB0byBjYWxsIGlndF9yZW1vdmVfZmIoKQorICogb24gaXQg dG8gZnJlZSB0aGUgYXNzb2NpYXRlZCByZXNvdXJjZXMuCisgKgorICogUmV0dXJuczoKKyAqIFRo ZSBrbXMgaWQgb2YgdGhlIGNyZWF0ZWQgZnJhbWVidWZmZXIuCisgKi8KK3Vuc2lnbmVkIGludCBp Z3RfZmJfY29udmVydChzdHJ1Y3QgaWd0X2ZiICpkc3QsIHN0cnVjdCBpZ3RfZmIgKnNyYywKKwkJ CSAgICB1aW50MzJfdCBkc3RfZm91cmNjKQoreworCXJldHVybiBpZ3RfZmJfY29udmVydF93aXRo X3N0cmlkZShkc3QsIHNyYywgZHN0X2ZvdXJjYywgMCk7Cit9CisKIC8qKgogICogaWd0X2JwcF9k ZXB0aF90b19kcm1fZm9ybWF0OgogICogQGJwcDogZGVzaXJlZCBiaXRzIHBlciBwaXhlbApkaWZm IC0tZ2l0IGEvbGliL2lndF9mYi5oIGIvbGliL2lndF9mYi5oCmluZGV4IDlmMDI3ZGViLi5jYjIx ZmRiYyAxMDA2NDQKLS0tIGEvbGliL2lndF9mYi5oCisrKyBiL2xpYi9pZ3RfZmIuaApAQCAtMTMw LDYgKzEzMCw5IEBAIHVuc2lnbmVkIGludCBpZ3RfY3JlYXRlX2ltYWdlX2ZiKGludCBkcm1fZmQs ICBpbnQgd2lkdGgsIGludCBoZWlnaHQsCiAJCQkJIHN0cnVjdCBpZ3RfZmIgKmZiIC8qIG91dCAq Lyk7CiB1bnNpZ25lZCBpbnQgaWd0X2NyZWF0ZV9zdGVyZW9fZmIoaW50IGRybV9mZCwgZHJtTW9k ZU1vZGVJbmZvICptb2RlLAogCQkJCSAgdWludDMyX3QgZm9ybWF0LCB1aW50NjRfdCB0aWxpbmcp OwordW5zaWduZWQgaW50IGlndF9mYl9jb252ZXJ0X3dpdGhfc3RyaWRlKHN0cnVjdCBpZ3RfZmIg KmRzdCwgc3RydWN0IGlndF9mYiAqc3JjLAorCQkJCQl1aW50MzJfdCBkc3RfZm91cmNjLAorCQkJ CQl1bnNpZ25lZCBpbnQgc3RyaWRlKTsKIHVuc2lnbmVkIGludCBpZ3RfZmJfY29udmVydChzdHJ1 Y3QgaWd0X2ZiICpkc3QsIHN0cnVjdCBpZ3RfZmIgKnNyYywKIAkJCSAgICB1aW50MzJfdCBkc3Rf Zm91cmNjKTsKIHZvaWQgaWd0X3JlbW92ZV9mYihpbnQgZmQsIHN0cnVjdCBpZ3RfZmIgKmZiKTsK LS0gCjIuMTkuMgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2Cg==