From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH v4 15/19] drm/mgag200: Replace mapping code with drm_gem_vram_{kmap/kunmap}() Date: Mon, 6 May 2019 10:26:45 +0200 Message-ID: <20190506082649.942-16-tzimmermann@suse.de> References: <20190506082649.942-1-tzimmermann@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2D420896DD for ; Mon, 6 May 2019 08:27:04 +0000 (UTC) In-Reply-To: <20190506082649.942-1-tzimmermann@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: daniel@ffwll.ch, airlied@linux.ie, kraxel@redhat.com, christian.koenig@amd.com, ray.huang@amd.com, hdegoede@redhat.com, noralf@tronnes.org, sam@ravnborg.org, z.liuxinliang@hisilicon.com, zourongrong@gmail.com, kong.kongxinwei@hisilicon.com, puck.chen@hisilicon.com Cc: Thomas Zimmermann , dri-devel@lists.freedesktop.org, virtualization@lists.linux-foundation.org List-Id: dri-devel@lists.freedesktop.org VGhlIG1nYWcyMDAgZHJpdmVyIGVzdGFibGlzaGVzIHNldmVyYWwgbWVtb3J5IG1hcHBpbmdzIGZv ciBmcmFtZSBidWZmZXJzCmFuZCBjdXJzb3JzLiBUaGlzIHBhdGNoIGNvbnZlcnRzIHRoZSBkcml2 ZXIgdG8gdXNlIHRoZSBlcXVpdmFsZW50CmRybV9nZW1fdnJhbV9rbWFwKCkgZnVuY3Rpb25zLiBJ dCByZW1vdmVzIHRoZSBkZXBlbmRlbmNpZXMgb24gVFRNCmFuZCBjbGVhbnMgdXAgdGhlIGNvZGUu Cgp2NDoKCSogY2xlYW51cHMgZnJvbSBjaGVja3BhdGNoLnBsCgpTaWduZWQtb2ZmLWJ5OiBUaG9t YXMgWmltbWVybWFubiA8dHppbW1lcm1hbm5Ac3VzZS5kZT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v bWdhZzIwMC9tZ2FnMjAwX2N1cnNvci5jIHwgMzUgKysrKysrKysrKystLS0tLS0tLS0tLS0tCiBk cml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX2Rydi5oICAgIHwgIDEgLQogZHJpdmVycy9n cHUvZHJtL21nYWcyMDAvbWdhZzIwMF9mYi5jICAgICB8IDI0ICsrKysrKysrKystLS0tLS0KIGRy aXZlcnMvZ3B1L2RybS9tZ2FnMjAwL21nYWcyMDBfbW9kZS5jICAgfCAgOSArKysrLS0KIDQgZmls ZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMzIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9jdXJzb3IuYyBiL2RyaXZlcnMvZ3B1 L2RybS9tZ2FnMjAwL21nYWcyMDBfY3Vyc29yLmMKaW5kZXggY2NhMzkyMmY5ZjY3Li42YzFhOWQ3 MjRkODUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZ2FnMjAwL21nYWcyMDBfY3Vyc29y LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9jdXJzb3IuYwpAQCAtNDMs NiArNDMsNyBAQCBpbnQgbWdhX2NydGNfY3Vyc29yX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMs CiAJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmo7CiAJc3RydWN0IGRybV9nZW1fdnJhbV9vYmpl Y3QgKmdibyA9IE5VTEw7CiAJaW50IHJldCA9IDA7CisJdTggKnNyYywgKmRzdDsKIAl1bnNpZ25l ZCBpbnQgaSwgcm93LCBjb2w7CiAJdWludDMyX3QgY29sb3VyX3NldFsxNl07CiAJdWludDMyX3Qg Km5leHRfc3BhY2UgPSAmY29sb3VyX3NldFswXTsKQEAgLTEyNiwxOCArMTI3LDE3IEBAIGludCBt Z2FfY3J0Y19jdXJzb3Jfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJZGV2X2VycigmZGV2 LT5wZGV2LT5kZXYsICJmYWlsZWQgdG8gcmVzZXJ2ZSB1c2VyIGJvXG4iKTsKIAkJZ290byBvdXQx OwogCX0KLQlpZiAoIWdiby0+a21hcC52aXJ0dWFsKSB7Ci0JCXJldCA9IHR0bV9ib19rbWFwKCZn Ym8tPmJvLCAwLCBnYm8tPmJvLm51bV9wYWdlcywgJmdiby0+a21hcCk7Ci0JCWlmIChyZXQpIHsK LQkJCWRldl9lcnIoJmRldi0+cGRldi0+ZGV2LCAiZmFpbGVkIHRvIGttYXAgdXNlciBidWZmZXIg dXBkYXRlc1xuIik7Ci0JCQlnb3RvIG91dDI7Ci0JCX0KKwlzcmMgPSBkcm1fZ2VtX3ZyYW1fa21h cChnYm8sIHRydWUsIE5VTEwpOworCWlmIChJU19FUlIoc3JjKSkgeworCQlyZXQgPSBQVFJfRVJS KHNyYyk7CisJCWRldl9lcnIoJmRldi0+cGRldi0+ZGV2LCAiZmFpbGVkIHRvIGttYXAgdXNlciBi dWZmZXIgdXBkYXRlc1xuIik7CisJCWdvdG8gb3V0MjsKIAl9CiAKIAltZW1zZXQoJmNvbG91cl9z ZXRbMF0sIDAsIHNpemVvZih1aW50MzJfdCkqMTYpOwogCS8qIHdpZHRoKmhlaWdodCo0ID0gMTYz ODQgKi8KIAlmb3IgKGkgPSAwOyBpIDwgMTYzODQ7IGkgKz0gNCkgewotCQl0aGlzX2NvbG91ciA9 IGlvcmVhZDMyKGdiby0+a21hcC52aXJ0dWFsICsgaSk7CisJCXRoaXNfY29sb3VyID0gaW9yZWFk MzIoc3JjICsgaSk7CiAJCS8qIE5vIHRyYW5zcGFyZW5jeSAqLwogCQlpZiAodGhpc19jb2xvdXI+ PjI0ICE9IDB4ZmYgJiYKIAkJCXRoaXNfY29sb3VyPj4yNCAhPSAweDApIHsKQEAgLTE4OSwyMSAr MTg5LDE4IEBAIGludCBtZ2FfY3J0Y19jdXJzb3Jfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK IAl9CiAKIAkvKiBNYXAgdXAtY29taW5nIGJ1ZmZlciB0byB3cml0ZSBjb2xvdXIgaW5kaWNlcyAq LwotCWlmICghcGl4ZWxzX3ByZXYtPmttYXAudmlydHVhbCkgewotCQlyZXQgPSB0dG1fYm9fa21h cCgmcGl4ZWxzX3ByZXYtPmJvLCAwLAotCQkJCSAgcGl4ZWxzX3ByZXYtPmJvLm51bV9wYWdlcywK LQkJCQkgICZwaXhlbHNfcHJldi0+a21hcCk7Ci0JCWlmIChyZXQpIHsKLQkJCWRldl9lcnIoJmRl di0+cGRldi0+ZGV2LCAiZmFpbGVkIHRvIGttYXAgY3Vyc29yIHVwZGF0ZXNcbiIpOwotCQkJZ290 byBvdXQzOwotCQl9CisJZHN0ID0gZHJtX2dlbV92cmFtX2ttYXAocGl4ZWxzX3ByZXYsIHRydWUs IE5VTEwpOworCWlmIChJU19FUlIoZHN0KSkgeworCQlyZXQgPSBQVFJfRVJSKGRzdCk7CisJCWRl dl9lcnIoJmRldi0+cGRldi0+ZGV2LCAiZmFpbGVkIHRvIGttYXAgY3Vyc29yIHVwZGF0ZXNcbiIp OworCQlnb3RvIG91dDM7CiAJfQogCiAJLyogbm93IHdyaXRlIGNvbG91ciBpbmRpY2VzIGludG8g aGFyZHdhcmUgY3Vyc29yIGJ1ZmZlciAqLwogCWZvciAocm93ID0gMDsgcm93IDwgNjQ7IHJvdysr KSB7CiAJCW1lbXNldCgmdGhpc19yb3dbMF0sIDAsIDQ4KTsKIAkJZm9yIChjb2wgPSAwOyBjb2wg PCA2NDsgY29sKyspIHsKLQkJCXRoaXNfY29sb3VyID0gaW9yZWFkMzIoZ2JvLT5rbWFwLnZpcnR1 YWwgKyA0Kihjb2wgKyA2NCpyb3cpKTsKKwkJCXRoaXNfY29sb3VyID0gaW9yZWFkMzIoc3JjICsg NCooY29sICsgNjQqcm93KSk7CiAJCQkvKiB3cml0ZSB0cmFuc3BhcmVudCBwaXhlbHMgKi8KIAkJ CWlmICh0aGlzX2NvbG91cj4+MjQgPT0gMHgwKSB7CiAJCQkJdGhpc19yb3dbNDcgLSBjb2wvOF0g fD0gMHg4MD4+KGNvbCU4KTsKQEAgLTIyMSw3ICsyMTgsNyBAQCBpbnQgbWdhX2NydGNfY3Vyc29y X3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJCQkJfQogCQkJfQogCQl9Ci0JCW1lbWNweV90 b2lvKHBpeGVsc19wcmV2LT5rbWFwLnZpcnR1YWwgKyByb3cqNDgsICZ0aGlzX3Jvd1swXSwgNDgp OworCQltZW1jcHlfdG9pbyhkc3QgKyByb3cqNDgsICZ0aGlzX3Jvd1swXSwgNDgpOwogCX0KIAog CS8qIFByb2dyYW0gZ3B1IGFkZHJlc3Mgb2YgY3Vyc29yIGJ1ZmZlciAqLwpAQCAtMjQ3LDkgKzI0 NCw5IEBAIGludCBtZ2FfY3J0Y19jdXJzb3Jfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAl9 CiAJcmV0ID0gMDsKIAotCXR0bV9ib19rdW5tYXAoJnBpeGVsc19wcmV2LT5rbWFwKTsKKwlkcm1f Z2VtX3ZyYW1fa3VubWFwKHBpeGVsc19wcmV2KTsKICBvdXQzOgotCXR0bV9ib19rdW5tYXAoJmdi by0+a21hcCk7CisJZHJtX2dlbV92cmFtX2t1bm1hcChnYm8pOwogIG91dDI6CiAJZHJtX2dlbV92 cmFtX3VucmVzZXJ2ZShnYm8pOwogIG91dDE6CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v bWdhZzIwMC9tZ2FnMjAwX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9k cnYuaAppbmRleCAxNmNlNmIzMzhkY2UuLjYxODBhY2JjYTdjYSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbWdh ZzIwMC9tZ2FnMjAwX2Rydi5oCkBAIC0xMTUsNyArMTE1LDYgQEAgc3RydWN0IG1nYV9mYmRldiB7 CiAJc3RydWN0IG1nYV9mcmFtZWJ1ZmZlciBtZmI7CiAJdm9pZCAqc3lzcmFtOwogCWludCBzaXpl OwotCXN0cnVjdCB0dG1fYm9fa21hcF9vYmogbWFwcGluZzsKIAlpbnQgeDEsIHkxLCB4MiwgeTI7 IC8qIGRpcnR5IHJlY3QgKi8KIAlzcGlubG9ja190IGRpcnR5X2xvY2s7CiB9OwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9mYi5jIGIvZHJpdmVycy9ncHUvZHJt L21nYWcyMDAvbWdhZzIwMF9mYi5jCmluZGV4IDFiY2YwZDY1ODY4ZC4uODcyMTdiZGNlOWY4IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX2ZiLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9mYi5jCkBAIC0yNyw2ICsyNyw3IEBAIHN0YXRp YyB2b2lkIG1nYV9kaXJ0eV91cGRhdGUoc3RydWN0IG1nYV9mYmRldiAqbWZiZGV2LAogCWludCBz cmNfb2Zmc2V0LCBkc3Rfb2Zmc2V0OwogCWludCBicHAgPSBtZmJkZXYtPm1mYi5iYXNlLmZvcm1h dC0+Y3BwWzBdOwogCWludCByZXQgPSAtRUJVU1k7CisJdTggKmRzdDsKIAlib29sIHVubWFwID0g ZmFsc2U7CiAJYm9vbCBzdG9yZV9mb3JfbGF0ZXIgPSBmYWxzZTsKIAlpbnQgeDIsIHkyOwpAQCAt NzUsMjYgKzc2LDMxIEBAIHN0YXRpYyB2b2lkIG1nYV9kaXJ0eV91cGRhdGUoc3RydWN0IG1nYV9m YmRldiAqbWZiZGV2LAogCW1mYmRldi0+eDIgPSBtZmJkZXYtPnkyID0gMDsKIAlzcGluX3VubG9j a19pcnFyZXN0b3JlKCZtZmJkZXYtPmRpcnR5X2xvY2ssIGZsYWdzKTsKIAotCWlmICghZ2JvLT5r bWFwLnZpcnR1YWwpIHsKLQkJcmV0ID0gdHRtX2JvX2ttYXAoJmdiby0+Ym8sIDAsIGdiby0+Ym8u bnVtX3BhZ2VzLCAmZ2JvLT5rbWFwKTsKLQkJaWYgKHJldCkgeworCWRzdCA9IGRybV9nZW1fdnJh bV9rbWFwKGdibywgZmFsc2UsIE5VTEwpOworCWlmIChJU19FUlIoZHN0KSkgeworCQlEUk1fRVJS T1IoImZhaWxlZCB0byBrbWFwIGZiIHVwZGF0ZXNcbiIpOworCQlnb3RvIG91dDsKKwl9IGVsc2Ug aWYgKCFkc3QpIHsKKwkJZHN0ID0gZHJtX2dlbV92cmFtX2ttYXAoZ2JvLCB0cnVlLCBOVUxMKTsK KwkJaWYgKElTX0VSUihkc3QpKSB7CiAJCQlEUk1fRVJST1IoImZhaWxlZCB0byBrbWFwIGZiIHVw ZGF0ZXNcbiIpOwotCQkJZHJtX2dlbV92cmFtX3VucmVzZXJ2ZShnYm8pOwotCQkJcmV0dXJuOwor CQkJZ290byBvdXQ7CiAJCX0KIAkJdW5tYXAgPSB0cnVlOwogCX0KKwogCWZvciAoaSA9IHk7IGkg PD0geTI7IGkrKykgewogCQkvKiBhc3N1bWUgZXF1YWwgc3RyaWRlIGZvciBub3cgKi8KIAkJc3Jj X29mZnNldCA9IGRzdF9vZmZzZXQgPQogCQkJaSAqIG1mYmRldi0+bWZiLmJhc2UucGl0Y2hlc1sw XSArICh4ICogYnBwKTsKLQkJbWVtY3B5X3RvaW8oZ2JvLT5rbWFwLnZpcnR1YWwgKyBzcmNfb2Zm c2V0LAotCQkJICAgIG1mYmRldi0+c3lzcmFtICsgZHN0X29mZnNldCwgKHgyIC0geCArIDEpICog YnBwKTsKLQorCQltZW1jcHlfdG9pbyhkc3QgKyBkc3Rfb2Zmc2V0LCBtZmJkZXYtPnN5c3JhbSAr IHNyY19vZmZzZXQsCisJCQkgICAgKHgyIC0geCArIDEpICogYnBwKTsKIAl9CisKIAlpZiAodW5t YXApCi0JCXR0bV9ib19rdW5tYXAoJmdiby0+a21hcCk7CisJCWRybV9nZW1fdnJhbV9rdW5tYXAo Z2JvKTsKIAorb3V0OgogCWRybV9nZW1fdnJhbV91bnJlc2VydmUoZ2JvKTsKIH0KIApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9tb2RlLmMgYi9kcml2ZXJzL2dw dS9kcm0vbWdhZzIwMC9tZ2FnMjAwX21vZGUuYwppbmRleCAyNmJhYWU1ZWViOWIuLjMwOThiZjVj MTc0NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9tb2RlLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9tb2RlLmMKQEAgLTg3MCw2ICs4 NzAsNyBAQCBzdGF0aWMgaW50IG1nYV9jcnRjX2RvX3NldF9iYXNlKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YywKIAlzdHJ1Y3QgZHJtX2dlbV92cmFtX29iamVjdCAqZ2JvOwogCWludCByZXQ7CiAJczY0 IGdwdV9hZGRyOworCXZvaWQgKmJhc2U7CiAKIAkvKiBwdXNoIHRoZSBwcmV2aW91cyBmYiB0byBz eXN0ZW0gcmFtICovCiAJaWYgKCFhdG9taWMgJiYgZmIpIHsKQEAgLTkwMiwxMSArOTAzLDEzIEBA IHN0YXRpYyBpbnQgbWdhX2NydGNfZG9fc2V0X2Jhc2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLAog CiAJaWYgKCZtZGV2LT5tZmJkZXYtPm1mYiA9PSBtZ2FfZmIpIHsKIAkJLyogaWYgcHVzaGluZyBj b25zb2xlIGluIGttYXAgaXQgKi8KLQkJcmV0ID0gdHRtX2JvX2ttYXAoJmdiby0+Ym8sIDAsIGdi by0+Ym8ubnVtX3BhZ2VzLCAmZ2JvLT5rbWFwKTsKLQkJaWYgKHJldCkKKwkJYmFzZSA9IGRybV9n ZW1fdnJhbV9rbWFwKGdibywgdHJ1ZSwgTlVMTCk7CisJCWlmIChJU19FUlIoYmFzZSkpIHsKKwkJ CXJldCA9IFBUUl9FUlIoYmFzZSk7CiAJCQlEUk1fRVJST1IoImZhaWxlZCB0byBrbWFwIGZiY29u XG4iKTsKLQorCQl9CiAJfQorCiAJZHJtX2dlbV92cmFtX3VucmVzZXJ2ZShnYm8pOwogCiAJbWdh X3NldF9zdGFydF9hZGRyZXNzKGNydGMsICh1MzIpZ3B1X2FkZHIpOwotLSAKMi4yMS4wCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFp bGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw=