From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ard Biesheuvel Subject: [PATCH v4 3/3] drm/nouveau/fb/nv50: defer DMA mapping of scratch page to init() hook Date: Mon, 26 Sep 2016 05:32:40 -0700 Message-ID: <1474893160-12321-4-git-send-email-ard.biesheuvel@linaro.org> References: <1474893160-12321-1-git-send-email-ard.biesheuvel@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1474893160-12321-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org, airlied-cv59FeDIM0c@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Ard Biesheuvel List-Id: dri-devel@lists.freedesktop.org VGhlIDEwMGMwOCBzY3JhdGNoIHBhZ2UgaXMgbWFwcGVkIHVzaW5nIGRtYV9tYXBfcGFnZSgpIGJl Zm9yZSB0aGUgVFRNCmxheWVyIGhhcyBoYWQgYSBjaGFuY2UgdG8gc2V0IHRoZSBETUEgbWFzay4g VGhpcyBtZWFucyB3ZSBhcmUgc3RpbGwKcnVubmluZyB3aXRoIHRoZSBkZWZhdWx0IG9mIDMyIHdo ZW4gdGhpcyBjb2RlIGV4ZWN1dGVzLCBhbmQgdGhpcyBjYXVzZXMKcHJvYmxlbXMgZm9yIHBsYXRm b3JtcyB3aXRoIG5vIG1lbW9yeSBiZWxvdyA0IEdCIChzdWNoIGFzIEFNRCBTZWF0dGxlKQoKU28g bW92ZSB0aGUgZG1hX21hcF9wYWdlKCkgdG8gdGhlIC5pbml0IGhvb2ssIHdoaWNoIGV4ZWN1dGVz IGFmdGVyIHRoZQpETUEgbWFzayBoYXMgYmVlbiBzZXQuCgpTaWduZWQtb2ZmLWJ5OiBBcmQgQmll c2hldXZlbCA8YXJkLmJpZXNoZXV2ZWxAbGluYXJvLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v bm91dmVhdS9udmttL3N1YmRldi9mYi9udjUwLmMgfCAzMCArKysrKysrKysrKysrLS0tLS0tLQog MSBmaWxlIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2ZiL252NTAuYyBiL2Ry aXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2ZiL252NTAuYwppbmRleCAxYjVmYjAy ZWFiMmEuLmYwMjlhYWYwMTgzMSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUv bnZrbS9zdWJkZXYvZmIvbnY1MC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252a20v c3ViZGV2L2ZiL252NTAuYwpAQCAtMjE2LDExICsyMTYsMjMgQEAgbnY1MF9mYl9pbml0KHN0cnVj dCBudmttX2ZiICpiYXNlKQogCXN0cnVjdCBudjUwX2ZiICpmYiA9IG52NTBfZmIoYmFzZSk7CiAJ c3RydWN0IG52a21fZGV2aWNlICpkZXZpY2UgPSBmYi0+YmFzZS5zdWJkZXYuZGV2aWNlOwogCisJ aWYgKCFmYi0+cjEwMGMwOCkgeworCQlkbWFfYWRkcl90IGFkZHIgPSBkbWFfbWFwX3BhZ2UoZGV2 aWNlLT5kZXYsIGZiLT5yMTAwYzA4X3BhZ2UsIDAsCisJCQkJCSAgICAgICBQQUdFX1NJWkUsIERN QV9CSURJUkVDVElPTkFMKTsKKwkJaWYgKCFkbWFfbWFwcGluZ19lcnJvcihkZXZpY2UtPmRldiwg YWRkcikpIHsKKwkJCWZiLT5yMTAwYzA4ID0gYWRkcjsKKwkJfSBlbHNlIHsKKwkJCW52a21fd2Fy bigmZmItPmJhc2Uuc3ViZGV2LAorCQkJCSAgImRtYV9tYXBfcGFnZSgpIGZhaWxlZCBvbiAxMDBj MDggcGFnZVxuIik7CisJCX0KKwl9CisKIAkvKiBOb3QgYSBjbHVlIHdoYXQgdGhpcyBpcyBleGFj dGx5LiAgV2l0aG91dCBwb2ludGluZyBpdCBhdCBhCiAJICogc2NyYXRjaCBwYWdlLCBWUkFNLT5H QVJUIGJsaXRzIHdpdGggTTJNRiAoYXMgaW4gRERYIERGUykKIAkgKiBjYXVzZSBJT01NVSAicmVh ZCBmcm9tIGFkZHJlc3MgMCIgZXJyb3JzIChyaCM1NjEyNjcpCiAJICovCi0JbnZrbV93cjMyKGRl dmljZSwgMHgxMDBjMDgsIGZiLT5yMTAwYzA4ID4+IDgpOworCWlmIChmYi0+cjEwMGMwOCkKKwkJ bnZrbV93cjMyKGRldmljZSwgMHgxMDBjMDgsIGZiLT5yMTAwYzA4ID4+IDgpOwogCiAJLyogVGhp cyBpcyBuZWVkZWQgdG8gZ2V0IG1lYW5pbmdmdWwgaW5mb3JtYXRpb24gZnJvbSAxMDBjOTAKIAkg KiBvbiB0cmFwcy4gTm8gaWRlYSB3aGF0IHRoZXNlIHZhbHVlcyBtZWFuIGV4YWN0bHkuICovCkBA IC0yMzMsMTEgKzI0NSwxMSBAQCBudjUwX2ZiX2R0b3Ioc3RydWN0IG52a21fZmIgKmJhc2UpCiAJ c3RydWN0IG52NTBfZmIgKmZiID0gbnY1MF9mYihiYXNlKTsKIAlzdHJ1Y3QgbnZrbV9kZXZpY2Ug KmRldmljZSA9IGZiLT5iYXNlLnN1YmRldi5kZXZpY2U7CiAKLQlpZiAoZmItPnIxMDBjMDhfcGFn ZSkgeworCWlmIChmYi0+cjEwMGMwOCkKIAkJZG1hX3VubWFwX3BhZ2UoZGV2aWNlLT5kZXYsIGZi LT5yMTAwYzA4LCBQQUdFX1NJWkUsCiAJCQkgICAgICAgRE1BX0JJRElSRUNUSU9OQUwpOwotCQlf X2ZyZWVfcGFnZShmYi0+cjEwMGMwOF9wYWdlKTsKLQl9CisKKwlfX2ZyZWVfcGFnZShmYi0+cjEw MGMwOF9wYWdlKTsKIAogCXJldHVybiBmYjsKIH0KQEAgLTI2NCwxMyArMjc2LDkgQEAgbnY1MF9m Yl9uZXdfKGNvbnN0IHN0cnVjdCBudjUwX2ZiX2Z1bmMgKmZ1bmMsIHN0cnVjdCBudmttX2Rldmlj ZSAqZGV2aWNlLAogCSpwZmIgPSAmZmItPmJhc2U7CiAKIAlmYi0+cjEwMGMwOF9wYWdlID0gYWxs b2NfcGFnZShHRlBfS0VSTkVMIHwgX19HRlBfWkVSTyk7Ci0JaWYgKGZiLT5yMTAwYzA4X3BhZ2Up IHsKLQkJZmItPnIxMDBjMDggPSBkbWFfbWFwX3BhZ2UoZGV2aWNlLT5kZXYsIGZiLT5yMTAwYzA4 X3BhZ2UsIDAsCi0JCQkJCSAgIFBBR0VfU0laRSwgRE1BX0JJRElSRUNUSU9OQUwpOwotCQlpZiAo ZG1hX21hcHBpbmdfZXJyb3IoZGV2aWNlLT5kZXYsIGZiLT5yMTAwYzA4KSkKLQkJCXJldHVybiAt RUZBVUxUOwotCX0gZWxzZSB7Ci0JCW52a21fd2FybigmZmItPmJhc2Uuc3ViZGV2LCAiZmFpbGVk IDEwMGMwOCBwYWdlIGFsbG9jXG4iKTsKKwlpZiAoIWZiLT5yMTAwYzA4X3BhZ2UpIHsKKwkJbnZr bV9lcnJvcigmZmItPmJhc2Uuc3ViZGV2LCAiZmFpbGVkIDEwMGMwOCBwYWdlIGFsbG9jXG4iKTsK KwkJcmV0dXJuIC1FTk9NRU07CiAJfQogCiAJcmV0dXJuIDA7Ci0tIAoyLjcuNAoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTm91dmVhdSBtYWlsaW5nIGxp c3QKTm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1Cg==