From mboxrd@z Thu Jan 1 00:00:00 1970 From: ville.syrjala@linux.intel.com Subject: [PATCH v4] drm/i915: Determine the stolen memory base address on gen2 Date: Thu, 8 Oct 2015 12:08:20 +0300 Message-ID: <1444295300-4479-1-git-send-email-ville.syrjala@linux.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 ESMTP id F29556EC89 for ; Thu, 8 Oct 2015 02:08:23 -0700 (PDT) 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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClRo ZXJlIGlzbid0IGFuIGV4cGxpY2l0IHN0b2xlbiBtZW1vcnkgYmFzZSByZWdpc3RlciBvbiBnZW4y LgpTb21lIG9sZCBjb21tZW50IGluIHRoZSBpOTE1IGNvZGUgc3VnZ2VzdHMgd2Ugc2hvdWxkIGdl dCBpdCB2aWEKbWF4X2xvd19wZm5fbWFwcGVkLCBidXQgdGhhdCdzIGNsZWFybHkgYSBiYWQgaWRl YSBvbiBteSBNR00uCgpUaGUgZTgyMCBtYXAgaW4gc2FpZCBtYWNoaW5lIGxvb2tzIGxpa2UgdGhp czoKWyAgICAwLjAwMDAwMF0gQklPUy1lODIwOiBbbWVtIDB4MDAwMDAwMDAwMDAwMDAwMC0weDAw MDAwMDAwMDAwOWY3ZmZdIHVzYWJsZQpbICAgIDAuMDAwMDAwXSBCSU9TLWU4MjA6IFttZW0gMHgw MDAwMDAwMDAwMDlmODAwLTB4MDAwMDAwMDAwMDA5ZmZmZl0gcmVzZXJ2ZWQKWyAgICAwLjAwMDAw MF0gQklPUy1lODIwOiBbbWVtIDB4MDAwMDAwMDAwMDBjZTAwMC0weDAwMDAwMDAwMDAwY2ZmZmZd IHJlc2VydmVkClsgICAgMC4wMDAwMDBdIEJJT1MtZTgyMDogW21lbSAweDAwMDAwMDAwMDAwZGMw MDAtMHgwMDAwMDAwMDAwMGZmZmZmXSByZXNlcnZlZApbICAgIDAuMDAwMDAwXSBCSU9TLWU4MjA6 IFttZW0gMHgwMDAwMDAwMDAwMTAwMDAwLTB4MDAwMDAwMDAxZjZlZmZmZl0gdXNhYmxlClsgICAg MC4wMDAwMDBdIEJJT1MtZTgyMDogW21lbSAweDAwMDAwMDAwMWY2ZjAwMDAtMHgwMDAwMDAwMDFm NmY3ZmZmXSBBQ1BJIGRhdGEKWyAgICAwLjAwMDAwMF0gQklPUy1lODIwOiBbbWVtIDB4MDAwMDAw MDAxZjZmODAwMC0weDAwMDAwMDAwMWY2ZmZmZmZdIEFDUEkgTlZTClsgICAgMC4wMDAwMDBdIEJJ T1MtZTgyMDogW21lbSAweDAwMDAwMDAwMWY3MDAwMDAtMHgwMDAwMDAwMDFmZmZmZmZmXSByZXNl cnZlZApbICAgIDAuMDAwMDAwXSBCSU9TLWU4MjA6IFttZW0gMHgwMDAwMDAwMGZlYzEwMDAwLTB4 MDAwMDAwMDBmZWMxZmZmZl0gcmVzZXJ2ZWQKWyAgICAwLjAwMDAwMF0gQklPUy1lODIwOiBbbWVt IDB4MDAwMDAwMDBmZmIwMDAwMC0weDAwMDAwMDAwZmZiZmZmZmZdIHJlc2VydmVkClsgICAgMC4w MDAwMDBdIEJJT1MtZTgyMDogW21lbSAweDAwMDAwMDAwZmZmMDAwMDAtMHgwMDAwMDAwMGZmZmZm ZmZmXSByZXNlcnZlZAoKVGhhdCBtYWtlcyBtYXhfbG93X3Bmbl9tYXBwZWQgPSAxZjZmMDAwMCwg c28gYXNzdW1pbmcgb3VyIHN0b2xlbiBtZW1vcnkKd291bGQgc3RhcnQgdGhlcmUgd291bGQgcGxh Y2UgaXQgb24gdG9wIG9mIHNvbWUgQUNQSSBtZW1vcnkgcmVnaW9ucy4KU28gbm90IGEgZ29vZCBp ZGVhIGFzIGFscmVhZHkgc3RhdGVkLgoKVGhlIDlNQiByZWdpb24gYWZ0ZXIgdGhlIEFDUEkgcmVn aW9ucyBhdCAweDFmNzAwMDAwIGhvd2V2ZXIgbG9va3MKcHJvbWlzaW5nIGdpdmVuIHRoYXQgdGhl IG1hY2luZSByZXBvcnRzIHRoZSBzdG9sZW4gbWVtb3J5IHNpemUgdG8gYmUKOE1CLiBMb29raW5n IGF0IHRoZSBQR1RCTF9DVEwgcmVnaXN0ZXIsIHRoZSBHVFQgZW50cmllcyBhcmUgYXQgb2Zmc2V0 CjB4MWZlZTAwMDAwLCBhbmQgZ2l2ZW4gdGhhdCB0aGUgR1RUIGVudHJpZXMgb2NjdXB5IDEyOEtC LCBpdCBsb29rcyBsaWtlCnRoZSBzdG9sZW4gbWVtb3J5IGNvdWxkIHN0YXJ0IGF0IDB4MWY3MDAw MDAgYW5kIHRoZSBHVFQgZW50cmllcyB3b3VsZApvY2N1cHkgdGhlIGxhc3QgMTI4S0Igb2YgdGhl IHN0b2xlbiBtZW1vcnkuCgpBZnRlciBzb21lIG1vcmUgZGlnZ2luZyB0aHJvdWdoIGNoaXBzZXQg ZG9jdW1lbnRhdGlvbiwgSSd2ZSBkZXRlcm1pbmVkCnRoZSBCSU9TIGZpcnN0IGFsbG9jYXRlcyBz cGFjZSBmb3Igc29tZXRoaW5nIGNhbGxlZCBUU0VHIChzb21ldGhpbmcgdG8KZG8gd2l0aCBTTU0p IGZyb20gdGhlIHRvcCBvZiBtZW1vcnksIGFuZCB0aGVuIGl0IGFsbG9jYXRlcyB0aGUgZ3JhcGhp Y3MKc3RvbGVuIG1lbW9yeSBiZWxvdyB0aGF0LiBBY2NvcmRpbmQgdG8gdGhlIGNoaXBzZXQgZG9j dW1lbnRhdGlvbiBUU0VHCmhhcyBhIGZpeGVkIHNpemUgb2YgMU1CIG9uIDg1NS4gU28gdGhhdCBl eHBsYWlucyB0aGUgdG9wIDFNQiBpbiB0aGUKZTgyMCByZWdpb24uIEFuZCBpdCBhbHNvIGNvbmZp cm1zIHRoYXQgdGhlIEdUVCBlbnRyaWVzIGFyZSBpbiBmYWN0IGF0CnRoZSBlbmQgb2YgdGhlIHRo ZSBzdG9sZW4gbWVtb3J5IHJlZ2lvbi4KCkRlcml2ZSB0aGUgc3RvbGVuIG1lbW9yeSBiYXNlIGFk ZHJlc3Mgb24gZ2VuMiB0aGUgc2FtZSBhcyB0aGUgQklPUyBkb2VzCihUT00tVFNFR19TSVpFLXN0 b2xlbl9zaXplKS4gVGhlcmUgYXJlIGEgZmV3IGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlCnJlZ2lz dGVycyBvbiB2YXJpb3VzIGdlbjIgY2hpcHNldHMsIHNvIGEgZmV3IGRpZmZlcmVudCBjb2RlcGF0 aHMgYXJlCnJlcXVpcmVkLgoKODY1RyBpcyBhZ2FpbiBiaXQgbW9yZSBzcGVjaWFsIHNpbmNlIGl0 IHNlZW1zIHRvIHN1cHBvcnQgZW5vdWdoIG1lbW9yeQp0byBoaXQgNEdCIGFkZHJlc3Mgc3BhY2Ug aXNzdWVzLiBUaGlzIG1lYW5zIHRoZSBQQ0kgYWxsb2NhdGlvbnMgd2lsbAphbHNvIGFmZmVjdCB0 aGUgbG9jYXRpb24gb2YgdGhlIHN0b2xlbiBtZW1vcnkuIEZvcnR1bmF0ZWx5IHRoZXJlCmFwcGVh cnMgdG8gYmUgdGhlIFRPVUQgcmVnaXN0ZXIgd2hpY2ggbWF5IGdpdmUgdXMgdGhlIGNvcnJlY3Qg YW5zd2VyCmRpcmVjdGx5LiBCdXQgdGhlIGNoaXBzZXQgZG9jcyBhcmUgYSBiaXQgdW5jbGVhciwg c28gSSdtIG5vdCAxMDAlCnN1cmUgdGhhdCB0aGUgZ3JhcGhpY3Mgc3RvbGVuIG1lbW9yeSBpcyBh bHdheXMgdGhlIGxhc3QgdGhpbmcgdGhlCkJJT1Mgc3RlYWxzLiBTb21lb25lIHdvdWxkIG5lZWQg dG8gdmVyaWZ5IGl0IG9uIGEgcmVhbCBzeXN0ZW0uCgpJIHRlc3RlZCB0aGlzIG9uIHRoZSBteSA4 MzAgYW5kIDg1NSBtYWNoaW5lcywgYW5kIHNvIGZhciBldmVyeXRoaW5nCmxvb2tzIHBlYWNoeS4K CnYyOiBSZXdyaXRlIHRvIHVzZSB0aGUgVE9NLVRTRUdfU0laRS1zdG9sZW5fc2l6ZSBhbmQgVE9V RCBtZXRob2RzCnYzOiBGaXggVFNFRyBzaXplIGZvciA4MzAKdjQ6IEFkZCBtaXNzaW5nICdlbHNl JyAoQ2hyaXMpCgpUZXN0ZWQtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNv LnVrPgpTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXgu aW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jIHwg OTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDgx IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fc3RvbGVuLmMKaW5kZXggNjllZWJjNi4uY2RhY2YzZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fc3RvbGVuLmMKQEAgLTMwLDYgKzMwLDkgQEAKICNpbmNsdWRlIDxkcm0vaTkxNV9k cm0uaD4KICNpbmNsdWRlICJpOTE1X2Rydi5oIgogCisjZGVmaW5lIEtCKHgpICgoeCkgKiAxMDI0 KQorI2RlZmluZSBNQih4KSAoS0IoeCkgKiAxMDI0KQorCiAvKgogICogVGhlIEJJT1MgdHlwaWNh bGx5IHJlc2VydmVzIHNvbWUgb2YgdGhlIHN5c3RlbSdzIG1lbW9yeSBmb3IgdGhlIGV4Y2x1c2l2 ZQogICogdXNlIG9mIHRoZSBpbnRlZ3JhdGVkIGdyYXBoaWNzLiBUaGlzIG1lbW9yeSBpcyBubyBs b25nZXIgYXZhaWxhYmxlIGZvcgpAQCAtOTEsMjQgKzk0LDkxIEBAIHN0YXRpYyB1bnNpZ25lZCBs b25nIGk5MTVfc3RvbGVuX3RvX3BoeXNpY2FsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJLyog QWxtb3N0IHVuaXZlcnNhbGx5IHdlIGNhbiBmaW5kIHRoZSBHcmFwaGljcyBCYXNlIG9mIFN0b2xl biBNZW1vcnkKIAkgKiBhdCBvZmZzZXQgMHg1YyBpbiB0aGUgaWdmeCBjb25maWd1cmF0aW9uIHNw YWNlLiBPbiBhIGZldyAoZGVza3RvcCkKIAkgKiBtYWNoaW5lcyB0aGlzIGlzIGFsc28gbWlycm9y ZWQgaW4gdGhlIGJyaWRnZSBkZXZpY2UgYXQgZGlmZmVyZW50Ci0JICogbG9jYXRpb25zLCBvciBp biB0aGUgTUNIQkFSLiBPbiBnZW4yLCB0aGUgbGF5b3V0IGlzIGFnYWluIHNsaWdodGx5Ci0JICog ZGlmZmVyZW50IHdpdGggdGhlIEdyYXBoaWNzIFNlZ21lbnQgaW1tZWRpYXRlbHkgZm9sbG93aW5n IFRvcCBvZgotCSAqIE1lbW9yeSAob3IgVG9wIG9mIFVzYWJsZSBEUkFNKS4gTm90ZSBpdCBhcHBl YXJzIHRoYXQgVE9VRCBpcyBvbmx5Ci0JICogcmVwb3J0ZWQgYnkgODY1Zywgc28gd2UganVzdCB1 c2UgdGhlIHRvcCBvZiBtZW1vcnkgYXMgZGV0ZXJtaW5lZAotCSAqIGJ5IHRoZSBlODIwIHByb2Jl LgorCSAqIGxvY2F0aW9ucywgb3IgaW4gdGhlIE1DSEJBUi4KKwkgKgorCSAqIE9uIDg2NSB3ZSBq dXN0IGNoZWNrIHRoZSBUT1VEIHJlZ2lzdGVyLgorCSAqCisJICogT24gODMwLzg0NS84NXggdGhl IHN0b2xlbiBtZW1vcnkgYmFzZSBpc24ndCBhdmFpbGFibGUgaW4gYW55CisJICogcmVnaXN0ZXIu IFdlIG5lZWQgdG8gY2FsY3VsYXRlIGl0IGFzIFRPTS1UU0VHX1NJWkUtc3RvbGVuX3NpemUuCiAJ ICoKLQkgKiBYWFggSG93ZXZlciBnZW4yIHJlcXVpcmVzIGFuIHVuYXZhaWxhYmxlIHN5bWJvbC4K IAkgKi8KIAliYXNlID0gMDsKIAlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0gMykgewogCQkv KiBSZWFkIEdyYXBoaWNzIEJhc2Ugb2YgU3RvbGVuIE1lbW9yeSBkaXJlY3RseSAqLwogCQlwY2lf cmVhZF9jb25maWdfZHdvcmQoZGV2LT5wZGV2LCAweDVjLCAmYmFzZSk7CiAJCWJhc2UgJj0gfigo MTw8MjApIC0gMSk7Ci0JfSBlbHNlIHsgLyogR0VOMiAqLwotI2lmIDAKLQkJLyogU3RvbGVuIGlz IGltbWVkaWF0ZWx5IGFib3ZlIFRvcCBvZiBNZW1vcnkgKi8KLQkJYmFzZSA9IG1heF9sb3dfcGZu X21hcHBlZCA8PCBQQUdFX1NISUZUOwotI2VuZGlmCisJfSBlbHNlIGlmIChJU19JODY1RyhkZXYp KSB7CisJCXUxNiB0b3VkID0gMDsKKworCQkvKgorCQkgKiBGSVhNRSBpcyB0aGUgZ3JhcGhpY3Mg c3RvbGVuIG1lbW9yeSByZWdpb24KKwkJICogYWx3YXlzIGF0IFRPVUQ/IEllLiBpcyBpdCBhbHdh eXMgdGhlIGxhc3QKKwkJICogb25lIHRvIGJlIGFsbG9jYXRlZCBieSB0aGUgQklPUz8KKwkJICov CisJCXBjaV9idXNfcmVhZF9jb25maWdfd29yZChkZXYtPnBkZXYtPmJ1cywgUENJX0RFVkZOKDAs IDApLAorCQkJCQkgSTg2NV9UT1VELCAmdG91ZCk7CisKKwkJYmFzZSA9IHRvdWQgPDwgMTY7CisJ fSBlbHNlIGlmIChJU19JODVYKGRldikpIHsKKwkJdTMyIHRzZWdfc2l6ZSA9IDA7CisJCXUzMiB0 b207CisJCXU4IHRtcDsKKworCQlwY2lfYnVzX3JlYWRfY29uZmlnX2J5dGUoZGV2LT5wZGV2LT5i dXMsIFBDSV9ERVZGTigwLCAwKSwKKwkJCQkJIEk4NVhfRVNNUkFNQywgJnRtcCk7CisKKwkJaWYg KHRtcCAmIFRTRUdfRU5BQkxFKQorCQkJdHNlZ19zaXplID0gTUIoMSk7CisKKwkJcGNpX2J1c19y ZWFkX2NvbmZpZ19ieXRlKGRldi0+cGRldi0+YnVzLCBQQ0lfREVWRk4oMCwgMSksCisJCQkJCSBJ ODVYX0RSQjMsICZ0bXApOworCQl0b20gPSB0bXAgKiBNQigzMik7CisKKwkJYmFzZSA9IHRvbSAt IHRzZWdfc2l6ZSAtIGRldl9wcml2LT5ndHQuc3RvbGVuX3NpemU7CisJfSBlbHNlIGlmIChJU184 NDVHKGRldikpIHsKKwkJdTMyIHRzZWdfc2l6ZSA9IDA7CisJCXUzMiB0b207CisJCXU4IHRtcDsK KworCQlwY2lfYnVzX3JlYWRfY29uZmlnX2J5dGUoZGV2LT5wZGV2LT5idXMsIFBDSV9ERVZGTigw LCAwKSwKKwkJCQkJIEk4NDVfRVNNUkFNQywgJnRtcCk7CisKKwkJaWYgKHRtcCAmIFRTRUdfRU5B QkxFKSB7CisJCQlzd2l0Y2ggKHRtcCAmIEk4NDVfVFNFR19TSVpFX01BU0spIHsKKwkJCWNhc2Ug STg0NV9UU0VHX1NJWkVfNTEySzoKKwkJCQl0c2VnX3NpemUgPSBLQig1MTIpOworCQkJCWJyZWFr OworCQkJY2FzZSBJODQ1X1RTRUdfU0laRV8xTToKKwkJCQl0c2VnX3NpemUgPSBNQigxKTsKKwkJ CQlicmVhazsKKwkJCX0KKwkJfQorCisJCXBjaV9idXNfcmVhZF9jb25maWdfYnl0ZShkZXYtPnBk ZXYtPmJ1cywgUENJX0RFVkZOKDAsIDApLAorCQkJCQkgSTgzMF9EUkIzLCAmdG1wKTsKKwkJdG9t ID0gdG1wICogTUIoMzIpOworCisJCWJhc2UgPSB0b20gLSB0c2VnX3NpemUgLSBkZXZfcHJpdi0+ Z3R0LnN0b2xlbl9zaXplOworCX0gZWxzZSBpZiAoSVNfSTgzMChkZXYpKSB7CisJCXUzMiB0c2Vn X3NpemUgPSAwOworCQl1MzIgdG9tOworCQl1OCB0bXA7CisKKwkJcGNpX2J1c19yZWFkX2NvbmZp Z19ieXRlKGRldi0+cGRldi0+YnVzLCBQQ0lfREVWRk4oMCwgMCksCisJCQkJCSBJODMwX0VTTVJB TUMsICZ0bXApOworCisJCWlmICh0bXAgJiBUU0VHX0VOQUJMRSkgeworCQkJaWYgKHRtcCAmIEk4 MzBfVFNFR19TSVpFXzFNKQorCQkJCXRzZWdfc2l6ZSA9IE1CKDEpOworCQkJZWxzZQorCQkJCXRz ZWdfc2l6ZSA9IEtCKDUxMik7CisJCX0KKworCQlwY2lfYnVzX3JlYWRfY29uZmlnX2J5dGUoZGV2 LT5wZGV2LT5idXMsIFBDSV9ERVZGTigwLCAwKSwKKwkJCQkJIEk4MzBfRFJCMywgJnRtcCk7CisJ CXRvbSA9IHRtcCAqIE1CKDMyKTsKKworCQliYXNlID0gdG9tIC0gdHNlZ19zaXplIC0gZGV2X3By aXYtPmd0dC5zdG9sZW5fc2l6ZTsKIAl9CiAKIAlpZiAoYmFzZSA9PSAwKQotLSAKMi40LjkKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==