From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH 09/15] drm/bochs: Convert Bochs driver to Simple TTM Date: Mon, 8 Apr 2019 11:21:38 +0200 Message-ID: <20190408092144.4548-10-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 AF0C1897E7 for ; Mon, 8 Apr 2019 09:21:54 +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 LQogZHJpdmVycy9ncHUvZHJtL2JvY2hzL0tjb25maWcgICAgfCAgIDEgKwogZHJpdmVycy9ncHUv ZHJtL2JvY2hzL2JvY2hzLmggICAgfCAgIDggKy0KIGRyaXZlcnMvZ3B1L2RybS9ib2Nocy9ib2No c19tbS5jIHwgMTI1ICsrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDMgZmlsZXMgY2hh bmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTIwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9ib2Nocy9LY29uZmlnIGIvZHJpdmVycy9ncHUvZHJtL2JvY2hzL0tjb25m aWcKaW5kZXggNDBjNDg3Yjg5NzU3Li5mZGY5NWI3ZGNhYzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9ib2Nocy9LY29uZmlnCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9ib2Nocy9LY29uZmln CkBAIC00LDYgKzQsNyBAQCBjb25maWcgRFJNX0JPQ0hTCiAJc2VsZWN0IERSTV9LTVNfSEVMUEVS CiAJc2VsZWN0IERSTV9UVE0KIAlzZWxlY3QgRFJNX0dFTV9UVE1fSEVMUEVSCisJc2VsZWN0IERS TV9TSU1QTEVfVFRNX0hFTFBFUgogCWhlbHAKIAkgIENob29zZSB0aGlzIG9wdGlvbiBmb3IgcWVt dS4KIAkgIElmIE0gaXMgc2VsZWN0ZWQgdGhlIG1vZHVsZSB3aWxsIGJlIGNhbGxlZCBib2Nocy1k cm0uCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHMuaCBiL2RyaXZlcnMv Z3B1L2RybS9ib2Nocy9ib2Nocy5oCmluZGV4IDQzOGJiYTBiNTY1ZS4uN2ZiYjlhZTQ1ZTdkIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHMuaAorKysgYi9kcml2ZXJzL2dw dS9kcm0vYm9jaHMvYm9jaHMuaApAQCAtMTEsNiArMTEsOCBAQAogI2luY2x1ZGUgPGRybS9kcm1f Z2VtLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9nZW1fdHRtX2hlbHBlci5oPgogCisjaW5jbHVkZSA8 ZHJtL2RybV9zaW1wbGVfdHRtX2hlbHBlci5oPgorCiAjaW5jbHVkZSA8ZHJtL3R0bS90dG1fYm9f ZHJpdmVyLmg+CiAjaW5jbHVkZSA8ZHJtL3R0bS90dG1fcGFnZV9hbGxvYy5oPgogCkBAIC03Niwx MCArNzgsOCBAQCBzdHJ1Y3QgYm9jaHNfZGV2aWNlIHsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciBj b25uZWN0b3I7CiAKIAkvKiB0dG0gKi8KLQlzdHJ1Y3QgewotCQlzdHJ1Y3QgdHRtX2JvX2Rldmlj ZSBiZGV2OwotCQlib29sIGluaXRpYWxpemVkOwotCX0gdHRtOworCXN0cnVjdCBkcm1fc2ltcGxl X3R0bSB0dG07CisJYm9vbCB0dG1faW5pdGlhbGl6ZWQ7CiB9OwogCiAvKiAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t ICovCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHNfbW0uYyBiL2RyaXZl cnMvZ3B1L2RybS9ib2Nocy9ib2Noc19tbS5jCmluZGV4IDY1NTRmZDExNjc2Yi4uYzc2NjhlYWQ0 MGJkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHNfbW0uYworKysgYi9k cml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHNfbW0uYwpAQCAtOSwxMzggKzksMzEgQEAKIAogLyog LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSAqLwogCi1zdGF0aWMgaW5saW5lIHN0cnVjdCBib2Noc19kZXZpY2UgKmJv Y2hzX2JkZXYoc3RydWN0IHR0bV9ib19kZXZpY2UgKmJkKQotewotCXJldHVybiBjb250YWluZXJf b2YoYmQsIHN0cnVjdCBib2Noc19kZXZpY2UsIHR0bS5iZGV2KTsKLX0KLQotc3RhdGljIGludCBi b2Noc19ib19pbml0X21lbV90eXBlKHN0cnVjdCB0dG1fYm9fZGV2aWNlICpiZGV2LCB1aW50MzJf dCB0eXBlLAotCQkJCSAgc3RydWN0IHR0bV9tZW1fdHlwZV9tYW5hZ2VyICptYW4pCi17Ci0Jc3dp dGNoICh0eXBlKSB7Ci0JY2FzZSBUVE1fUExfU1lTVEVNOgotCQltYW4tPmZsYWdzID0gVFRNX01F TVRZUEVfRkxBR19NQVBQQUJMRTsKLQkJbWFuLT5hdmFpbGFibGVfY2FjaGluZyA9IFRUTV9QTF9N QVNLX0NBQ0hJTkc7Ci0JCW1hbi0+ZGVmYXVsdF9jYWNoaW5nID0gVFRNX1BMX0ZMQUdfQ0FDSEVE OwotCQlicmVhazsKLQljYXNlIFRUTV9QTF9WUkFNOgotCQltYW4tPmZ1bmMgPSAmdHRtX2JvX21h bmFnZXJfZnVuYzsKLQkJbWFuLT5mbGFncyA9IFRUTV9NRU1UWVBFX0ZMQUdfRklYRUQgfAotCQkJ VFRNX01FTVRZUEVfRkxBR19NQVBQQUJMRTsKLQkJbWFuLT5hdmFpbGFibGVfY2FjaGluZyA9IFRU TV9QTF9GTEFHX1VOQ0FDSEVEIHwKLQkJCVRUTV9QTF9GTEFHX1dDOwotCQltYW4tPmRlZmF1bHRf Y2FjaGluZyA9IFRUTV9QTF9GTEFHX1dDOwotCQlicmVhazsKLQlkZWZhdWx0OgotCQlEUk1fRVJS T1IoIlVuc3VwcG9ydGVkIG1lbW9yeSB0eXBlICV1XG4iLCAodW5zaWduZWQpdHlwZSk7Ci0JCXJl dHVybiAtRUlOVkFMOwotCX0KLQlyZXR1cm4gMDsKLX0KLQotc3RhdGljIGludCBib2Noc190dG1f aW9fbWVtX3Jlc2VydmUoc3RydWN0IHR0bV9ib19kZXZpY2UgKmJkZXYsCi0JCQkJICAgIHN0cnVj dCB0dG1fbWVtX3JlZyAqbWVtKQotewotCXN0cnVjdCB0dG1fbWVtX3R5cGVfbWFuYWdlciAqbWFu ID0gJmJkZXYtPm1hblttZW0tPm1lbV90eXBlXTsKLQlzdHJ1Y3QgYm9jaHNfZGV2aWNlICpib2No cyA9IGJvY2hzX2JkZXYoYmRldik7Ci0KLQltZW0tPmJ1cy5hZGRyID0gTlVMTDsKLQltZW0tPmJ1 cy5vZmZzZXQgPSAwOwotCW1lbS0+YnVzLnNpemUgPSBtZW0tPm51bV9wYWdlcyA8PCBQQUdFX1NI SUZUOwotCW1lbS0+YnVzLmJhc2UgPSAwOwotCW1lbS0+YnVzLmlzX2lvbWVtID0gZmFsc2U7Ci0J aWYgKCEobWFuLT5mbGFncyAmIFRUTV9NRU1UWVBFX0ZMQUdfTUFQUEFCTEUpKQotCQlyZXR1cm4g LUVJTlZBTDsKLQlzd2l0Y2ggKG1lbS0+bWVtX3R5cGUpIHsKLQljYXNlIFRUTV9QTF9TWVNURU06 Ci0JCS8qIHN5c3RlbSBtZW1vcnkgKi8KLQkJcmV0dXJuIDA7Ci0JY2FzZSBUVE1fUExfVlJBTToK LQkJbWVtLT5idXMub2Zmc2V0ID0gbWVtLT5zdGFydCA8PCBQQUdFX1NISUZUOwotCQltZW0tPmJ1 cy5iYXNlID0gYm9jaHMtPmZiX2Jhc2U7Ci0JCW1lbS0+YnVzLmlzX2lvbWVtID0gdHJ1ZTsKLQkJ YnJlYWs7Ci0JZGVmYXVsdDoKLQkJcmV0dXJuIC1FSU5WQUw7Ci0JCWJyZWFrOwotCX0KLQlyZXR1 cm4gMDsKLX0KLQotc3RhdGljIHZvaWQgYm9jaHNfdHRtX2lvX21lbV9mcmVlKHN0cnVjdCB0dG1f Ym9fZGV2aWNlICpiZGV2LAotCQkJCSAgc3RydWN0IHR0bV9tZW1fcmVnICptZW0pCi17Ci19Ci0K LXN0YXRpYyB2b2lkIGJvY2hzX3R0bV9iYWNrZW5kX2Rlc3Ryb3koc3RydWN0IHR0bV90dCAqdHQp Ci17Ci0JdHRtX3R0X2ZpbmkodHQpOwotCWtmcmVlKHR0KTsKLX0KLQotc3RhdGljIHN0cnVjdCB0 dG1fYmFja2VuZF9mdW5jIGJvY2hzX3R0X2JhY2tlbmRfZnVuYyA9IHsKLQkuZGVzdHJveSA9ICZi b2Noc190dG1fYmFja2VuZF9kZXN0cm95LAotfTsKLQotc3RhdGljIHN0cnVjdCB0dG1fdHQgKmJv Y2hzX3R0bV90dF9jcmVhdGUoc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibywKLQkJCQkJICB1 aW50MzJfdCBwYWdlX2ZsYWdzKQotewotCXN0cnVjdCB0dG1fdHQgKnR0OwotCi0JdHQgPSBremFs bG9jKHNpemVvZihzdHJ1Y3QgdHRtX3R0KSwgR0ZQX0tFUk5FTCk7Ci0JaWYgKHR0ID09IE5VTEwp Ci0JCXJldHVybiBOVUxMOwotCXR0LT5mdW5jID0gJmJvY2hzX3R0X2JhY2tlbmRfZnVuYzsKLQlp ZiAodHRtX3R0X2luaXQodHQsIGJvLCBwYWdlX2ZsYWdzKSkgewotCQlrZnJlZSh0dCk7Ci0JCXJl dHVybiBOVUxMOwotCX0KLQlyZXR1cm4gdHQ7Ci19Ci0KLXN0YXRpYyBzdHJ1Y3QgdHRtX2JvX2Ry aXZlciBib2Noc19ib19kcml2ZXIgPSB7Ci0JLnR0bV90dF9jcmVhdGUgPSBib2Noc190dG1fdHRf Y3JlYXRlLAotCS5pbml0X21lbV90eXBlID0gYm9jaHNfYm9faW5pdF9tZW1fdHlwZSwKLQkuZXZp Y3Rpb25fdmFsdWFibGUgPSB0dG1fYm9fZXZpY3Rpb25fdmFsdWFibGUsCitzdGF0aWMgY29uc3Qg c3RydWN0IGRybV9zaW1wbGVfdHRtX2Z1bmNzIGJvY2hzX3NpbXBsZV90dG1fZnVuY3MgPSB7CiAJ LmV2aWN0X2ZsYWdzID0gZHJtX2dlbV90dG1fYm9fZHJpdmVyX2V2aWN0X2ZsYWdzLAotCS5tb3Zl ID0gTlVMTCwKLQkudmVyaWZ5X2FjY2VzcyA9IGRybV9nZW1fdHRtX2JvX2RyaXZlcl92ZXJpZnlf YWNjZXNzLAotCS5pb19tZW1fcmVzZXJ2ZSA9ICZib2Noc190dG1faW9fbWVtX3Jlc2VydmUsCi0J LmlvX21lbV9mcmVlID0gJmJvY2hzX3R0bV9pb19tZW1fZnJlZSwKKwkudmVyaWZ5X2FjY2VzcyA9 IGRybV9nZW1fdHRtX2JvX2RyaXZlcl92ZXJpZnlfYWNjZXNzCiB9OwogCiBpbnQgYm9jaHNfbW1f aW5pdChzdHJ1Y3QgYm9jaHNfZGV2aWNlICpib2NocykKIHsKLQlzdHJ1Y3QgdHRtX2JvX2Rldmlj ZSAqYmRldiA9ICZib2Nocy0+dHRtLmJkZXY7Ci0JaW50IHJldDsKLQotCXJldCA9IHR0bV9ib19k ZXZpY2VfaW5pdCgmYm9jaHMtPnR0bS5iZGV2LAotCQkJCSAmYm9jaHNfYm9fZHJpdmVyLAotCQkJ CSBib2Nocy0+ZGV2LT5hbm9uX2lub2RlLT5pX21hcHBpbmcsCi0JCQkJIHRydWUpOwotCWlmIChy ZXQpIHsKLQkJRFJNX0VSUk9SKCJFcnJvciBpbml0aWFsaXNpbmcgYm8gZHJpdmVyOyAlZFxuIiwg cmV0KTsKLQkJcmV0dXJuIHJldDsKLQl9Ci0KLQlyZXQgPSB0dG1fYm9faW5pdF9tbShiZGV2LCBU VE1fUExfVlJBTSwKLQkJCSAgICAgYm9jaHMtPmZiX3NpemUgPj4gUEFHRV9TSElGVCk7CisJaW50 IHJldCA9IGRybV9zaW1wbGVfdHRtX2luaXQoJmJvY2hzLT50dG0sIGJvY2hzLT5kZXYsIGJvY2hz LT5mYl9iYXNlLAorCQkJCSAgICAgIGJvY2hzLT5mYl9zaXplLCAmYm9jaHNfc2ltcGxlX3R0bV9m dW5jcyk7CiAJaWYgKHJldCkgewotCQlEUk1fRVJST1IoIkZhaWxlZCB0dG0gVlJBTSBpbml0OiAl ZFxuIiwgcmV0KTsKKwkJRFJNX0VSUk9SKCJFcnJvciBpbml0aWFsaXppbmcgU2ltcGxlIFRUTTsg JWRcbiIsIHJldCk7CiAJCXJldHVybiByZXQ7CiAJfQogCi0JYm9jaHMtPnR0bS5pbml0aWFsaXpl ZCA9IHRydWU7CisJYm9jaHMtPnR0bV9pbml0aWFsaXplZCA9IHRydWU7CiAJcmV0dXJuIDA7CiB9 CiAKIHZvaWQgYm9jaHNfbW1fZmluaShzdHJ1Y3QgYm9jaHNfZGV2aWNlICpib2NocykKIHsKLQlp ZiAoIWJvY2hzLT50dG0uaW5pdGlhbGl6ZWQpCisJaWYgKCFib2Nocy0+dHRtX2luaXRpYWxpemVk KQogCQlyZXR1cm47CiAKLQl0dG1fYm9fZGV2aWNlX3JlbGVhc2UoJmJvY2hzLT50dG0uYmRldik7 Ci0JYm9jaHMtPnR0bS5pbml0aWFsaXplZCA9IGZhbHNlOworCWRybV9zaW1wbGVfdHRtX2NsZWFu dXAoJmJvY2hzLT50dG0pOworCWJvY2hzLT50dG1faW5pdGlhbGl6ZWQgPSBmYWxzZTsKIH0KIAog aW50IGJvY2hzX21tYXAoc3RydWN0IGZpbGUgKmZpbHAsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAq dm1hKQotLSAKMi4yMS4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmkt ZGV2ZWw=