From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm/vkms: Introduce basic VKMS driver Date: Tue, 15 May 2018 13:32:16 +0200 Message-ID: <20180515113216.GA3438@phenom.ffwll.local> References: <20180514143346.GA21695@haneen-vb> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4F0CA6E217 for ; Tue, 15 May 2018 11:35:17 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id a67-v6so399851wmf.3 for ; Tue, 15 May 2018 04:35:17 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20180514143346.GA21695@haneen-vb> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Haneen Mohammed Cc: daniel.vetter@ffwll.ch, rodrigosiqueiramelo@gmail.com, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBNYXkgMTQsIDIwMTggYXQgMDU6MzM6NDZQTSArMDMwMCwgSGFuZWVuIE1vaGFtbWVk IHdyb3RlOgo+IFRoaXMgcGF0Y2ggaW50cm9kdWNlcyBWaXJ0dWFsIEtlcm5lbCBNb2RlLVNldHRp bmcgKFZLTVMpIGRyaXZlci4gSXQKPiBjcmVhdGVzIGEgdmVyeSBiYXNpYyBrbXMgZHJpdmVyIHdp dGggMSBjcnRjL2VuY29kZXIvY29ubmVjdG9yL3BsYW5lLgo+IAo+IFZLTVMgZHJpdmVyIHdvdWxk IGJlIHVzZWZ1bCBmb3IgdGVzdGluZywgb3IgZm9yIHJ1bm5pbmcgWCAob3Igc2ltaWxhcikKPiBv biBoZWFkbGVzcyBtYWNoaW5lcyBhbmQgYmUgYWJsZSB0byBzdGlsbCB1c2UgdGhlIEdQVS4gVGh1 cyBpdCBlbmFibGVzCj4gYSB2aXJ0dWFsIGRpc3BsYXkgd2l0aG91dCB0aGUgbmVlZCBmb3IgaGFy ZHdhcmUgZGlzcGxheSBjYXBhYmlsaXR5Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IEhhbmVlbiBNb2hh bW1lZCA8aGFtb2hhbW1lZC5zYUBnbWFpbC5jb20+CgpDcmVhdGVkIGEgbmV3IHRvcGljIGJyYW5j aCB0b3BpYy92a21zIGluIGRybS1taXNjIGFuZCBwdXNoZWQgaXQgdGhlcmUuCgpUaGFua3MsIERh bmllbAoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL0tjb25maWcgICAgICAgICB8ICAgNiArKwo+ ICBkcml2ZXJzL2dwdS9kcm0vTWFrZWZpbGUgICAgICAgIHwgICAxICsKPiAgZHJpdmVycy9ncHUv ZHJtL3ZrbXMvTWFrZWZpbGUgICB8ICAgMyArCj4gIGRyaXZlcnMvZ3B1L2RybS92a21zL3ZrbXNf ZHJ2LmMgfCAxNDYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgZHJpdmVycy9n cHUvZHJtL3ZrbXMvdmttc19kcnYuaCB8ICAxMyArKysKPiAgNSBmaWxlcyBjaGFuZ2VkLCAxNjkg aW5zZXJ0aW9ucygrKQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL3ZrbXMv TWFrZWZpbGUKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS92a21zL3ZrbXNf ZHJ2LmMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS92a21zL3ZrbXNfZHJ2 LmgKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL0tjb25maWcgYi9kcml2ZXJzL2dw dS9kcm0vS2NvbmZpZwo+IGluZGV4IDJhNzJkMmZlYjc2ZC4uN2RiM2Q4MmNiYjI3IDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9LY29uZmlnCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL0tj b25maWcKPiBAQCAtMjEzLDYgKzIxMywxMiBAQCBjb25maWcgRFJNX1ZHRU0KPiAgCSAgYXMgdXNl ZCBieSBNZXNhJ3Mgc29mdHdhcmUgcmVuZGVyZXIgZm9yIGVuaGFuY2VkIHBlcmZvcm1hbmNlLgo+ ICAJICBJZiBNIGlzIHNlbGVjdGVkIHRoZSBtb2R1bGUgd2lsbCBiZSBjYWxsZWQgdmdlbS4KPiAg Cj4gK2NvbmZpZyBEUk1fVktNUwo+ICsJdHJpc3RhdGUgIlZpcnR1YWwgS01TIgo+ICsJZGVwZW5k cyBvbiBEUk0KPiArCWhlbHAKPiArCSAgQ2hvb3NlIHRoaXMgb3B0aW9uIHRvIGdldCBhIHZpcnR1 YWwga2VybmFsIG1vZGUtc2V0dGluZyBkcml2ZXIuCj4gKwkgIElmIE0gaXMgc2VsZWN0ZWQgdGhl IG1vZHVsZSB3aWxsIGJlIGNhbGxlZCB2a21zLgo+ICAKPiAgc291cmNlICJkcml2ZXJzL2dwdS9k cm0vZXh5bm9zL0tjb25maWciCj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vTWFr ZWZpbGUgYi9kcml2ZXJzL2dwdS9kcm0vTWFrZWZpbGUKPiBpbmRleCBlZjlmM2RhYjI4N2YuLjg4 NzNkNDc2OTExNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vTWFrZWZpbGUKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vTWFrZWZpbGUKPiBAQCAtNjksNiArNjksNyBAQCBvYmotJChDT05G SUdfRFJNX1NBVkFHRSkrPSBzYXZhZ2UvCj4gIG9iai0kKENPTkZJR19EUk1fVk1XR0ZYKSs9IHZt d2dmeC8KPiAgb2JqLSQoQ09ORklHX0RSTV9WSUEpCSs9dmlhLwo+ICBvYmotJChDT05GSUdfRFJN X1ZHRU0pCSs9IHZnZW0vCj4gK29iai0kKENPTkZJR19EUk1fVktNUykJKz0gdmttcy8KPiAgb2Jq LSQoQ09ORklHX0RSTV9OT1VWRUFVKSArPW5vdXZlYXUvCj4gIG9iai0kKENPTkZJR19EUk1fRVhZ Tk9TKSArPWV4eW5vcy8KPiAgb2JqLSQoQ09ORklHX0RSTV9ST0NLQ0hJUCkgKz1yb2NrY2hpcC8K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3ZrbXMvTWFrZWZpbGUgYi9kcml2ZXJzL2dw dS9kcm0vdmttcy9NYWtlZmlsZQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAw MDAwMDAwLi4yYWVmOTQ4ZDNhMzQKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL3ZrbXMvTWFrZWZpbGUKPiBAQCAtMCwwICsxLDMgQEAKPiArdmttcy15IDo9IHZrbXNfZHJ2 Lm8KPiArCj4gK29iai0kKENPTkZJR19EUk1fVktNUykgKz0gdmttcy5vCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS92a21zL3ZrbXNfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vdmttcy92 a21zX2Rydi5jCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAwMDAuLmIx ZGYwOGVkMjNhMAo+IC0tLSAvZGV2L251bGwKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdmttcy92 a21zX2Rydi5jCj4gQEAgLTAsMCArMSwxNDYgQEAKPiArLyoKPiArICogVGhpcyBwcm9ncmFtIGlz IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKPiAr ICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKPiArICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy IHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKPiArICogKGF0IHlvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KPiArICovCj4gKwo+ICsjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Cj4g KyNpbmNsdWRlIDxkcm0vZHJtUC5oPgo+ICsjaW5jbHVkZSA8ZHJtL2RybV9nZW0uaD4KPiArI2lu Y2x1ZGUgPGRybS9kcm1fY3J0Y19oZWxwZXIuaD4KPiArI2luY2x1ZGUgInZrbXNfZHJ2LmgiCj4g Kwo+ICsjZGVmaW5lIERSSVZFUl9OQU1FCSJ2a21zIgo+ICsjZGVmaW5lIERSSVZFUl9ERVNDCSJW aXJ0dWFsIEtlcm5lbCBNb2RlIFNldHRpbmciCj4gKyNkZWZpbmUgRFJJVkVSX0RBVEUJIjIwMTgw NTE0Igo+ICsjZGVmaW5lIERSSVZFUl9NQUpPUgkxCj4gKyNkZWZpbmUgRFJJVkVSX01JTk9SCTAK PiArCj4gK3N0YXRpYyBzdHJ1Y3Qgdmttc19kZXZpY2UgKnZrbXNfZGV2aWNlOwo+ICsKPiArc3Rh dGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgdmttc19kcml2ZXJfZm9wcyA9IHsKPiAr CS5vd25lcgkJPSBUSElTX01PRFVMRSwKPiArCS5vcGVuCQk9IGRybV9vcGVuLAo+ICsJLm1tYXAJ CT0gZHJtX2dlbV9tbWFwLAo+ICsJLnVubG9ja2VkX2lvY3RsCT0gZHJtX2lvY3RsLAo+ICsJLmNv bXBhdF9pb2N0bAk9IGRybV9jb21wYXRfaW9jdGwsCj4gKwkucG9sbAkJPSBkcm1fcG9sbCwKPiAr CS5yZWFkCQk9IGRybV9yZWFkLAo+ICsJLmxsc2VlawkJPSBub19sbHNlZWssCj4gKwkucmVsZWFz ZQk9IGRybV9yZWxlYXNlLAo+ICt9Owo+ICsKPiArc3RhdGljIHZvaWQgdmttc19yZWxlYXNlKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gK3sKPiArCXN0cnVjdCB2a21zX2RldmljZSAqdmttcyA9 IGNvbnRhaW5lcl9vZihkZXYsIHN0cnVjdCB2a21zX2RldmljZSwgZHJtKTsKPiArCj4gKwlwbGF0 Zm9ybV9kZXZpY2VfdW5yZWdpc3Rlcih2a21zLT5wbGF0Zm9ybSk7Cj4gKwlkcm1fbW9kZV9jb25m aWdfY2xlYW51cCgmdmttcy0+ZHJtKTsKPiArCWRybV9kZXZfZmluaSgmdmttcy0+ZHJtKTsKPiAr fQo+ICsKPiArc3RydWN0IGRybV9kcml2ZXIgdmttc19kcml2ZXIgPSB7Cj4gKwkuZHJpdmVyX2Zl YXR1cmVzCT0gRFJJVkVSX01PREVTRVQgfCBEUklWRVJfQVRPTUlDIHwgRFJJVkVSX0dFTSwKPiAr CS5yZWxlYXNlCQk9IHZrbXNfcmVsZWFzZSwKPiArCS5mb3BzCQkJPSAmdmttc19kcml2ZXJfZm9w cywKPiArCj4gKwkubmFtZQkJCT0gRFJJVkVSX05BTUUsCj4gKwkuZGVzYwkJCT0gRFJJVkVSX0RF U0MsCj4gKwkuZGF0ZQkJCT0gRFJJVkVSX0RBVEUsCj4gKwkubWFqb3IJCQk9IERSSVZFUl9NQUpP UiwKPiArCS5taW5vcgkJCT0gRFJJVkVSX01JTk9SLAo+ICt9Owo+ICsKPiArc3RhdGljIGNvbnN0 IHUzMiB2a21zX2Zvcm1hdHNbXSA9IHsKPiArCURSTV9GT1JNQVRfWFJHQjg4ODgsCj4gK307Cj4g Kwo+ICtzdGF0aWMgdm9pZCB2a21zX2Nvbm5lY3Rvcl9kZXN0cm95KHN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IpCj4gK3sKPiArCWRybV9jb25uZWN0b3JfdW5yZWdpc3Rlcihjb25uZWN0 b3IpOwo+ICsJZHJtX2Nvbm5lY3Rvcl9jbGVhbnVwKGNvbm5lY3Rvcik7Cj4gK30KPiArCj4gK3N0 YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9mdW5jcyB2a21zX2Nvbm5lY3Rvcl9mdW5j cyA9IHsKPiArCS5maWxsX21vZGVzID0gZHJtX2hlbHBlcl9wcm9iZV9zaW5nbGVfY29ubmVjdG9y X21vZGVzLAo+ICsJLmRlc3Ryb3kgPSB2a21zX2Nvbm5lY3Rvcl9kZXN0cm95LAo+ICt9Owo+ICsK PiArc3RhdGljIGludCBfX2luaXQgdmttc19pbml0KHZvaWQpCj4gK3sKPiArCWludCByZXQ7Cj4g Kwo+ICsJdmttc19kZXZpY2UgPSBremFsbG9jKHNpemVvZigqdmttc19kZXZpY2UpLCBHRlBfS0VS TkVMKTsKPiArCWlmICghdmttc19kZXZpY2UpCj4gKwkJcmV0dXJuIC1FTk9NRU07Cj4gKwo+ICsJ cmV0ID0gZHJtX2Rldl9pbml0KCZ2a21zX2RldmljZS0+ZHJtLCAmdmttc19kcml2ZXIsIE5VTEwp Owo+ICsJaWYgKHJldCkKPiArCQlnb3RvIG91dF9mcmVlOwo+ICsKPiArCXZrbXNfZGV2aWNlLT5w bGF0Zm9ybSA9Cj4gKwkJcGxhdGZvcm1fZGV2aWNlX3JlZ2lzdGVyX3NpbXBsZShEUklWRVJfTkFN RSwgLTEsIE5VTEwsIDApOwo+ICsJaWYgKElTX0VSUih2a21zX2RldmljZS0+cGxhdGZvcm0pKSB7 Cj4gKwkJcmV0ID0gUFRSX0VSUih2a21zX2RldmljZS0+cGxhdGZvcm0pOwo+ICsJCWdvdG8gb3V0 X2Zpbmk7Cj4gKwl9Cj4gKwo+ICsJZHJtX21vZGVfY29uZmlnX2luaXQoJnZrbXNfZGV2aWNlLT5k cm0pOwo+ICsKPiArCXJldCA9IGRybV9jb25uZWN0b3JfaW5pdCgmdmttc19kZXZpY2UtPmRybSwg JnZrbXNfZGV2aWNlLT5jb25uZWN0b3IsCj4gKwkJCQkgJnZrbXNfY29ubmVjdG9yX2Z1bmNzLAo+ ICsJCQkJIERSTV9NT0RFX0NPTk5FQ1RPUl9WSVJUVUFMKTsKPiArCWlmIChyZXQgPCAwKSB7Cj4g KwkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gaW5pdCBjb25uZWN0b3JcbiIpOwo+ICsJCWdvdG8gb3V0 X3VucmVnaXN0ZXI7Cj4gKwl9Cj4gKwo+ICsJcmV0ID0gZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGVf aW5pdCgmdmttc19kZXZpY2UtPmRybSwKPiArCQkJCQkgICAmdmttc19kZXZpY2UtPnBpcGUsCj4g KwkJCQkJICAgTlVMTCwKPiArCQkJCQkgICB2a21zX2Zvcm1hdHMsCj4gKwkJCQkJICAgQVJSQVlf U0laRSh2a21zX2Zvcm1hdHMpLAo+ICsJCQkJCSAgIE5VTEwsCj4gKwkJCQkJICAgJnZrbXNfZGV2 aWNlLT5jb25uZWN0b3IpOwo+ICsJaWYgKHJldCA8IDApIHsKPiArCQlEUk1fRVJST1IoIkNhbm5v dCBzZXR1cCBzaW1wbGUgZGlzcGxheSBwaXBlXG4iKTsKPiArCQlnb3RvIG91dF91bnJlZ2lzdGVy Owo+ICsJfQo+ICsKPiArCXJldCA9IGRybV9kZXZfcmVnaXN0ZXIoJnZrbXNfZGV2aWNlLT5kcm0s IDApOwo+ICsJaWYgKHJldCkKPiArCQlnb3RvIG91dF91bnJlZ2lzdGVyOwo+ICsKPiArCWRybV9j b25uZWN0b3JfcmVnaXN0ZXIoJnZrbXNfZGV2aWNlLT5jb25uZWN0b3IpOwo+ICsKPiArCXJldHVy biAwOwo+ICsKPiArb3V0X3VucmVnaXN0ZXI6Cj4gKwlwbGF0Zm9ybV9kZXZpY2VfdW5yZWdpc3Rl cih2a21zX2RldmljZS0+cGxhdGZvcm0pOwo+ICtvdXRfZmluaToKPiArCWRybV9kZXZfZmluaSgm dmttc19kZXZpY2UtPmRybSk7Cj4gK291dF9mcmVlOgo+ICsJa2ZyZWUodmttc19kZXZpY2UpOwo+ ICsKPiArCXJldHVybiByZXQ7Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkIF9fZXhpdCB2a21zX2V4 aXQodm9pZCkKPiArewo+ICsJaWYgKCF2a21zX2RldmljZSkgewo+ICsJCURSTV9JTkZPKCJ2a21z X2RldmljZSBpcyBOVUxMLlxuIik7Cj4gKwkJcmV0dXJuOwo+ICsJfQo+ICsKPiArCWRybV9kZXZf dW5yZWdpc3Rlcigmdmttc19kZXZpY2UtPmRybSk7Cj4gKwlkcm1fZGV2X3B1dCgmdmttc19kZXZp Y2UtPmRybSk7Cj4gKwo+ICsJa2ZyZWUodmttc19kZXZpY2UpOwo+ICt9Cj4gKwo+ICttb2R1bGVf aW5pdCh2a21zX2luaXQpOwo+ICttb2R1bGVfZXhpdCh2a21zX2V4aXQpOwo+ICsKPiArTU9EVUxF X0RFU0NSSVBUSU9OKERSSVZFUl9ERVNDKTsKPiArTU9EVUxFX0xJQ0VOU0UoIkdQTCIpOwo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmttcy92a21zX2Rydi5oIGIvZHJpdmVycy9ncHUv ZHJtL3ZrbXMvdmttc19kcnYuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAw MDAwMDAwLi5jNzdjNWJmNTAzMmEKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL3ZrbXMvdmttc19kcnYuaAo+IEBAIC0wLDAgKzEsMTMgQEAKPiArI2lmbmRlZiBfVktNU19E UlZfSF8KPiArI2RlZmluZSBfVktNU19EUlZfSF8KPiArCj4gKyNpbmNsdWRlIDxkcm0vZHJtX3Np bXBsZV9rbXNfaGVscGVyLmg+Cj4gKwo+ICtzdHJ1Y3Qgdmttc19kZXZpY2Ugewo+ICsJc3RydWN0 IGRybV9kZXZpY2UgZHJtOwo+ICsJc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGxhdGZvcm07Cj4g KwlzdHJ1Y3QgZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGUgcGlwZTsKPiArCXN0cnVjdCBkcm1fY29u bmVjdG9yIGNvbm5lY3RvcjsKPiArfTsKPiArCj4gKyNlbmRpZiAvKiBfVktNU19EUlZfSF8gKi8K PiAtLSAKPiAyLjE3LjAKPiAKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVuZ2luZWVyLCBJ bnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK