From mboxrd@z Thu Jan 1 00:00:00 1970 From: ankitprasad.r.sharma@intel.com Subject: [PATCH 01/10] drm/i915: Add support for mapping an object page by page Date: Thu, 4 Feb 2016 15:00:02 +0530 Message-ID: <1454578211-24823-2-git-send-email-ankitprasad.r.sharma@intel.com> References: <1454578211-24823-1-git-send-email-ankitprasad.r.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 2C3696E45A for ; Thu, 4 Feb 2016 01:53:04 -0800 (PST) In-Reply-To: <1454578211-24823-1-git-send-email-ankitprasad.r.sharma@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: akash.goel@intel.com, Ankitprasad Sharma , shashidhar.hiremath@intel.com List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CgpJbnRyb2R1Y2Vk IGEgbmV3IHZtIHNwZWNmaWMgY2FsbGJhY2sgaW5zZXJ0X3BhZ2UoKSB0byBwcm9ncmFtIGEgc2lu Z2xlIHB0ZSBpbgpnZ3R0IG9yIHBwZ3R0LiBUaGlzIGFsbG93cyB1cyB0byBtYXAgYSBzaW5nbGUg cGFnZSBpbiB0byB0aGUgbWFwcGFibGUgYXBlcnR1cmUKc3BhY2UuIFRoaXMgY2FuIGJlIGl0ZXJh dGVkIG92ZXIgdG8gYWNjZXNzIHRoZSB3aG9sZSBvYmplY3QgYnkgdXNpbmcgc3BhY2UgYXMKbWVh Z3JlIGFzIHBhZ2Ugc2l6ZS4KCnYyOiBBZGRlZCBsb3cgbGV2ZWwgcnBtIGFzc2VydGlvbnMgdG8g aW5zZXJ0X3BhZ2Ugcm91dGluZXMgKENocmlzKQoKU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29u IDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+ClNpZ25lZC1vZmYtYnk6IEFua2l0cHJhc2FkIFNo YXJtYSA8YW5raXRwcmFzYWQuci5zaGFybWFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvY2hhci9h Z3AvaW50ZWwtZ3R0LmMgICAgICAgIHwgIDkgKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX2d0dC5jIHwgNjUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggfCAgNSArKysKIGluY2x1ZGUvZHJt L2ludGVsLWd0dC5oICAgICAgICAgICAgIHwgIDMgKysKIDQgZmlsZXMgY2hhbmdlZCwgODIgaW5z ZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvY2hhci9hZ3AvaW50ZWwtZ3R0LmMgYi9k cml2ZXJzL2NoYXIvYWdwL2ludGVsLWd0dC5jCmluZGV4IDEzNDFhOTQuLjdjNjg1NzYgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvY2hhci9hZ3AvaW50ZWwtZ3R0LmMKKysrIGIvZHJpdmVycy9jaGFyL2Fn cC9pbnRlbC1ndHQuYwpAQCAtODM4LDYgKzgzOCwxNSBAQCBzdGF0aWMgYm9vbCBpODMwX2NoZWNr X2ZsYWdzKHVuc2lnbmVkIGludCBmbGFncykKIAlyZXR1cm4gZmFsc2U7CiB9CiAKK3ZvaWQgaW50 ZWxfZ3R0X2luc2VydF9wYWdlKGRtYV9hZGRyX3QgYWRkciwKKwkJCSAgIHVuc2lnbmVkIGludCBw ZywKKwkJCSAgIHVuc2lnbmVkIGludCBmbGFncykKK3sKKwlpbnRlbF9wcml2YXRlLmRyaXZlci0+ d3JpdGVfZW50cnkoYWRkciwgcGcsIGZsYWdzKTsKKwl3bWIoKTsKK30KK0VYUE9SVF9TWU1CT0wo aW50ZWxfZ3R0X2luc2VydF9wYWdlKTsKKwogdm9pZCBpbnRlbF9ndHRfaW5zZXJ0X3NnX2VudHJp ZXMoc3RydWN0IHNnX3RhYmxlICpzdCwKIAkJCQkgdW5zaWduZWQgaW50IHBnX3N0YXJ0LAogCQkJ CSB1bnNpZ25lZCBpbnQgZmxhZ3MpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCmluZGV4 IDcxNWE3NzEuLmE2NDAxOGYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCkBAIC0y MzQxLDYgKzIzNDEsMjggQEAgc3RhdGljIHZvaWQgZ2VuOF9zZXRfcHRlKHZvaWQgX19pb21lbSAq YWRkciwgZ2VuOF9wdGVfdCBwdGUpCiAjZW5kaWYKIH0KIAorc3RhdGljIHZvaWQgZ2VuOF9nZ3R0 X2luc2VydF9wYWdlKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAorCQkJCSAgZG1hX2Fk ZHJfdCBhZGRyLAorCQkJCSAgdWludDY0X3Qgb2Zmc2V0LAorCQkJCSAgZW51bSBpOTE1X2NhY2hl X2xldmVsIGxldmVsLAorCQkJCSAgdTMyIHVudXNlZCkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KHZtLT5kZXYpOworCWdlbjhfcHRlX3QgX19pb21lbSAq cHRlID0KKwkJKGdlbjhfcHRlX3QgX19pb21lbSAqKWRldl9wcml2LT5ndHQuZ3NtICsKKwkJKG9m ZnNldCA+PiBQQUdFX1NISUZUKTsKKwlpbnQgcnBtX2F0b21pY19zZXE7CisKKwlycG1fYXRvbWlj X3NlcSA9IGFzc2VydF9ycG1fYXRvbWljX2JlZ2luKGRldl9wcml2KTsKKworCWdlbjhfc2V0X3B0 ZShwdGUsIGdlbjhfcHRlX2VuY29kZShhZGRyLCBsZXZlbCwgdHJ1ZSkpOworCXdtYigpOworCisJ STkxNV9XUklURShHRlhfRkxTSF9DTlRMX0dFTjYsIEdGWF9GTFNIX0NOVExfRU4pOworCisJYXNz ZXJ0X3JwbV9hdG9taWNfZW5kKGRldl9wcml2LCBycG1fYXRvbWljX3NlcSk7Cit9CisKIHN0YXRp YyB2b2lkIGdlbjhfZ2d0dF9pbnNlcnRfZW50cmllcyhzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNl ICp2bSwKIAkJCQkgICAgIHN0cnVjdCBzZ190YWJsZSAqc3QsCiAJCQkJICAgICB1aW50NjRfdCBz dGFydCwKQEAgLTI0MTIsNiArMjQzNCwyOCBAQCBzdGF0aWMgdm9pZCBnZW44X2dndHRfaW5zZXJ0 X2VudHJpZXNfX0JLTChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAlzdG9wX21hY2hp bmUoZ2VuOF9nZ3R0X2luc2VydF9lbnRyaWVzX19jYiwgJmFyZywgTlVMTCk7CiB9CiAKK3N0YXRp YyB2b2lkIGdlbjZfZ2d0dF9pbnNlcnRfcGFnZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2 bSwKKwkJCQkgIGRtYV9hZGRyX3QgYWRkciwKKwkJCQkgIHVpbnQ2NF90IG9mZnNldCwKKwkJCQkg IGVudW0gaTkxNV9jYWNoZV9sZXZlbCBsZXZlbCwKKwkJCQkgIHUzMiBmbGFncykKK3sKKwlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KHZtLT5kZXYpOworCWdlbjZf cHRlX3QgX19pb21lbSAqcHRlID0KKwkJKGdlbjZfcHRlX3QgX19pb21lbSAqKWRldl9wcml2LT5n dHQuZ3NtICsKKwkJKG9mZnNldCA+PiBQQUdFX1NISUZUKTsKKwlpbnQgcnBtX2F0b21pY19zZXE7 CisKKwlycG1fYXRvbWljX3NlcSA9IGFzc2VydF9ycG1fYXRvbWljX2JlZ2luKGRldl9wcml2KTsK KworCWlvd3JpdGUzMih2bS0+cHRlX2VuY29kZShhZGRyLCBsZXZlbCwgdHJ1ZSwgZmxhZ3MpLCBw dGUpOworCXdtYigpOworCisJSTkxNV9XUklURShHRlhfRkxTSF9DTlRMX0dFTjYsIEdGWF9GTFNI X0NOVExfRU4pOworCisJYXNzZXJ0X3JwbV9hdG9taWNfZW5kKGRldl9wcml2LCBycG1fYXRvbWlj X3NlcSk7Cit9CisKIC8qCiAgKiBCaW5kcyBhbiBvYmplY3QgaW50byB0aGUgZ2xvYmFsIGd0dCB3 aXRoIHRoZSBzcGVjaWZpZWQgY2FjaGUgbGV2ZWwuIFRoZSBvYmplY3QKICAqIHdpbGwgYmUgYWNj ZXNzaWJsZSB0byB0aGUgR1BVIHZpYSBjb21tYW5kcyB3aG9zZSBvcGVyYW5kcyByZWZlcmVuY2Ug b2Zmc2V0cwpAQCAtMjUyMyw2ICsyNTY3LDI0IEBAIHN0YXRpYyB2b2lkIGdlbjZfZ2d0dF9jbGVh cl9yYW5nZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAlhc3NlcnRfcnBtX2F0b21p Y19lbmQoZGV2X3ByaXYsIHJwbV9hdG9taWNfc2VxKTsKIH0KIAorc3RhdGljIHZvaWQgaTkxNV9n Z3R0X2luc2VydF9wYWdlKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAorCQkJCSAgZG1h X2FkZHJfdCBhZGRyLAorCQkJCSAgdWludDY0X3Qgb2Zmc2V0LAorCQkJCSAgZW51bSBpOTE1X2Nh Y2hlX2xldmVsIGNhY2hlX2xldmVsLAorCQkJCSAgdTMyIHVudXNlZCkKK3sKKwlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KHZtLT5kZXYpOworCXVuc2lnbmVkIGlu dCBmbGFncyA9IChjYWNoZV9sZXZlbCA9PSBJOTE1X0NBQ0hFX05PTkUpID8KKwkJQUdQX1VTRVJf TUVNT1JZIDogQUdQX1VTRVJfQ0FDSEVEX01FTU9SWTsKKwlpbnQgcnBtX2F0b21pY19zZXE7CisK KwlycG1fYXRvbWljX3NlcSA9IGFzc2VydF9ycG1fYXRvbWljX2JlZ2luKGRldl9wcml2KTsKKwor CWludGVsX2d0dF9pbnNlcnRfcGFnZShhZGRyLCBvZmZzZXQgPj4gUEFHRV9TSElGVCwgZmxhZ3Mp OworCisJYXNzZXJ0X3JwbV9hdG9taWNfZW5kKGRldl9wcml2LCBycG1fYXRvbWljX3NlcSk7Cit9 CisKIHN0YXRpYyB2b2lkIGk5MTVfZ2d0dF9pbnNlcnRfZW50cmllcyhzdHJ1Y3QgaTkxNV9hZGRy ZXNzX3NwYWNlICp2bSwKIAkJCQkgICAgIHN0cnVjdCBzZ190YWJsZSAqcGFnZXMsCiAJCQkJICAg ICB1aW50NjRfdCBzdGFydCwKQEAgLTMwNTQsNiArMzExNiw3IEBAIHN0YXRpYyBpbnQgZ2VuOF9n bWNoX3Byb2JlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJcmV0ID0gZ2d0dF9wcm9iZV9jb21t b24oZGV2LCBndHRfc2l6ZSk7CiAKIAlkZXZfcHJpdi0+Z3R0LmJhc2UuY2xlYXJfcmFuZ2UgPSBn ZW44X2dndHRfY2xlYXJfcmFuZ2U7CisJZGV2X3ByaXYtPmd0dC5iYXNlLmluc2VydF9wYWdlID0g Z2VuOF9nZ3R0X2luc2VydF9wYWdlOwogCWRldl9wcml2LT5ndHQuYmFzZS5pbnNlcnRfZW50cmll cyA9IGdlbjhfZ2d0dF9pbnNlcnRfZW50cmllczsKIAlkZXZfcHJpdi0+Z3R0LmJhc2UuYmluZF92 bWEgPSBnZ3R0X2JpbmRfdm1hOwogCWRldl9wcml2LT5ndHQuYmFzZS51bmJpbmRfdm1hID0gZ2d0 dF91bmJpbmRfdm1hOwpAQCAtMzA5OSw2ICszMTYyLDcgQEAgc3RhdGljIGludCBnZW42X2dtY2hf cHJvYmUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAlyZXQgPSBnZ3R0X3Byb2JlX2NvbW1vbihk ZXYsIGd0dF9zaXplKTsKIAogCWRldl9wcml2LT5ndHQuYmFzZS5jbGVhcl9yYW5nZSA9IGdlbjZf Z2d0dF9jbGVhcl9yYW5nZTsKKwlkZXZfcHJpdi0+Z3R0LmJhc2UuaW5zZXJ0X3BhZ2UgPSBnZW42 X2dndHRfaW5zZXJ0X3BhZ2U7CiAJZGV2X3ByaXYtPmd0dC5iYXNlLmluc2VydF9lbnRyaWVzID0g Z2VuNl9nZ3R0X2luc2VydF9lbnRyaWVzOwogCWRldl9wcml2LT5ndHQuYmFzZS5iaW5kX3ZtYSA9 IGdndHRfYmluZF92bWE7CiAJZGV2X3ByaXYtPmd0dC5iYXNlLnVuYmluZF92bWEgPSBnZ3R0X3Vu YmluZF92bWE7CkBAIC0zMTMzLDYgKzMxOTcsNyBAQCBzdGF0aWMgaW50IGk5MTVfZ21jaF9wcm9i ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCWludGVsX2d0dF9nZXQoZ3R0X3RvdGFsLCBzdG9s ZW4sIG1hcHBhYmxlX2Jhc2UsIG1hcHBhYmxlX2VuZCk7CiAKIAlkZXZfcHJpdi0+Z3R0LmRvX2lk bGVfbWFwcyA9IG5lZWRzX2lkbGVfbWFwcyhkZXZfcHJpdi0+ZGV2KTsKKwlkZXZfcHJpdi0+Z3R0 LmJhc2UuaW5zZXJ0X3BhZ2UgPSBpOTE1X2dndHRfaW5zZXJ0X3BhZ2U7CiAJZGV2X3ByaXYtPmd0 dC5iYXNlLmluc2VydF9lbnRyaWVzID0gaTkxNV9nZ3R0X2luc2VydF9lbnRyaWVzOwogCWRldl9w cml2LT5ndHQuYmFzZS5jbGVhcl9yYW5nZSA9IGk5MTVfZ2d0dF9jbGVhcl9yYW5nZTsKIAlkZXZf cHJpdi0+Z3R0LmJhc2UuYmluZF92bWEgPSBnZ3R0X2JpbmRfdm1hOwpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9ndHQuaAppbmRleCBmNTIwYzkwLi5lMGQ5ZGE5IDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9ndHQuaApAQCAtMzE2LDYgKzMxNiwxMSBAQCBzdHJ1Y3QgaTkxNV9hZGRyZXNzX3Nw YWNlIHsKIAkJCSAgICB1aW50NjRfdCBzdGFydCwKIAkJCSAgICB1aW50NjRfdCBsZW5ndGgsCiAJ CQkgICAgYm9vbCB1c2Vfc2NyYXRjaCk7CisJdm9pZCAoKmluc2VydF9wYWdlKShzdHJ1Y3QgaTkx NV9hZGRyZXNzX3NwYWNlICp2bSwKKwkJCSAgICBkbWFfYWRkcl90IGFkZHIsCisJCQkgICAgdWlu dDY0X3Qgb2Zmc2V0LAorCQkJICAgIGVudW0gaTkxNV9jYWNoZV9sZXZlbCBjYWNoZV9sZXZlbCwK KwkJCSAgICB1MzIgZmxhZ3MpOwogCXZvaWQgKCppbnNlcnRfZW50cmllcykoc3RydWN0IGk5MTVf YWRkcmVzc19zcGFjZSAqdm0sCiAJCQkgICAgICAgc3RydWN0IHNnX3RhYmxlICpzdCwKIAkJCSAg ICAgICB1aW50NjRfdCBzdGFydCwKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2ludGVsLWd0dC5o IGIvaW5jbHVkZS9kcm0vaW50ZWwtZ3R0LmgKaW5kZXggOWU5YmRkYWE1Li5mNDllZGVjIDEwMDY0 NAotLS0gYS9pbmNsdWRlL2RybS9pbnRlbC1ndHQuaAorKysgYi9pbmNsdWRlL2RybS9pbnRlbC1n dHQuaApAQCAtMTMsNiArMTMsOSBAQCB2b2lkIGludGVsX2dtY2hfcmVtb3ZlKHZvaWQpOwogYm9v bCBpbnRlbF9lbmFibGVfZ3R0KHZvaWQpOwogCiB2b2lkIGludGVsX2d0dF9jaGlwc2V0X2ZsdXNo KHZvaWQpOwordm9pZCBpbnRlbF9ndHRfaW5zZXJ0X3BhZ2UoZG1hX2FkZHJfdCBhZGRyLAorCQkJ ICAgdW5zaWduZWQgaW50IHBnLAorCQkJICAgdW5zaWduZWQgaW50IGZsYWdzKTsKIHZvaWQgaW50 ZWxfZ3R0X2luc2VydF9zZ19lbnRyaWVzKHN0cnVjdCBzZ190YWJsZSAqc3QsCiAJCQkJIHVuc2ln bmVkIGludCBwZ19zdGFydCwKIAkJCQkgdW5zaWduZWQgaW50IGZsYWdzKTsKLS0gCjEuOS4xCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZngg bWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=