From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhi Wang Subject: Re: [RFCv2 02/14] drm/i915/gvt: Introduce the basic architecture of GVT-g Date: Fri, 26 Feb 2016 13:38:37 +0800 Message-ID: <56CFE4DD.5030409@intel.com> References: <1455795741-3487-1-git-send-email-zhi.a.wang@intel.com> <1455795741-3487-3-git-send-email-zhi.a.wang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id AAEBA6E9E1 for ; Fri, 26 Feb 2016 05:41:16 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Tian, Kevin" , "intel-gfx@lists.freedesktop.org" , "igvt-g@lists.01.org" Cc: "daniel.vetter@ffwll.ch" , "Cowperthwaite, David J" , "Lv, Zhiyuan" List-Id: intel-gfx@lists.freedesktop.org CgpPbiAwMi8yNC8xNiAxNjowOCwgVGlhbiwgS2V2aW4gd3JvdGU6Cj4+IEZyb206IFdhbmcsIFpo aSBBCj4+IFNlbnQ6IFRodXJzZGF5LCBGZWJydWFyeSAxOCwgMjAxNiA3OjQyIFBNCj4+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvZ3Z0LmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9ndnQvZ3Z0LmMKPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPj4gaW5kZXggMDAwMDAwMC4u NTJjZmEzMgo+PiAtLS0gL2Rldi9udWxsCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2 dC9ndnQuYwo+IFsuLi5dCj4+ICsKPj4gKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgo+PiArI2lu Y2x1ZGUgPHhlbi94ZW4uaD4KPgo+IHdvdWxkIHRoaXMgaW5jbHVzaW9uIGxlYWQgdG8gYSBkZXBl bmRlbmN5IG9uIFhlbj8KPgo+PiArI2luY2x1ZGUgPGxpbnV4L2t0aHJlYWQuaD4KPj4gKwo+PiAr I2luY2x1ZGUgImd2dC5oIgo+PiArCj4+ICtzdHJ1Y3QgZ3Z0X2hvc3QgZ3Z0X2hvc3Q7Cj4+ICsK Pj4gK3N0YXRpYyBjb25zdCBjaGFyICogY29uc3Qgc3VwcG9ydGVkX2h5cGVydmlzb3JzW10gPSB7 Cj4+ICsJW0dWVF9IWVBFUlZJU09SX1RZUEVfWEVOXSA9ICJYZW4gSHlwZXJ2aXNvciIsCj4+ICsJ W0dWVF9IWVBFUlZJU09SX1RZUEVfS1ZNXSA9ICJLVk0iLAo+PiArfTsKPj4gKwo+PiArc3RhdGlj IGludCBndnRfaW5pdF9ob3N0KHZvaWQpCj4+ICt7Cj4+ICsJc3RydWN0IGd2dF9ob3N0ICpob3N0 ID0gJmd2dF9ob3N0Owo+PiArCj4+ICsJaWYgKCFndnQuZW5hYmxlKSB7Cj4+ICsJCWd2dF9kYmdf Y29yZSgiR1ZULWcgaGFzIGJlZW4gZGlzYWJsZWQgYnkga2VybmVsIHBhcmFtZXRlciIpOwo+PiAr CQlyZXR1cm4gLUVJTlZBTDsKPj4gKwl9Cj4+ICsKPj4gKwlpZiAoaG9zdC0+aW5pdGlhbGl6ZWQp IHsKPj4gKwkJZ3Z0X2VycigiR1ZULWcgaGFzIGFscmVhZHkgYmVlbiBpbml0aWFsaXplZCEiKTsK Pj4gKwkJcmV0dXJuIC1FSU5WQUw7Cj4+ICsJfQo+PiArCj4+ICsJLyogWGVuIERPTSBVICovCj4+ ICsJaWYgKHhlbl9kb21haW4oKSAmJiAheGVuX2luaXRpYWxfZG9tYWluKCkpCj4+ICsJCXJldHVy biAtRU5PREVWOwo+PiArCj4+ICsJaWYgKHhlbl9pbml0aWFsX2RvbWFpbigpKSB7Cj4+ICsJCS8q IFhlbiBEb20wICovCj4+ICsJCWhvc3QtPmtkbSA9IHRyeV90aGVuX3JlcXVlc3RfbW9kdWxlKAo+ PiArCQkJCXN5bWJvbF9nZXQoeGVuZ3Rfa2RtKSwgInhlbmd0Iik7Cj4+ICsJCWhvc3QtPmh5cGVy dmlzb3JfdHlwZSA9IEdWVF9IWVBFUlZJU09SX1RZUEVfWEVOOwo+PiArCX0gZWxzZSB7Cj4+ICsJ CS8qIG5vdCBpbiBYZW4uIFRyeSBLVk1HVCAqLwo+PiArCQlob3N0LT5rZG0gPSB0cnlfdGhlbl9y ZXF1ZXN0X21vZHVsZSgKPj4gKwkJCQlzeW1ib2xfZ2V0KGt2bWd0X2tkbSksICJrdm0iKTsKPj4g KwkJaG9zdC0+aHlwZXJ2aXNvcl90eXBlID0gR1ZUX0hZUEVSVklTT1JfVFlQRV9LVk07Cj4+ICsJ fQo+Cj4gSXQnZCBiZSBjbGVhcmVyIHRvIGFkZCBhIGNvbW1lbnQgaGVyZSB0aGF0IGFib3ZlIGlz IG9ubHkgYSBzaG9ydC10ZXJtCj4gc29sdXRpb24uIEl0J3Mgc3VwcG9zZWQgdG8gaGF2ZSBhIGdl bmVyYWwgcmVnaXN0cmF0aW9uIGZyYW1ld29yayBpbgo+IHRoZSBmdXR1cmUgc28gYW55IGh5cGVy dmlzb3IgKFhlbiBvciBLVk0pIGNhbiByZWdpc3RlciB0aGVpciBjYWxsYmFja3MKPiBhdCBydW4t dGltZSwgdGhlbiB3ZSdsbCBub3QgbmVlZCBzdWNoIGRpcmVjdCBYZW4vS1ZNIHJlZmVyZW5jZXMg b3IKPiBoYXJkIGFzc3VtcHRpb24gaW4gZHJpdmVyIGNvZGUuIFRoYXQgZnJhbWV3b3JrIGlzIG5v dyBzdGlsbCB1bmRlcgo+IGRpc2N1c3Npb24gd2l0aCBYZW4vS1ZNIGNvbW11bml0eS4gSXQgZG9l c24ndCBwcmV2ZW50IHJldmlld2luZyBvZgo+IG90aGVyIGJpdHMsIGJ1dCBiZXR0ZXIgdG8gZG9j dW1lbnQgaXQgY2xlYXIgaGVyZS4KPgpJJ20ga2VlcGluZyB0aGlua2luZyBpZiB3ZSBzaG91bGQg c3BsaXQgdGhpcyBwYXRjaCBpbnRvIG11Y2ggc21hbGxlciAKcGF0Y2hlcyBhbmQganVzdCBwdXNo IHNvbWUgYmFzaWMgZGVmaW5pdGlvbnMgYW5kIGZ1bmN0aW9ucyBmb3IgR1ZUIApjb250ZXh0IHBh dGNoIHJldmlldyBoZXJlIGJlZm9yZSBNUFQgZnJhbWV3b3JrIGlzIGZpbmFsbHkgZmlndXJlZCBv dXQgCndpdGggUkggZ3V5cz8KCj4+ICtzdGF0aWMgaW50IGluaXRfZGV2aWNlX2luZm8oc3RydWN0 IHBndF9kZXZpY2UgKnBkZXYpCj4+ICt7Cj4+ICsJc3RydWN0IGd2dF9kZXZpY2VfaW5mbyAqaW5m byA9ICZwZGV2LT5kZXZpY2VfaW5mbzsKPj4gKwo+PiArCWlmICghSVNfQlJPQURXRUxMKHBkZXYt PmRldl9wcml2KSkgewo+PiArCQlEUk1fREVCVUdfRFJJVkVSKCJVbnN1cHBvcnRlZCBHRU4gZGV2 aWNlIik7Cj4+ICsJCXJldHVybiAtRU5PREVWOwo+PiArCX0KPj4gKwo+PiArCWlmIChJU19CUk9B RFdFTEwocGRldi0+ZGV2X3ByaXYpKSB7Cj4+ICsJCWluZm8tPm1heF9ndHRfZ21fc3ogPSAoMVVM TCA8PCAzMik7IC8qIDRHQiAqLwo+PiArCQkvKgo+PiArCQkgKiBUaGUgbGF5b3V0IG9mIEJBUjAg aW4gQkRXOgo+PiArCQkgKiB8PCAtIE1NSU8gMk1CIC0+fDwtIFJlc2VydmVkIDZNQiAtPnw8LSBN QVggR1RUIDhNQi0+fAo+PiArCQkgKgo+PiArCQkgKiBHVFQgb2Zmc2V0IGluIEJBUjAgc3RhcnRz IGZyb20gOE1CIHRvIDE2TUIsIGFuZAo+PiArCQkgKiBXaGF0ZXZlciBHVFQgc2l6ZSBpcyBjb25m aWd1cmVkIGluIEJJT1MsCj4+ICsJCSAqIHRoZSBzaXplIG9mIEJBUjAgaXMgYWx3YXlzIDE2TUIu IFRoZSBhY3R1YWwgY29uZmlndXJlZAo+PiArCQkgKiBHVFQgc2l6ZSBjYW4gYmUgZm91bmQgaW4g R01DSF9DVFJMLgo+PiArCQkgKi8KPj4gKwkJaW5mby0+Z3R0X3N0YXJ0X29mZnNldCA9ICgxVUwg PDwgMjMpOyAvKiA4TUIgKi8KPj4gKwkJaW5mby0+bWF4X2d0dF9zaXplID0gKDFVTCA8PCAyMyk7 IC8qIDhNQiAqLwo+PiArCQlpbmZvLT5ndHRfZW50cnlfc2l6ZSA9IDg7Cj4+ICsJCWluZm8tPmd0 dF9lbnRyeV9zaXplX3NoaWZ0ID0gMzsKPj4gKwkJaW5mby0+Z21hZHJfYnl0ZXNfaW5fY21kID0g ODsKPj4gKwkJaW5mby0+bW1pb19zaXplID0gMiAqIDEwMjQgKiAxMDI0OyAvKiAyTUIgKi8KPgo+ IEFib3ZlIGFyZSBwdXJlIGRldmljZSBpbmZvLiBKb29uYXMsIGRvIHlvdSB0aGluayB3aGV0aGVy IGl0IG1ha2VzCj4gc2Vuc2UgdG8gbWFrZSB0aGVtIHRvIGRybV9pOTE1X3ByaXZhdGUsIHRob3Vn aCBndnQgaXMgdGhlIG9ubHkKPiB1c2VyIHRvZGF5Pwo+Cj4+ICsJfQo+PiArCj4+ICsJcmV0dXJu IDA7Cj4+ICt9Cj4+ICsKPj4gK3N0YXRpYyB2b2lkIGluaXRfaW5pdGlhbF9jZmdfc3BhY2Vfc3Rh dGUoc3RydWN0IHBndF9kZXZpY2UgKnBkZXYpCj4KPiAnaW5pdCcgLT4gJ3NldHVwJwo+Cj4+ICt7 Cj4+ICsJc3RydWN0IHBjaV9kZXYgKnBjaV9kZXYgPSBwZGV2LT5kZXZfcHJpdi0+ZGV2LT5wZGV2 Owo+PiArCWludCBpOwo+PiArCj4+ICsJZ3Z0X2RiZ19jb3JlKCJpbml0IGluaXRpYWwgY2ZnIHNw YWNlLCBpZCAlZCIsIHBkZXYtPmlkKTsKPj4gKwo+PiArCWZvciAoaSA9IDA7IGkgPCBHVlRfQ0ZH X1NQQUNFX1NaOyBpICs9IDQpCj4+ICsJCXBjaV9yZWFkX2NvbmZpZ19kd29yZChwY2lfZGV2LCBp LAo+PiArCQkJCSh1MzIgKikmcGRldi0+aW5pdGlhbF9jZmdfc3BhY2VbaV0pOwo+PiArCj4+ICsJ Zm9yIChpID0gMDsgaSA8IEdWVF9CQVJfTlVNOyBpKyspIHsKPj4gKwkJcGRldi0+YmFyX3NpemVb aV0gPSBwY2lfcmVzb3VyY2VfbGVuKHBjaV9kZXYsIGkgKiAyKTsKPj4gKwkJZ3Z0X2RiZ19jb3Jl KCJiYXIgJWQgc2l6ZTogJWxseCIsIGksIHBkZXYtPmJhcl9zaXplW2ldKTsKPj4gKwl9Cj4+ICt9 Cj4+ICsKPj4gK3N0YXRpYyB2b2lkIGNsZWFuX2luaXRpYWxfbW1pb19zdGF0ZShzdHJ1Y3QgcGd0 X2RldmljZSAqcGRldikKPj4gK3sKPj4gKwlpZiAocGRldi0+Z3R0bW1pb192YSkgewo+PiArCQlp b3VubWFwKHBkZXYtPmd0dG1taW9fdmEpOwo+PiArCQlwZGV2LT5ndHRtbWlvX3ZhID0gTlVMTDsK Pj4gKwl9Cj4+ICsKPj4gKwlpZiAocGRldi0+Z21hZHJfdmEpIHsKPj4gKwkJaW91bm1hcChwZGV2 LT5nbWFkcl92YSk7Cj4+ICsJCXBkZXYtPmdtYWRyX3ZhID0gTlVMTDsKPj4gKwl9Cj4KPiBDYW4g d2UgcmV1c2UgZXhpc3RpbmcgbWFwcGluZyBpbiBpOTE1Pwo+ClllcywgYnV0IHdlIGhhdmUgdG8g Zmx1c2ggdGhlIHRsYiBzdHVmZnMgbGlrZSBpOTE1LCBhcyBpOTE1IG1hcHMgR1RUIApNTUlPcyBh cyBXQy4uLgoKPj4gK30KPj4gKwo+PiArc3RhdGljIGludCBpbml0X2luaXRpYWxfbW1pb19zdGF0 ZShzdHJ1Y3QgcGd0X2RldmljZSAqcGRldikKPj4gK3sKPgo+ICdpbml0JyAtPiAnc2V0dXAnCj4K Pj4gKwlzdHJ1Y3QgZ3Z0X2RldmljZV9pbmZvICppbmZvID0gJnBkZXYtPmRldmljZV9pbmZvOwo+ PiArCj4+ICsJdTY0IGJhcjAsIGJhcjE7Cj4+ICsJaW50IHJjOwo+PiArCj4+ICsJZ3Z0X2RiZ19j b3JlKCJpbml0IGluaXRpYWwgbW1pbyBzdGF0ZSwgaWQgJWQiLCBwZGV2LT5pZCk7Cj4+ICsKPj4g KwliYXIwID0gKih1NjQgKikmcGRldi0+aW5pdGlhbF9jZmdfc3BhY2VbR1ZUX1JFR19DRkdfU1BB Q0VfQkFSMF07Cj4+ICsJYmFyMSA9ICoodTY0ICopJnBkZXYtPmluaXRpYWxfY2ZnX3NwYWNlW0dW VF9SRUdfQ0ZHX1NQQUNFX0JBUjFdOwo+PiArCj4+ICsJcGRldi0+Z3R0bW1pb19iYXNlID0gYmFy MCAmIH4weGY7Cj4+ICsJcGRldi0+cmVnX251bSA9IGluZm8tPm1taW9fc2l6ZSAvIDQ7Cj4+ICsJ cGRldi0+Z21hZHJfYmFzZSA9IGJhcjEgJiB+MHhmOwo+PiArCj4+ICsJcGRldi0+Z3R0bW1pb192 YSA9IGlvcmVtYXAocGRldi0+Z3R0bW1pb19iYXNlLCBwZGV2LT5iYXJfc2l6ZVswXSk7Cj4+ICsJ aWYgKCFwZGV2LT5ndHRtbWlvX3ZhKSB7Cj4+ICsJCWd2dF9lcnIoImZhaWwgdG8gbWFwIEdUVE1N SU8gQkFSLiIpOwo+PiArCQlyZXR1cm4gLUVGQVVMVDsKPj4gKwl9Cj4+ICsKPj4gKwlwZGV2LT5n bWFkcl92YSA9IGlvcmVtYXAocGRldi0+Z21hZHJfYmFzZSwgcGRldi0+YmFyX3NpemVbMl0pOwo+ PiArCWlmICghcGRldi0+Z21hZHJfdmEpIHsKPj4gKwkJZ3Z0X2VycigiZmFpbCB0byBtYXAgR01B RFIgQkFSLiIpOwo+PiArCQlyYyA9IC1FRkFVTFQ7Cj4+ICsJCWdvdG8gZXJyOwo+PiArCX0KPj4g Kwo+PiArCWd2dF9kYmdfY29yZSgiYmFyMDogMHglbGx4LCBiYXIxOiAweCVsbHgiLCBiYXIwLCBi YXIxKTsKPj4gKwlndnRfZGJnX2NvcmUoIm1taW8gc2l6ZTogJXgiLCBwZGV2LT5tbWlvX3NpemUp Owo+PiArCWd2dF9kYmdfY29yZSgiZ3R0bW1pbzogMHglbGx4LCBnbWFkcjogMHglbGx4IiwgcGRl di0+Z3R0bW1pb19iYXNlLAo+PiArCQkJcGRldi0+Z21hZHJfYmFzZSk7Cj4+ICsJZ3Z0X2RiZ19j b3JlKCJndHRtbWlvX3ZhOiAlcCIsIHBkZXYtPmd0dG1taW9fdmEpOwo+PiArCWd2dF9kYmdfY29y ZSgiZ21hZHJfdmE6ICVwIiwgcGRldi0+Z21hZHJfdmEpOwo+PiArCj4KPiBzaW5jZSB5b3UgY2Fs bGVkICdpbml0aWFsX21taW9fc3RhdGUnLCBzdXBwb3NlIHdlIHNob3VsZCBkbyBhIE1NSU8gc25h cHNob3QKPiBoZXJlLgo+Ck9yIHdlIG1vdmUgdGhlc2UgY29kZSBpbnRvIGJhc2ljIG1taW8gZW11 bGF0aW9uIHBhdGNoPyA6KQo+ICAgWy4uLl0KPj4gKwo+PiArc3RhdGljIHN0cnVjdCBwZ3RfZGV2 aWNlICphbGxvY19wZ3RfZGV2aWNlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikK Pj4gK3sKPj4gKwlzdHJ1Y3QgZ3Z0X2hvc3QgKmhvc3QgPSAmZ3Z0X2hvc3Q7Cj4+ICsJc3RydWN0 IHBndF9kZXZpY2UgKnBkZXYgPSBOVUxMOwo+PiArCj4+ICsJcGRldiA9IHZ6YWxsb2Moc2l6ZW9m KCpwZGV2KSk7Cj4+ICsJaWYgKCFwZGV2KQo+PiArCQlyZXR1cm4gTlVMTDsKPj4gKwo+PiArCW11 dGV4X2xvY2soJmhvc3QtPmRldmljZV9pZHJfbG9jayk7Cj4+ICsJcGRldi0+aWQgPSBpZHJfYWxs b2MoJmhvc3QtPmRldmljZV9pZHIsIHBkZXYsIDAsIDAsIEdGUF9LRVJORUwpOwo+Cj4gY3VyaW91 cyB3aGF0IHN1Y2ggSUQgaGVscCBoZXJlPyBXZSBhbHJlYWR5IGhhdmUgZWl0aGVyIGRldl9wcml2 IG9yCj4gcGd0X2RldmljZSBwb2ludGVyIHBhc3NlZCBhcm91bmQuIElzbid0IGl0IGVub3VnaCB0 byBtYXJrIGEgZGV2aWNlPwo+ClRoaXMgY29kZSBwaWVjZSBjb21lcyBmcm9tIG91ciBwZ3QgZGV2 aWNlIGxpc3QuIGN1cnJlbnRseSBzZWVtcyB0aGVyZSBpcyAKbm8gZm9yX2VhY2hfcGd0X2Rldmlj ZSgpIHJlcXVpcmVtZW50LCB3aWxsIHJlbW92ZSBpdCBpbiB0aGUgbmV4dCB2ZXJzaW9uCj4gWy4u Ll0KPj4gKwo+PiArLyoqCj4+ICsgKiBndnRfY3JlYXRlX3BndF9kZXZpY2UgLSBjcmVhdGUgYSBH VlQgcGh5c2ljYWwgZGV2aWNlCj4+ICsgKiBAZGV2OiBkcm0gZGV2aWNlCj4+ICsgKgo+PiArICog VGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgYXQgdGhlIGluaXRpYWxpemF0aW9uIHN0YWdlLCB0byBj cmVhdGUgYSBwaHlzaWNhbAo+PiArICogR1ZUIGRldmljZSBhbmQgaW5pdGlhbGl6ZSBuZWNlc3Nh cnkgR1ZUIGNvbXBvbmVudHMgZm9yIGl0Lgo+PiArICoKPj4gKyAqIFJldHVybnM6Cj4+ICsgKiBw b2ludGVyIHRvIHRoZSBwZ3RfZGV2aWNlIHN0cnVjdHVyZSwgTlVMTCBpZiBmYWlsZWQuCj4+ICsg Ki8KPj4gK3ZvaWQgKmd2dF9jcmVhdGVfcGd0X2RldmljZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCj4KPiBzaG91bGQgd2UgcmVtb3ZlICdwZ3QnIGNvbXBsZXRlbHk/IFdlIGNh biBhbHdheXMgdXNlICdndnRfZGV2aWNlJwo+IGFzIHJlZmVyZW5jZSB0byB0aGUgb2JqZWN0LCBh bmQgdGhlbiBhYm92ZSBjYW4gYmUgZ3Z0X2NyZWF0ZV9kZXZpY2UKPiBvciBndnRfY3JlYXRlX3Bo eXNpY2FsX2RldmljZSwgb3IgaWYgJ2NyZWF0ZScgaXMgYSBiaXQgbWlzbGVhZGluZyBtYXliZQo+ IGd2dF9pbml0aWFsaXplX2RldmljZSBpcyBjbGVhbmVyPwo+Ck9LLiA6KQo+IFRoYW5rcwo+IEtl dmluCj4KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==