From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH 13/15] drm/vboxvideo: Convert vboxvideo driver to Simple TTM Date: Mon, 8 Apr 2019 11:21:42 +0200 Message-ID: <20190408092144.4548-14-tzimmermann@suse.de> References: <20190408092144.4548-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 88132897E0 for ; Mon, 8 Apr 2019 09:21:56 +0000 (UTC) In-Reply-To: <20190408092144.4548-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, Jerry.Zhang@amd.com, hdegoede@redhat.com, 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 U2lnbmVkLW9mZi1ieTogVGhvbWFzIFppbW1lcm1hbm4gPHR6aW1tZXJtYW5uQHN1c2UuZGU+Ci0t LQogZHJpdmVycy9ncHUvZHJtL3Zib3h2aWRlby9LY29uZmlnICAgIHwgICAxICsKIGRyaXZlcnMv Z3B1L2RybS92Ym94dmlkZW8vdmJveF9kcnYuaCB8ICAgNiArLQogZHJpdmVycy9ncHUvZHJtL3Zi b3h2aWRlby92Ym94X3R0bS5jIHwgMTIzICsrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMyBm aWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxMTggZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3Zib3h2aWRlby9LY29uZmlnIGIvZHJpdmVycy9ncHUvZHJt L3Zib3h2aWRlby9LY29uZmlnCmluZGV4IGMxY2E4N2RmODFkZi4uZTI5ZGYzNjA5NzhkIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdmJveHZpZGVvL0tjb25maWcKKysrIGIvZHJpdmVycy9n cHUvZHJtL3Zib3h2aWRlby9LY29uZmlnCkBAIC00LDYgKzQsNyBAQCBjb25maWcgRFJNX1ZCT1hW SURFTwogCXNlbGVjdCBEUk1fS01TX0hFTFBFUgogCXNlbGVjdCBEUk1fVFRNCiAJc2VsZWN0IERS TV9HRU1fVFRNX0hFTFBFUgorCXNlbGVjdCBEUk1fU0lNUExFX1RUTV9IRUxQRVIKIAlzZWxlY3Qg R0VORVJJQ19BTExPQ0FUT1IKIAloZWxwCiAJICBUaGlzIGlzIGEgS01TIGRyaXZlciBmb3IgdGhl IHZpcnR1YWwgR3JhcGhpY3MgQ2FyZCB1c2VkIGluCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vdmJveHZpZGVvL3Zib3hfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vdmJveHZpZGVvL3Zib3hf ZHJ2LmgKaW5kZXggN2RiNGU5NjE4MDVkLi5kNGNmY2M2MzM5ZWYgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS92Ym94dmlkZW8vdmJveF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vdmJv eHZpZGVvL3Zib3hfZHJ2LmgKQEAgLTIwLDYgKzIwLDggQEAKICNpbmNsdWRlIDxkcm0vZHJtX2dl bS5oPgogI2luY2x1ZGUgPGRybS9kcm1fZ2VtX3R0bV9oZWxwZXIuaD4KIAorI2luY2x1ZGUgPGRy bS9kcm1fc2ltcGxlX3R0bV9oZWxwZXIuaD4KKwogI2luY2x1ZGUgPGRybS90dG0vdHRtX2JvX2Fw aS5oPgogI2luY2x1ZGUgPGRybS90dG0vdHRtX2JvX2RyaXZlci5oPgogI2luY2x1ZGUgPGRybS90 dG0vdHRtX3BsYWNlbWVudC5oPgpAQCAtNzgsOSArODAsNyBAQCBzdHJ1Y3QgdmJveF9wcml2YXRl IHsKIAogCWludCBmYl9tdHJyOwogCi0Jc3RydWN0IHsKLQkJc3RydWN0IHR0bV9ib19kZXZpY2Ug YmRldjsKLQl9IHR0bTsKKwlzdHJ1Y3QgZHJtX3NpbXBsZV90dG0gdHRtOwogCiAJc3RydWN0IG11 dGV4IGh3X211dGV4OyAvKiBwcm90ZWN0cyBtb2Rlc2V0IGFuZCBhY2NlbC92YnZhIGFjY2Vzc2Vz ICovCiAJc3RydWN0IHdvcmtfc3RydWN0IGhvdHBsdWdfd29yazsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS92Ym94dmlkZW8vdmJveF90dG0uYyBiL2RyaXZlcnMvZ3B1L2RybS92Ym94dmlk ZW8vdmJveF90dG0uYwppbmRleCBhMWQ2NGUxZWE5MGMuLjExNWVjNDQ2MzZhYiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL3Zib3h2aWRlby92Ym94X3R0bS5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS92Ym94dmlkZW8vdmJveF90dG0uYwpAQCAtMTEsMTI4ICsxMSwyNSBAQAogI2luY2x1ZGUg PGRybS90dG0vdHRtX3BhZ2VfYWxsb2MuaD4KICNpbmNsdWRlICJ2Ym94X2Rydi5oIgogCi1zdGF0 aWMgaW5saW5lIHN0cnVjdCB2Ym94X3ByaXZhdGUgKnZib3hfYmRldihzdHJ1Y3QgdHRtX2JvX2Rl dmljZSAqYmQpCi17Ci0JcmV0dXJuIGNvbnRhaW5lcl9vZihiZCwgc3RydWN0IHZib3hfcHJpdmF0 ZSwgdHRtLmJkZXYpOwotfQotCi1zdGF0aWMgaW50Ci12Ym94X2JvX2luaXRfbWVtX3R5cGUoc3Ry dWN0IHR0bV9ib19kZXZpY2UgKmJkZXYsIHUzMiB0eXBlLAotCQkgICAgICBzdHJ1Y3QgdHRtX21l bV90eXBlX21hbmFnZXIgKm1hbikKLXsKLQlzd2l0Y2ggKHR5cGUpIHsKLQljYXNlIFRUTV9QTF9T WVNURU06Ci0JCW1hbi0+ZmxhZ3MgPSBUVE1fTUVNVFlQRV9GTEFHX01BUFBBQkxFOwotCQltYW4t PmF2YWlsYWJsZV9jYWNoaW5nID0gVFRNX1BMX01BU0tfQ0FDSElORzsKLQkJbWFuLT5kZWZhdWx0 X2NhY2hpbmcgPSBUVE1fUExfRkxBR19DQUNIRUQ7Ci0JCWJyZWFrOwotCWNhc2UgVFRNX1BMX1ZS QU06Ci0JCW1hbi0+ZnVuYyA9ICZ0dG1fYm9fbWFuYWdlcl9mdW5jOwotCQltYW4tPmZsYWdzID0g VFRNX01FTVRZUEVfRkxBR19GSVhFRCB8IFRUTV9NRU1UWVBFX0ZMQUdfTUFQUEFCTEU7Ci0JCW1h bi0+YXZhaWxhYmxlX2NhY2hpbmcgPSBUVE1fUExfRkxBR19VTkNBQ0hFRCB8IFRUTV9QTF9GTEFH X1dDOwotCQltYW4tPmRlZmF1bHRfY2FjaGluZyA9IFRUTV9QTF9GTEFHX1dDOwotCQlicmVhazsK LQlkZWZhdWx0OgotCQlEUk1fRVJST1IoIlVuc3VwcG9ydGVkIG1lbW9yeSB0eXBlICV1XG4iLCAo dW5zaWduZWQgaW50KXR5cGUpOwotCQlyZXR1cm4gLUVJTlZBTDsKLQl9Ci0KLQlyZXR1cm4gMDsK LX0KLQotc3RhdGljIGludCB2Ym94X3R0bV9pb19tZW1fcmVzZXJ2ZShzdHJ1Y3QgdHRtX2JvX2Rl dmljZSAqYmRldiwKLQkJCQkgICBzdHJ1Y3QgdHRtX21lbV9yZWcgKm1lbSkKLXsKLQlzdHJ1Y3Qg dHRtX21lbV90eXBlX21hbmFnZXIgKm1hbiA9ICZiZGV2LT5tYW5bbWVtLT5tZW1fdHlwZV07Ci0J c3RydWN0IHZib3hfcHJpdmF0ZSAqdmJveCA9IHZib3hfYmRldihiZGV2KTsKLQotCW1lbS0+YnVz LmFkZHIgPSBOVUxMOwotCW1lbS0+YnVzLm9mZnNldCA9IDA7Ci0JbWVtLT5idXMuc2l6ZSA9IG1l bS0+bnVtX3BhZ2VzIDw8IFBBR0VfU0hJRlQ7Ci0JbWVtLT5idXMuYmFzZSA9IDA7Ci0JbWVtLT5i dXMuaXNfaW9tZW0gPSBmYWxzZTsKLQlpZiAoIShtYW4tPmZsYWdzICYgVFRNX01FTVRZUEVfRkxB R19NQVBQQUJMRSkpCi0JCXJldHVybiAtRUlOVkFMOwotCXN3aXRjaCAobWVtLT5tZW1fdHlwZSkg ewotCWNhc2UgVFRNX1BMX1NZU1RFTToKLQkJLyogc3lzdGVtIG1lbW9yeSAqLwotCQlyZXR1cm4g MDsKLQljYXNlIFRUTV9QTF9WUkFNOgotCQltZW0tPmJ1cy5vZmZzZXQgPSBtZW0tPnN0YXJ0IDw8 IFBBR0VfU0hJRlQ7Ci0JCW1lbS0+YnVzLmJhc2UgPSBwY2lfcmVzb3VyY2Vfc3RhcnQodmJveC0+ ZGRldi5wZGV2LCAwKTsKLQkJbWVtLT5idXMuaXNfaW9tZW0gPSB0cnVlOwotCQlicmVhazsKLQlk ZWZhdWx0OgotCQlyZXR1cm4gLUVJTlZBTDsKLQl9Ci0JcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyB2 b2lkIHZib3hfdHRtX2lvX21lbV9mcmVlKHN0cnVjdCB0dG1fYm9fZGV2aWNlICpiZGV2LAotCQkJ CSBzdHJ1Y3QgdHRtX21lbV9yZWcgKm1lbSkKLXsKLX0KLQotc3RhdGljIHZvaWQgdmJveF90dG1f YmFja2VuZF9kZXN0cm95KHN0cnVjdCB0dG1fdHQgKnR0KQotewotCXR0bV90dF9maW5pKHR0KTsK LQlrZnJlZSh0dCk7Ci19Ci0KLXN0YXRpYyBzdHJ1Y3QgdHRtX2JhY2tlbmRfZnVuYyB2Ym94X3R0 X2JhY2tlbmRfZnVuYyA9IHsKLQkuZGVzdHJveSA9ICZ2Ym94X3R0bV9iYWNrZW5kX2Rlc3Ryb3ks Ci19OwotCi1zdGF0aWMgc3RydWN0IHR0bV90dCAqdmJveF90dG1fdHRfY3JlYXRlKHN0cnVjdCB0 dG1fYnVmZmVyX29iamVjdCAqYm8sCi0JCQkJCSB1MzIgcGFnZV9mbGFncykKLXsKLQlzdHJ1Y3Qg dHRtX3R0ICp0dDsKLQotCXR0ID0ga3phbGxvYyhzaXplb2YoKnR0KSwgR0ZQX0tFUk5FTCk7Ci0J aWYgKCF0dCkKLQkJcmV0dXJuIE5VTEw7Ci0KLQl0dC0+ZnVuYyA9ICZ2Ym94X3R0X2JhY2tlbmRf ZnVuYzsKLQlpZiAodHRtX3R0X2luaXQodHQsIGJvLCBwYWdlX2ZsYWdzKSkgewotCQlrZnJlZSh0 dCk7Ci0JCXJldHVybiBOVUxMOwotCX0KLQotCXJldHVybiB0dDsKLX0KLQotc3RhdGljIHN0cnVj dCB0dG1fYm9fZHJpdmVyIHZib3hfYm9fZHJpdmVyID0gewotCS50dG1fdHRfY3JlYXRlID0gdmJv eF90dG1fdHRfY3JlYXRlLAotCS5pbml0X21lbV90eXBlID0gdmJveF9ib19pbml0X21lbV90eXBl LAotCS5ldmljdGlvbl92YWx1YWJsZSA9IHR0bV9ib19ldmljdGlvbl92YWx1YWJsZSwKK3N0YXRp YyBjb25zdCBzdHJ1Y3QgZHJtX3NpbXBsZV90dG1fZnVuY3MgdmJveF9zaW1wbGVfdHRtX2Z1bmNz ID0gewogCS5ldmljdF9mbGFncyA9IGRybV9nZW1fdHRtX2JvX2RyaXZlcl9ldmljdF9mbGFncywK LQkudmVyaWZ5X2FjY2VzcyA9IGRybV9nZW1fdHRtX2JvX2RyaXZlcl92ZXJpZnlfYWNjZXNzLAot CS5pb19tZW1fcmVzZXJ2ZSA9ICZ2Ym94X3R0bV9pb19tZW1fcmVzZXJ2ZSwKLQkuaW9fbWVtX2Zy ZWUgPSAmdmJveF90dG1faW9fbWVtX2ZyZWUsCisJLnZlcmlmeV9hY2Nlc3MgPSBkcm1fZ2VtX3R0 bV9ib19kcml2ZXJfdmVyaWZ5X2FjY2VzcwogfTsKIAogaW50IHZib3hfbW1faW5pdChzdHJ1Y3Qg dmJveF9wcml2YXRlICp2Ym94KQogewogCWludCByZXQ7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRl diA9ICZ2Ym94LT5kZGV2OwotCXN0cnVjdCB0dG1fYm9fZGV2aWNlICpiZGV2ID0gJnZib3gtPnR0 bS5iZGV2OwogCi0JcmV0ID0gdHRtX2JvX2RldmljZV9pbml0KCZ2Ym94LT50dG0uYmRldiwKLQkJ CQkgJnZib3hfYm9fZHJpdmVyLAotCQkJCSBkZXYtPmFub25faW5vZGUtPmlfbWFwcGluZywKLQkJ CQkgdHJ1ZSk7CisJcmV0ID0gZHJtX3NpbXBsZV90dG1faW5pdCgmdmJveC0+dHRtLCBkZXYsCisJ CQkJICBwY2lfcmVzb3VyY2Vfc3RhcnQoZGV2LT5wZGV2LCAwKSwKKwkJCQkgIHZib3gtPmF2YWls YWJsZV92cmFtX3NpemUsCisJCQkJICAmdmJveF9zaW1wbGVfdHRtX2Z1bmNzKTsKIAlpZiAocmV0 KSB7Ci0JCURSTV9FUlJPUigiRXJyb3IgaW5pdGlhbGlzaW5nIGJvIGRyaXZlcjsgJWRcbiIsIHJl dCk7CisJCURSTV9FUlJPUigiRXJyb3IgaW5pdGlhbGl6aW5nIFNpbXBsZSBUVE07ICVkXG4iLCBy ZXQpOwogCQlyZXR1cm4gcmV0OwogCX0KIAotCXJldCA9IHR0bV9ib19pbml0X21tKGJkZXYsIFRU TV9QTF9WUkFNLAotCQkJICAgICB2Ym94LT5hdmFpbGFibGVfdnJhbV9zaXplID4+IFBBR0VfU0hJ RlQpOwotCWlmIChyZXQpIHsKLQkJRFJNX0VSUk9SKCJGYWlsZWQgdHRtIFZSQU0gaW5pdDogJWRc biIsIHJldCk7Ci0JCWdvdG8gZXJyX2RldmljZV9yZWxlYXNlOwotCX0KLQogI2lmZGVmIERSTV9N VFJSX1dDCiAJdmJveC0+ZmJfbXRyciA9IGRybV9tdHJyX2FkZChwY2lfcmVzb3VyY2Vfc3RhcnQo ZGV2LT5wZGV2LCAwKSwKIAkJCQkgICAgIHBjaV9yZXNvdXJjZV9sZW4oZGV2LT5wZGV2LCAwKSwK QEAgLTE0MiwxMCArMzksNiBAQCBpbnQgdmJveF9tbV9pbml0KHN0cnVjdCB2Ym94X3ByaXZhdGUg KnZib3gpCiAJCQkJCSBwY2lfcmVzb3VyY2VfbGVuKGRldi0+cGRldiwgMCkpOwogI2VuZGlmCiAJ cmV0dXJuIDA7Ci0KLWVycl9kZXZpY2VfcmVsZWFzZToKLQl0dG1fYm9fZGV2aWNlX3JlbGVhc2Uo JnZib3gtPnR0bS5iZGV2KTsKLQlyZXR1cm4gcmV0OwogfQogCiB2b2lkIHZib3hfbW1fZmluaShz dHJ1Y3QgdmJveF9wcml2YXRlICp2Ym94KQpAQCAtMTU3LDcgKzUwLDcgQEAgdm9pZCB2Ym94X21t X2Zpbmkoc3RydWN0IHZib3hfcHJpdmF0ZSAqdmJveCkKICNlbHNlCiAJYXJjaF9waHlzX3djX2Rl bCh2Ym94LT5mYl9tdHJyKTsKICNlbmRpZgotCXR0bV9ib19kZXZpY2VfcmVsZWFzZSgmdmJveC0+ dHRtLmJkZXYpOworCWRybV9zaW1wbGVfdHRtX2NsZWFudXAoJnZib3gtPnR0bSk7CiB9CiAKIGlu dCB2Ym94X21tYXAoc3RydWN0IGZpbGUgKmZpbHAsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1h KQotLSAKMi4yMS4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWw=