From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: [PATCH 08/18] drm/i915/gtt: Introduce fill_page_dma() Date: Thu, 25 Jun 2015 18:35:10 +0300 Message-ID: <1435246520-14745-9-git-send-email-mika.kuoppala@intel.com> References: <1435246520-14745-1-git-send-email-mika.kuoppala@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id B07A07A11F for ; Thu, 25 Jun 2015 08:35:51 -0700 (PDT) In-Reply-To: <1435246520-14745-1-git-send-email-mika.kuoppala@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: miku@iki.fi List-Id: intel-gfx@lists.freedesktop.org V2hlbiB3ZSBzZXR1cCBwYWdlIGRpcmVjdG9yaWVzIGFuZCB0YWJsZXMsIHdlIHBvaW50IHRoZSBl bnRyaWVzCnRvIGEgdG8gdGhlIG5leHQgbGV2ZWwgc2NyYXRjaCBzdHJ1Y3R1cmUuIE1ha2UgdGhp cyBnZW5lcmljCmJ5IGludHJvZHVjaW5nIGEgZmlsbF9wYWdlX2RtYSB3aGljaCBtYXBzIGFuZCBm bHVzaGVzLiBXZSBhbHNvCm5lZWQgMzIgYml0IHZhcmlhbnQgZm9yIGxlZ2FjeSBnZW5zLgoKdjI6 IEZpeCBmbHVzaGVzIGFuZCBoYW5kbGUgdmFsbGV5dmlldyAoVmlsbGUpCnYzOiBOb3cgcmVhbGx5 IGZpeCBmbHVzaGVzIChNaWNoZWwsIFZpbGxlKQoKUmV2aWV3ZWQtYnk6IE1pY2hlbCBUaGllcnJ5 IDxtaWNoZWwudGhpZXJyeUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1pa2EgS3VvcHBhbGEg PG1pa2Eua3VvcHBhbGFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2d0dC5jIHwgNzQgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQogMSBm aWxlIGNoYW5nZWQsIDQwIGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZ3R0LmMKaW5kZXggMjFmYmEwMy4uNzM0ZmZkMiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZ3R0LmMKQEAgLTMzMCw2ICszMzAsMzQgQEAgc3RhdGljIHZvaWQgY2xl YW51cF9wYWdlX2RtYShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaTkxNV9wYWdlX2Rt YSAqcCkKIAltZW1zZXQocCwgMCwgc2l6ZW9mKCpwKSk7CiB9CiAKK3N0YXRpYyB2b2lkIGZpbGxf cGFnZV9kbWEoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGk5MTVfcGFnZV9kbWEgKnAs CisJCQkgIGNvbnN0IHVpbnQ2NF90IHZhbCkKK3sKKwlpbnQgaTsKKwl1aW50NjRfdCAqIGNvbnN0 IHZhZGRyID0ga21hcF9hdG9taWMocC0+cGFnZSk7CisKKwlmb3IgKGkgPSAwOyBpIDwgNTEyOyBp KyspCisJCXZhZGRyW2ldID0gdmFsOworCisJLyogVGhlcmUgYXJlIG9ubHkgZmV3IGV4Y2VwdGlv bnMgZm9yIGdlbiA+PTYuIGNodiBhbmQgYnh0LgorCSAqIEFuZCB3ZSBhcmUgbm90IHN1cmUgYWJv dXQgdGhlIGxhdHRlciBzbyBwbGF5IHNhZmUgZm9yIG5vdy4KKwkgKi8KKwlpZiAoSVNfQ0hFUlJZ VklFVyhkZXYpIHx8IElTX0JST1hUT04oZGV2KSkKKwkJZHJtX2NsZmx1c2hfdmlydF9yYW5nZSh2 YWRkciwgUEFHRV9TSVpFKTsKKworCWt1bm1hcF9hdG9taWModmFkZHIpOworfQorCitzdGF0aWMg dm9pZCBmaWxsX3BhZ2VfZG1hXzMyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBpOTE1 X3BhZ2VfZG1hICpwLAorCQkJICAgICBjb25zdCB1aW50MzJfdCB2YWwzMikKK3sKKwl1aW50NjRf dCB2ID0gdmFsMzI7CisKKwl2ID0gdiA8PCAzMiB8IHZhbDMyOworCisJZmlsbF9wYWdlX2RtYShk ZXYsIHAsIHYpOworfQorCiBzdGF0aWMgdm9pZCBmcmVlX3B0KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHN0cnVjdCBpOTE1X3BhZ2VfdGFibGUgKnB0KQogewogCWNsZWFudXBfcGFnZV9kbWEoZGV2 LCAmcHQtPmJhc2UpOwpAQCAtMzQwLDE5ICszNjgsMTEgQEAgc3RhdGljIHZvaWQgZnJlZV9wdChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaTkxNV9wYWdlX3RhYmxlICpwdCkKIHN0YXRp YyB2b2lkIGdlbjhfaW5pdGlhbGl6ZV9wdChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwK IAkJCSAgICAgICBzdHJ1Y3QgaTkxNV9wYWdlX3RhYmxlICpwdCkKIHsKLQlnZW44X3B0ZV90ICpw dF92YWRkciwgc2NyYXRjaF9wdGU7Ci0JaW50IGk7Ci0KLQlwdF92YWRkciA9IGttYXBfYXRvbWlj KHB0LT5iYXNlLnBhZ2UpOwotCXNjcmF0Y2hfcHRlID0gZ2VuOF9wdGVfZW5jb2RlKHZtLT5zY3Jh dGNoLmFkZHIsCi0JCQkJICAgICAgSTkxNV9DQUNIRV9MTEMsIHRydWUpOworCWdlbjhfcHRlX3Qg c2NyYXRjaF9wdGU7CiAKLQlmb3IgKGkgPSAwOyBpIDwgR0VOOF9QVEVTOyBpKyspCi0JCXB0X3Zh ZGRyW2ldID0gc2NyYXRjaF9wdGU7CisJc2NyYXRjaF9wdGUgPSBnZW44X3B0ZV9lbmNvZGUodm0t PnNjcmF0Y2guYWRkciwgSTkxNV9DQUNIRV9MTEMsIHRydWUpOwogCi0JaWYgKCFIQVNfTExDKHZt LT5kZXYpKQotCQlkcm1fY2xmbHVzaF92aXJ0X3JhbmdlKHB0X3ZhZGRyLCBQQUdFX1NJWkUpOwot CWt1bm1hcF9hdG9taWMocHRfdmFkZHIpOworCWZpbGxfcGFnZV9kbWEodm0tPmRldiwgJnB0LT5i YXNlLCBzY3JhdGNoX3B0ZSk7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgaTkxNV9wYWdlX3RhYmxlICph bGxvY19wdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQpAQCAtNTg2LDIwICs2MDYsMTMgQEAgc3Rh dGljIHZvaWQgZ2VuOF9pbml0aWFsaXplX3BkKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZt LAogCQkJICAgICAgIHN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5ICpwZCkKIHsKIAlzdHJ1Y3Qg aTkxNV9od19wcGd0dCAqcHBndHQgPQotCQkJY29udGFpbmVyX29mKHZtLCBzdHJ1Y3QgaTkxNV9o d19wcGd0dCwgYmFzZSk7Ci0JZ2VuOF9wZGVfdCAqcGFnZV9kaXJlY3Rvcnk7Ci0Jc3RydWN0IGk5 MTVfcGFnZV90YWJsZSAqcHQ7Ci0JaW50IGk7CisJCWNvbnRhaW5lcl9vZih2bSwgc3RydWN0IGk5 MTVfaHdfcHBndHQsIGJhc2UpOworCWdlbjhfcGRlX3Qgc2NyYXRjaF9wZGU7CiAKLQlwYWdlX2Rp cmVjdG9yeSA9IGttYXBfYXRvbWljKHBkLT5iYXNlLnBhZ2UpOwotCXB0ID0gcHBndHQtPnNjcmF0 Y2hfcHQ7Ci0JZm9yIChpID0gMDsgaSA8IEk5MTVfUERFUzsgaSsrKQotCQkvKiBNYXAgdGhlIFBE RSB0byB0aGUgcGFnZSB0YWJsZSAqLwotCQlfX2dlbjhfZG9fbWFwX3B0KHBhZ2VfZGlyZWN0b3J5 ICsgaSwgcHQsIHZtLT5kZXYpOworCXNjcmF0Y2hfcGRlID0gZ2VuOF9wZGVfZW5jb2RlKHZtLT5k ZXYsIHBwZ3R0LT5zY3JhdGNoX3B0LT5iYXNlLmRhZGRyLAorCQkJCSAgICAgIEk5MTVfQ0FDSEVf TExDKTsKIAotCWlmICghSEFTX0xMQyh2bS0+ZGV2KSkKLQkJZHJtX2NsZmx1c2hfdmlydF9yYW5n ZShwYWdlX2RpcmVjdG9yeSwgUEFHRV9TSVpFKTsKLQlrdW5tYXBfYXRvbWljKHBhZ2VfZGlyZWN0 b3J5KTsKKwlmaWxsX3BhZ2VfZG1hKHZtLT5kZXYsICZwZC0+YmFzZSwgc2NyYXRjaF9wZGUpOwog fQogCiBzdGF0aWMgdm9pZCBnZW44X2ZyZWVfcGFnZV90YWJsZXMoc3RydWN0IGk5MTVfcGFnZV9k aXJlY3RvcnkgKnBkLCBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQpAQCAtMTI1NSwyMiArMTI2OCwx NSBAQCBzdGF0aWMgdm9pZCBnZW42X3BwZ3R0X2luc2VydF9lbnRyaWVzKHN0cnVjdCBpOTE1X2Fk ZHJlc3Nfc3BhY2UgKnZtLAogfQogCiBzdGF0aWMgdm9pZCBnZW42X2luaXRpYWxpemVfcHQoc3Ry dWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCi0JCXN0cnVjdCBpOTE1X3BhZ2VfdGFibGUgKnB0 KQorCQkJICAgICAgIHN0cnVjdCBpOTE1X3BhZ2VfdGFibGUgKnB0KQogewotCWdlbjZfcHRlX3Qg KnB0X3ZhZGRyLCBzY3JhdGNoX3B0ZTsKLQlpbnQgaTsKKwlnZW42X3B0ZV90IHNjcmF0Y2hfcHRl OwogCiAJV0FSTl9PTih2bS0+c2NyYXRjaC5hZGRyID09IDApOwogCi0Jc2NyYXRjaF9wdGUgPSB2 bS0+cHRlX2VuY29kZSh2bS0+c2NyYXRjaC5hZGRyLAotCQkJSTkxNV9DQUNIRV9MTEMsIHRydWUs IDApOwotCi0JcHRfdmFkZHIgPSBrbWFwX2F0b21pYyhwdC0+YmFzZS5wYWdlKTsKLQotCWZvciAo aSA9IDA7IGkgPCBHRU42X1BURVM7IGkrKykKLQkJcHRfdmFkZHJbaV0gPSBzY3JhdGNoX3B0ZTsK KwlzY3JhdGNoX3B0ZSA9IHZtLT5wdGVfZW5jb2RlKHZtLT5zY3JhdGNoLmFkZHIsIEk5MTVfQ0FD SEVfTExDLCB0cnVlLCAwKTsKIAotCWt1bm1hcF9hdG9taWMocHRfdmFkZHIpOworCWZpbGxfcGFn ZV9kbWFfMzIodm0tPmRldiwgJnB0LT5iYXNlLCBzY3JhdGNoX3B0ZSk7CiB9CiAKIHN0YXRpYyBp bnQgZ2VuNl9hbGxvY192YV9yYW5nZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKLS0g CjEuOS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=