From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Micha=C5=82=20Winiarski?= Subject: [PATCH v2 03/12] drm/i915/guc: Allocate separate shared data object for GuC communication Date: Wed, 25 Oct 2017 22:00:11 +0200 Message-ID: <20171025200020.16636-4-michal.winiarski@intel.com> References: <20171025200020.16636-1-michal.winiarski@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id D01E489FC0 for ; Wed, 25 Oct 2017 20:01:05 +0000 (UTC) In-Reply-To: <20171025200020.16636-1-michal.winiarski@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org V2Ugd2VyZSB1c2luZyBmaXJzdCBwYWdlIG9mIGtlcm5lbCBjb250ZXh0IHJlbmRlciBzdGF0ZSBm b3Igc2hhcmluZyBkYXRhCndpdGggR3VDLiBXaGlsZSBpdCdzIGp1c3RpZmllZCBieSB0aGUgZmFj dCB0aGF0IHRob3NlIHBhZ2VzIGFyZSBub3QgdXNlZAoobm90ZSwgR3VDIHN0aWxsIGVuZm9yY2Vz IHRoaXMgbGF5b3V0IGFuZCByZWZ1c2VzIHRvIHdvcmsgaWYgd2UgcmVtb3ZlCnRoZSBleHRyYSBw YWdlIGluIGZyb250KSwgaXQncyBhbHNvIGNvbmZ1c2luZyAod2h5IGFyZSB3ZSB1c2luZyB0aGlz CnBhcnRpY3VsYXIgcGFnZT8pLiBMZXQncyBhbGxvY2F0ZSBhIHNlcGFyYXRlIG9iamVjdCBpbnN0 ZWFkLgoKdjI6IERyb3Aga2VybmVsX2NvbnRleHQgZnJvbSBHdUMgc3VzcGVuZC9yZXN1bWUgYWN0 aW9uIGhhbmRsZXJzIChNaWNoZWwpCgpTdWdnZXN0ZWQtYnk6IERhbmllbGUgQ2VyYW9sbyBTcHVy aW8gPGRhbmllbGUuY2VyYW9sb3NwdXJpb0BpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1pY2hh xYIgV2luaWFyc2tpIDxtaWNoYWwud2luaWFyc2tpQGludGVsLmNvbT4KQ2M6IENocmlzIFdpbHNv biA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogRGFuaWVsZSBDZXJhb2xvIFNwdXJpbyA8 ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGludGVsLmNvbT4KQ2M6IEplZmYgTWNHZWUgPGplZmYubWNn ZWVAaW50ZWwuY29tPgpDYzogTWljaGFsIFdhamRlY3prbyA8bWljaGFsLndhamRlY3prb0BpbnRl bC5jb20+CkNjOiBPc2NhciBNYXRlbyA8b3NjYXIubWF0ZW9AaW50ZWwuY29tPgpSZXZpZXdlZC1i eTogRGFuaWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGludGVsLmNv bT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19zdWJtaXNzaW9uLmMgfCAzNiAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2d1Yy5jICAgICAgICAgICB8IDE0ICsrLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZ3VjLmggICAgICAgICAgIHwgIDIgKysKIDMgZmlsZXMgY2hhbmdlZCwgMzkgaW5zZXJ0 aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNf c3VibWlzc2lvbi5jCmluZGV4IGUxOTViZGVlMDQ3My4uZDFhNTYxM2RhMjRjIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19zdWJtaXNzaW9uLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jCkBAIC00MzcsNiArNDM3LDMzIEBA IHN0YXRpYyB2b2lkIGd1Y19zdGFnZV9kZXNjX2Zpbmkoc3RydWN0IGludGVsX2d1YyAqZ3VjLAog CW1lbXNldChkZXNjLCAwLCBzaXplb2YoKmRlc2MpKTsKIH0KIAorc3RhdGljIGludCBndWNfc2hh cmVkX2RhdGFfY3JlYXRlKHN0cnVjdCBpbnRlbF9ndWMgKmd1YykKK3sKKwlzdHJ1Y3QgaTkxNV92 bWEgKnZtYTsKKwl2b2lkICp2YWRkcjsKKworCXZtYSA9IGludGVsX2d1Y19hbGxvY2F0ZV92bWEo Z3VjLCBQQUdFX1NJWkUpOworCWlmIChJU19FUlIodm1hKSkKKwkJcmV0dXJuIFBUUl9FUlIodm1h KTsKKworCXZhZGRyID0gaTkxNV9nZW1fb2JqZWN0X3Bpbl9tYXAodm1hLT5vYmosIEk5MTVfTUFQ X1dCKTsKKwlpZiAoSVNfRVJSKHZhZGRyKSkgeworCQlpOTE1X3ZtYV91bnBpbl9hbmRfcmVsZWFz ZSgmdm1hKTsKKwkJcmV0dXJuIFBUUl9FUlIodmFkZHIpOworCX0KKworCWd1Yy0+c2hhcmVkX2Rh dGEgPSB2bWE7CisJZ3VjLT5zaGFyZWRfZGF0YV92YWRkciA9IHZhZGRyOworCisJcmV0dXJuIDA7 Cit9CisKK3N0YXRpYyB2b2lkIGd1Y19zaGFyZWRfZGF0YV9kZXN0cm95KHN0cnVjdCBpbnRlbF9n dWMgKmd1YykKK3sKKwlpOTE1X2dlbV9vYmplY3RfdW5waW5fbWFwKGd1Yy0+c2hhcmVkX2RhdGEt Pm9iaik7CisJaTkxNV92bWFfdW5waW5fYW5kX3JlbGVhc2UoJmd1Yy0+c2hhcmVkX2RhdGEpOwor fQorCiAvKiBDb25zdHJ1Y3QgYSBXb3JrIEl0ZW0gYW5kIGFwcGVuZCBpdCB0byB0aGUgR3VDJ3Mg V29yayBRdWV1ZSAqLwogc3RhdGljIHZvaWQgZ3VjX3dxX2l0ZW1fYXBwZW5kKHN0cnVjdCBpOTE1 X2d1Y19jbGllbnQgKmNsaWVudCwKIAkJCSAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVl c3QgKnJxKQpAQCAtOTkzLDkgKzEwMjAsMTMgQEAgaW50IGk5MTVfZ3VjX3N1Ym1pc3Npb25faW5p dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJaWYgKHJldCkKIAkJcmV0dXJu IHJldDsKIAorCXJldCA9IGd1Y19zaGFyZWRfZGF0YV9jcmVhdGUoZ3VjKTsKKwlpZiAocmV0KQor CQlnb3RvIGVycl9zdGFnZV9kZXNjX3Bvb2w7CisKIAlyZXQgPSBpbnRlbF9ndWNfbG9nX2NyZWF0 ZShndWMpOwogCWlmIChyZXQgPCAwKQotCQlnb3RvIGVycl9zdGFnZV9kZXNjX3Bvb2w7CisJCWdv dG8gZXJyX3NoYXJlZF9kYXRhOwogCiAJcmV0ID0gZ3VjX2Fkc19jcmVhdGUoZ3VjKTsKIAlpZiAo cmV0IDwgMCkKQEAgLTEwMDUsNiArMTAzNiw4IEBAIGludCBpOTE1X2d1Y19zdWJtaXNzaW9uX2lu aXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCiBlcnJfbG9nOgogCWludGVs X2d1Y19sb2dfZGVzdHJveShndWMpOworZXJyX3NoYXJlZF9kYXRhOgorCWd1Y19zaGFyZWRfZGF0 YV9kZXN0cm95KGd1Yyk7CiBlcnJfc3RhZ2VfZGVzY19wb29sOgogCWd1Y19zdGFnZV9kZXNjX3Bv b2xfZGVzdHJveShndWMpOwogCXJldHVybiByZXQ7CkBAIC0xMDE2LDYgKzEwNDksNyBAQCB2b2lk IGk5MTVfZ3VjX3N1Ym1pc3Npb25fZmluaShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCiAKIAlndWNfYWRzX2Rlc3Ryb3koZ3VjKTsKIAlpbnRlbF9ndWNfbG9nX2Rlc3Ryb3koZ3Vj KTsKKwlndWNfc2hhcmVkX2RhdGFfZGVzdHJveShndWMpOwogCWd1Y19zdGFnZV9kZXNjX3Bvb2xf ZGVzdHJveShndWMpOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9ndWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Yy5jCmluZGV4IDEwMDM3YzBm ZGY5NS4uZjc0ZDUwZmRhZWIwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9ndWMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuYwpAQCAtMjY4LDcg KzI2OCw2IEBAIGludCBpbnRlbF9ndWNfYXV0aF9odWMoc3RydWN0IGludGVsX2d1YyAqZ3VjLCB1 MzIgcnNhX29mZnNldCkKIGludCBpbnRlbF9ndWNfc3VzcGVuZChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpCiB7CiAJc3RydWN0IGludGVsX2d1YyAqZ3VjID0gJmRldl9wcml2LT5n dWM7Ci0Jc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eDsKIAl1MzIgZGF0YVszXTsKIAogCWlm IChndWMtPmZ3LmxvYWRfc3RhdHVzICE9IElOVEVMX1VDX0ZJUk1XQVJFX1NVQ0NFU1MpCkBAIC0y NzYsMTQgKzI3NSwxMCBAQCBpbnQgaW50ZWxfZ3VjX3N1c3BlbmQoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2KQogCiAJZ2VuOV9kaXNhYmxlX2d1Y19pbnRlcnJ1cHRzKGRldl9wcml2 KTsKIAotCWN0eCA9IGRldl9wcml2LT5rZXJuZWxfY29udGV4dDsKLQogCWRhdGFbMF0gPSBJTlRF TF9HVUNfQUNUSU9OX0VOVEVSX1NfU1RBVEU7CiAJLyogYW55IHZhbHVlIGdyZWF0ZXIgdGhhbiBH VUNfUE9XRVJfRDAgKi8KIAlkYXRhWzFdID0gR1VDX1BPV0VSX0QxOwotCS8qIGZpcnN0IHBhZ2Ug aXMgc2hhcmVkIGRhdGEgd2l0aCBHdUMgKi8KLQlkYXRhWzJdID0gZ3VjX2dndHRfb2Zmc2V0KGN0 eC0+ZW5naW5lW1JDU10uc3RhdGUpICsKLQkJICBMUkNfR1VDU0hSX1BOICogUEFHRV9TSVpFOwor CWRhdGFbMl0gPSBndWNfZ2d0dF9vZmZzZXQoZ3VjLT5zaGFyZWRfZGF0YSk7CiAKIAlyZXR1cm4g aW50ZWxfZ3VjX3NlbmQoZ3VjLCBkYXRhLCBBUlJBWV9TSVpFKGRhdGEpKTsKIH0KQEAgLTI5NSw3 ICsyOTAsNiBAQCBpbnQgaW50ZWxfZ3VjX3N1c3BlbmQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQogaW50IGludGVsX2d1Y19yZXN1bWUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQogewogCXN0cnVjdCBpbnRlbF9ndWMgKmd1YyA9ICZkZXZfcHJpdi0+Z3VjOwot CXN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHg7CiAJdTMyIGRhdGFbM107CiAKIAlpZiAoZ3Vj LT5mdy5sb2FkX3N0YXR1cyAhPSBJTlRFTF9VQ19GSVJNV0FSRV9TVUNDRVNTKQpAQCAtMzA0LDEz ICsyOTgsOSBAQCBpbnQgaW50ZWxfZ3VjX3Jlc3VtZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYpCiAJaWYgKGk5MTVfbW9kcGFyYW1zLmd1Y19sb2dfbGV2ZWwgPj0gMCkKIAkJZ2Vu OV9lbmFibGVfZ3VjX2ludGVycnVwdHMoZGV2X3ByaXYpOwogCi0JY3R4ID0gZGV2X3ByaXYtPmtl cm5lbF9jb250ZXh0OwotCiAJZGF0YVswXSA9IElOVEVMX0dVQ19BQ1RJT05fRVhJVF9TX1NUQVRF OwogCWRhdGFbMV0gPSBHVUNfUE9XRVJfRDA7Ci0JLyogZmlyc3QgcGFnZSBpcyBzaGFyZWQgZGF0 YSB3aXRoIEd1QyAqLwotCWRhdGFbMl0gPSBndWNfZ2d0dF9vZmZzZXQoY3R4LT5lbmdpbmVbUkNT XS5zdGF0ZSkgKwotCQkgIExSQ19HVUNTSFJfUE4gKiBQQUdFX1NJWkU7CisJZGF0YVsyXSA9IGd1 Y19nZ3R0X29mZnNldChndWMtPnNoYXJlZF9kYXRhKTsKIAogCXJldHVybiBpbnRlbF9ndWNfc2Vu ZChndWMsIGRhdGEsIEFSUkFZX1NJWkUoZGF0YSkpOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZ3VjLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMu aAppbmRleCA0MTg0NTBiMWFlMjcuLmFhMTU4MzE2N2IwYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZ3VjLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf Z3VjLmgKQEAgLTU0LDYgKzU0LDggQEAgc3RydWN0IGludGVsX2d1YyB7CiAJc3RydWN0IGk5MTVf dm1hICpzdGFnZV9kZXNjX3Bvb2w7CiAJdm9pZCAqc3RhZ2VfZGVzY19wb29sX3ZhZGRyOwogCXN0 cnVjdCBpZGEgc3RhZ2VfaWRzOworCXN0cnVjdCBpOTE1X3ZtYSAqc2hhcmVkX2RhdGE7CisJdm9p ZCAqc2hhcmVkX2RhdGFfdmFkZHI7CiAKIAlzdHJ1Y3QgaTkxNV9ndWNfY2xpZW50ICpleGVjYnVm X2NsaWVudDsKIAotLSAKMi4xMy42CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK