From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vidya Srinivas Subject: [PATCH v14 09/17] drm/i915/skl: split skl_compute_ddb function Date: Thu, 15 Mar 2018 13:47:33 +0530 Message-ID: <1521101861-26324-10-git-send-email-vidya.srinivas@intel.com> References: <1521101861-26324-1-git-send-email-vidya.srinivas@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id E917B6E7C7 for ; Thu, 15 Mar 2018 08:20:38 +0000 (UTC) In-Reply-To: <1521101861-26324-1-git-send-email-vidya.srinivas@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 Cc: ville.syrjala@intel.com, maarten.lankhorst@intel.com List-Id: intel-gfx@lists.freedesktop.org RnJvbTogTWFoZXNoIEt1bWFyIDxtYWhlc2gxLmt1bWFyQGludGVsLmNvbT4KClRoaXMgcGF0Y2gg c3BsaXRzIHNrbF9jb21wdXRlX3dtL2RkYiBmdW5jdGlvbnMgaW50byB0d28gcGFydHMuCk9uZSBh ZGRzIGFsbCBhZmZlY3RlZCBwaXBlcyBhZnRlciB0aGUgY29tbWl0IHRvIGF0b21pY19zdGF0ZSBz dHJ1Y3R1cmUKYW5kIHNlY29uZCBwYXJ0IGRvZXMgY29tcHV0ZSB0aGUgRERCLgoKdjI6IEFkZGVk IHJldmlld2VkIGJ5IHRhZyBmcm9tIFNoYXNoYW5rIFNoYXJtYQoKdjM6IEFkZGVkIHJldmlld2Vk IGJ5IGZyb20gSnVoYS1QZWtrYSBIZWlra2lsYQoKUmV2aWV3ZWQtYnk6IEp1aGEtUGVra2EgSGVp a2tpbGEgPGp1aGFwZWtrYS5oZWlra2lsYUBnbWFpbC5jb20+ClJldmlld2VkLWJ5OiBTaGFzaGFu ayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1haGVz aCBLdW1hciA8bWFoZXNoMS5rdW1hckBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcG0uYyB8IDE1NyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t LS0tCiAxIGZpbGUgY2hhbmdlZCwgODggaW5zZXJ0aW9ucygrKSwgNjkgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3BtLmMKaW5kZXggNmY3NDUxOC4uY2FkZDQ2NiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9wbS5jCkBAIC01MDU5LDY5ICs1MDU5LDE2IEBAIHNrbF9kZGJfYWRkX2FmZmVjdGVk X3BsYW5lcyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlKQogc3RhdGljIGludAogc2ts X2NvbXB1dGVfZGRiKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIHsKLQlzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2ID0gc3RhdGUtPmRldjsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSB0b19pOTE1KGRldik7CisJY29uc3Qgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShzdGF0ZS0+ZGV2KTsKIAlzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0 YXRlICppbnRlbF9zdGF0ZSA9IHRvX2ludGVsX2F0b21pY19zdGF0ZShzdGF0ZSk7Ci0Jc3RydWN0 IGludGVsX2NydGMgKmludGVsX2NydGM7CiAJc3RydWN0IHNrbF9kZGJfYWxsb2NhdGlvbiAqZGRi ID0gJmludGVsX3N0YXRlLT53bV9yZXN1bHRzLmRkYjsKLQl1aW50MzJfdCByZWFsbG9jX3BpcGVz ID0gcGlwZXNfbW9kaWZpZWQoc3RhdGUpOwotCWludCByZXQ7Ci0KLQkvKgotCSAqIElmIHRoaXMg aXMgb3VyIGZpcnN0IGF0b21pYyB1cGRhdGUgZm9sbG93aW5nIGhhcmR3YXJlIHJlYWRvdXQsCi0J ICogd2UgY2FuJ3QgdHJ1c3QgdGhlIEREQiB0aGF0IHRoZSBCSU9TIHByb2dyYW1tZWQgZm9yIHVz LiAgTGV0J3MKLQkgKiBwcmV0ZW5kIHRoYXQgYWxsIHBpcGVzIHN3aXRjaGVkIGFjdGl2ZSBzdGF0 dXMgc28gdGhhdCB3ZSdsbAotCSAqIGVuc3VyZSBhIGZ1bGwgRERCIHJlY29tcHV0ZS4KLQkgKi8K LQlpZiAoZGV2X3ByaXYtPndtLmRpc3RydXN0X2Jpb3Nfd20pIHsKLQkJcmV0ID0gZHJtX21vZGVz ZXRfbG9jaygmZGV2LT5tb2RlX2NvbmZpZy5jb25uZWN0aW9uX211dGV4LAotCQkJCSAgICAgICBz dGF0ZS0+YWNxdWlyZV9jdHgpOwotCQlpZiAocmV0KQotCQkJcmV0dXJuIHJldDsKLQotCQlpbnRl bF9zdGF0ZS0+YWN0aXZlX3BpcGVfY2hhbmdlcyA9IH4wOwotCi0JCS8qCi0JCSAqIFdlIHVzdWFs bHkgb25seSBpbml0aWFsaXplIGludGVsX3N0YXRlLT5hY3RpdmVfY3J0Y3MgaWYgd2UKLQkJICog d2UncmUgZG9pbmcgYSBtb2Rlc2V0OyBtYWtlIHN1cmUgdGhpcyBmaWVsZCBpcyBhbHdheXMKLQkJ ICogaW5pdGlhbGl6ZWQgZHVyaW5nIHRoZSBzYW5pdGl6YXRpb24gcHJvY2VzcyB0aGF0IGhhcHBl bnMKLQkJICogb24gdGhlIGZpcnN0IGNvbW1pdCB0b28uCi0JCSAqLwotCQlpZiAoIWludGVsX3N0 YXRlLT5tb2Rlc2V0KQotCQkJaW50ZWxfc3RhdGUtPmFjdGl2ZV9jcnRjcyA9IGRldl9wcml2LT5h Y3RpdmVfY3J0Y3M7Ci0JfQotCi0JLyoKLQkgKiBJZiB0aGUgbW9kZXNldCBjaGFuZ2VzIHdoaWNo IENSVEMncyBhcmUgYWN0aXZlLCB3ZSBuZWVkIHRvCi0JICogcmVjb21wdXRlIHRoZSBEREIgYWxs b2NhdGlvbiBmb3IgKmFsbCogYWN0aXZlIHBpcGVzLCBldmVuCi0JICogdGhvc2UgdGhhdCB3ZXJl bid0IG90aGVyd2lzZSBiZWluZyBtb2RpZmllZCBpbiBhbnkgd2F5IGJ5IHRoaXMKLQkgKiBhdG9t aWMgY29tbWl0LiAgRHVlIHRvIHRoZSBzaHJpbmtpbmcgb2YgdGhlIHBlci1waXBlIGFsbG9jYXRp b25zCi0JICogd2hlbiBuZXcgYWN0aXZlIENSVEMncyBhcmUgYWRkZWQsIGl0J3MgcG9zc2libGUg Zm9yIGEgcGlwZSB0aGF0Ci0JICogd2Ugd2VyZSBhbHJlYWR5IHVzaW5nIGFuZCBhcmVuJ3QgY2hh bmdpbmcgYXQgYWxsIGhlcmUgdG8gc3VkZGVubHkKLQkgKiBiZWNvbWUgaW52YWxpZCBpZiBpdHMg RERCIG5lZWRzIGV4Y2VlZHMgaXRzIG5ldyBhbGxvY2F0aW9uLgotCSAqCi0JICogTm90ZSB0aGF0 IGlmIHdlIHdpbmQgdXAgZG9pbmcgYSBmdWxsIEREQiByZWNvbXB1dGUsIHdlIGNhbid0IGxldAot CSAqIGFueSBvdGhlciBkaXNwbGF5IHVwZGF0ZXMgcmFjZSB3aXRoIHRoaXMgdHJhbnNhY3Rpb24s IHNvIHdlIG5lZWQKLQkgKiB0byBncmFiIHRoZSBsb2NrIG9uICphbGwqIENSVEMncy4KLQkgKi8K LQlpZiAoaW50ZWxfc3RhdGUtPmFjdGl2ZV9waXBlX2NoYW5nZXMpIHsKLQkJcmVhbGxvY19waXBl cyA9IH4wOwotCQlpbnRlbF9zdGF0ZS0+d21fcmVzdWx0cy5kaXJ0eV9waXBlcyA9IH4wOwotCX0K KwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YzsKKwlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0 YXRlOworCWludCByZXQsIGk7CiAKLQkvKgotCSAqIFdlJ3JlIG5vdCByZWNvbXB1dGluZyBmb3Ig dGhlIHBpcGVzIG5vdCBpbmNsdWRlZCBpbiB0aGUgY29tbWl0LCBzbwotCSAqIG1ha2Ugc3VyZSB3 ZSBzdGFydCB3aXRoIHRoZSBjdXJyZW50IHN0YXRlLgotCSAqLwogCW1lbWNweShkZGIsICZkZXZf cHJpdi0+d20uc2tsX2h3LmRkYiwgc2l6ZW9mKCpkZGIpKTsKIAotCWZvcl9lYWNoX2ludGVsX2Ny dGNfbWFzayhkZXYsIGludGVsX2NydGMsIHJlYWxsb2NfcGlwZXMpIHsKLQkJc3RydWN0IGludGVs X2NydGNfc3RhdGUgKmNzdGF0ZTsKLQotCQljc3RhdGUgPSBpbnRlbF9hdG9taWNfZ2V0X2NydGNf c3RhdGUoc3RhdGUsIGludGVsX2NydGMpOwotCQlpZiAoSVNfRVJSKGNzdGF0ZSkpCi0JCQlyZXR1 cm4gUFRSX0VSUihjc3RhdGUpOwotCisJZm9yX2VhY2hfbmV3X2ludGVsX2NydGNfaW5fc3RhdGUo aW50ZWxfc3RhdGUsIGNydGMsIGNzdGF0ZSwgaSkgewogCQlyZXQgPSBza2xfYWxsb2NhdGVfcGlw ZV9kZGIoY3N0YXRlLCBkZGIpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKQEAgLTUxODMs MjMgKzUxMzAsMjMgQEAgc2tsX3ByaW50X3dtX2NoYW5nZXMoY29uc3Qgc3RydWN0IGRybV9hdG9t aWNfc3RhdGUgKnN0YXRlKQogfQogCiBzdGF0aWMgaW50Ci1za2xfY29tcHV0ZV93bShzdHJ1Y3Qg ZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCitza2xfZGRiX2FkZF9hZmZlY3RlZF9waXBlcyhzdHJ1 Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsIGJvb2wgKmNoYW5nZWQpCiB7Ci0Jc3RydWN0IGRy bV9jcnRjICpjcnRjOwotCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3N0YXRlOwotCXN0cnVjdCBp bnRlbF9hdG9taWNfc3RhdGUgKmludGVsX3N0YXRlID0gdG9faW50ZWxfYXRvbWljX3N0YXRlKHN0 YXRlKTsKLQlzdHJ1Y3Qgc2tsX2RkYl92YWx1ZXMgKnJlc3VsdHMgPSAmaW50ZWxfc3RhdGUtPndt X3Jlc3VsdHM7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IHN0YXRlLT5kZXY7Ci0Jc3RydWN0 IHNrbF9waXBlX3dtICpwaXBlX3dtOwotCWJvb2wgY2hhbmdlZCA9IGZhbHNlOworCWNvbnN0IHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKKwljb25zdCBz dHJ1Y3QgZHJtX2NydGMgKmNydGM7CisJY29uc3Qgc3RydWN0IGRybV9jcnRjX3N0YXRlICpjc3Rh dGU7CisJc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGM7CisJc3RydWN0IGludGVsX2F0b21p Y19zdGF0ZSAqaW50ZWxfc3RhdGUgPSB0b19pbnRlbF9hdG9taWNfc3RhdGUoc3RhdGUpOworCXVp bnQzMl90IHJlYWxsb2NfcGlwZXMgPSBwaXBlc19tb2RpZmllZChzdGF0ZSk7CiAJaW50IHJldCwg aTsKIAogCS8qCiAJICogV2hlbiB3ZSBkaXN0cnVzdCBiaW9zIHdtIHdlIGFsd2F5cyBuZWVkIHRv IHJlY29tcHV0ZSB0byBzZXQgdGhlCiAJICogZXhwZWN0ZWQgRERCIGFsbG9jYXRpb25zIGZvciBl YWNoIENSVEMuCiAJICovCi0JaWYgKHRvX2k5MTUoZGV2KS0+d20uZGlzdHJ1c3RfYmlvc193bSkK LQkJY2hhbmdlZCA9IHRydWU7CisJaWYgKGRldl9wcml2LT53bS5kaXN0cnVzdF9iaW9zX3dtKQor CQkqY2hhbmdlZCA9IHRydWU7CiAKIAkvKgogCSAqIElmIHRoaXMgdHJhbnNhY3Rpb24gaXNuJ3Qg YWN0dWFsbHkgdG91Y2hpbmcgYW55IENSVEMncywgZG9uJ3QKQEAgLTUyMTAsMTQgKzUxNTcsODYg QEAgc2tsX2NvbXB1dGVfd20oc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQogCSAqIGhv bGQgX2FsbF8gQ1JUQyBzdGF0ZSBtdXRleGVzLgogCSAqLwogCWZvcl9lYWNoX25ld19jcnRjX2lu X3N0YXRlKHN0YXRlLCBjcnRjLCBjc3RhdGUsIGkpCi0JCWNoYW5nZWQgPSB0cnVlOworCQkqY2hh bmdlZCA9IHRydWU7CiAKLQlpZiAoIWNoYW5nZWQpCisJaWYgKCEqY2hhbmdlZCkKIAkJcmV0dXJu IDA7CiAKKwkvKgorCSAqIElmIHRoaXMgaXMgb3VyIGZpcnN0IGF0b21pYyB1cGRhdGUgZm9sbG93 aW5nIGhhcmR3YXJlIHJlYWRvdXQsCisJICogd2UgY2FuJ3QgdHJ1c3QgdGhlIEREQiB0aGF0IHRo ZSBCSU9TIHByb2dyYW1tZWQgZm9yIHVzLiAgTGV0J3MKKwkgKiBwcmV0ZW5kIHRoYXQgYWxsIHBp cGVzIHN3aXRjaGVkIGFjdGl2ZSBzdGF0dXMgc28gdGhhdCB3ZSdsbAorCSAqIGVuc3VyZSBhIGZ1 bGwgRERCIHJlY29tcHV0ZS4KKwkgKi8KKwlpZiAoZGV2X3ByaXYtPndtLmRpc3RydXN0X2Jpb3Nf d20pIHsKKwkJcmV0ID0gZHJtX21vZGVzZXRfbG9jaygmZGV2LT5tb2RlX2NvbmZpZy5jb25uZWN0 aW9uX211dGV4LAorCQkJCSAgICAgICBzdGF0ZS0+YWNxdWlyZV9jdHgpOworCQlpZiAocmV0KQor CQkJcmV0dXJuIHJldDsKKworCQlpbnRlbF9zdGF0ZS0+YWN0aXZlX3BpcGVfY2hhbmdlcyA9IH4w OworCisJCS8qCisJCSAqIFdlIHVzdWFsbHkgb25seSBpbml0aWFsaXplIGludGVsX3N0YXRlLT5h Y3RpdmVfY3J0Y3MgaWYgd2UKKwkJICogd2UncmUgZG9pbmcgYSBtb2Rlc2V0OyBtYWtlIHN1cmUg dGhpcyBmaWVsZCBpcyBhbHdheXMKKwkJICogaW5pdGlhbGl6ZWQgZHVyaW5nIHRoZSBzYW5pdGl6 YXRpb24gcHJvY2VzcyB0aGF0IGhhcHBlbnMKKwkJICogb24gdGhlIGZpcnN0IGNvbW1pdCB0b28u CisJCSAqLworCQlpZiAoIWludGVsX3N0YXRlLT5tb2Rlc2V0KQorCQkJaW50ZWxfc3RhdGUtPmFj dGl2ZV9jcnRjcyA9IGRldl9wcml2LT5hY3RpdmVfY3J0Y3M7CisJfQorCisJLyoKKwkgKiBJZiB0 aGUgbW9kZXNldCBjaGFuZ2VzIHdoaWNoIENSVEMncyBhcmUgYWN0aXZlLCB3ZSBuZWVkIHRvCisJ ICogcmVjb21wdXRlIHRoZSBEREIgYWxsb2NhdGlvbiBmb3IgKmFsbCogYWN0aXZlIHBpcGVzLCBl dmVuCisJICogdGhvc2UgdGhhdCB3ZXJlbid0IG90aGVyd2lzZSBiZWluZyBtb2RpZmllZCBpbiBh bnkgd2F5IGJ5IHRoaXMKKwkgKiBhdG9taWMgY29tbWl0LiAgRHVlIHRvIHRoZSBzaHJpbmtpbmcg b2YgdGhlIHBlci1waXBlIGFsbG9jYXRpb25zCisJICogd2hlbiBuZXcgYWN0aXZlIENSVEMncyBh cmUgYWRkZWQsIGl0J3MgcG9zc2libGUgZm9yIGEgcGlwZSB0aGF0CisJICogd2Ugd2VyZSBhbHJl YWR5IHVzaW5nIGFuZCBhcmVuJ3QgY2hhbmdpbmcgYXQgYWxsIGhlcmUgdG8gc3VkZGVubHkKKwkg KiBiZWNvbWUgaW52YWxpZCBpZiBpdHMgRERCIG5lZWRzIGV4Y2VlZHMgaXRzIG5ldyBhbGxvY2F0 aW9uLgorCSAqCisJICogTm90ZSB0aGF0IGlmIHdlIHdpbmQgdXAgZG9pbmcgYSBmdWxsIEREQiBy ZWNvbXB1dGUsIHdlIGNhbid0IGxldAorCSAqIGFueSBvdGhlciBkaXNwbGF5IHVwZGF0ZXMgcmFj ZSB3aXRoIHRoaXMgdHJhbnNhY3Rpb24sIHNvIHdlIG5lZWQKKwkgKiB0byBncmFiIHRoZSBsb2Nr IG9uICphbGwqIENSVEMncy4KKwkgKi8KKwlpZiAoaW50ZWxfc3RhdGUtPmFjdGl2ZV9waXBlX2No YW5nZXMpIHsKKwkJcmVhbGxvY19waXBlcyA9IH4wOworCQlpbnRlbF9zdGF0ZS0+d21fcmVzdWx0 cy5kaXJ0eV9waXBlcyA9IH4wOworCX0KKworCS8qCisJICogV2UncmUgbm90IHJlY29tcHV0aW5n IGZvciB0aGUgcGlwZXMgbm90IGluY2x1ZGVkIGluIHRoZSBjb21taXQsIHNvCisJICogbWFrZSBz dXJlIHdlIHN0YXJ0IHdpdGggdGhlIGN1cnJlbnQgc3RhdGUuCisJICovCisJZm9yX2VhY2hfaW50 ZWxfY3J0Y19tYXNrKGRldiwgaW50ZWxfY3J0YywgcmVhbGxvY19waXBlcykgeworCQlzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlOworCisJCWNzdGF0ZSA9IGludGVsX2F0b21pY19nZXRf Y3J0Y19zdGF0ZShzdGF0ZSwgaW50ZWxfY3J0Yyk7CisJCWlmIChJU19FUlIoY3N0YXRlKSkKKwkJ CXJldHVybiBQVFJfRVJSKGNzdGF0ZSk7CisJfQorCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBp bnQKK3NrbF9jb21wdXRlX3dtKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKK3sKKwlz dHJ1Y3QgZHJtX2NydGMgKmNydGM7CisJc3RydWN0IGRybV9jcnRjX3N0YXRlICpjc3RhdGU7CisJ c3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqaW50ZWxfc3RhdGUgPSB0b19pbnRlbF9hdG9taWNf c3RhdGUoc3RhdGUpOworCXN0cnVjdCBza2xfZGRiX3ZhbHVlcyAqcmVzdWx0cyA9ICZpbnRlbF9z dGF0ZS0+d21fcmVzdWx0czsKKwlzdHJ1Y3Qgc2tsX3BpcGVfd20gKnBpcGVfd207CisJYm9vbCBj aGFuZ2VkID0gZmFsc2U7CisJaW50IHJldCwgaTsKKwogCS8qIENsZWFyIGFsbCBkaXJ0eSBmbGFn cyAqLwogCXJlc3VsdHMtPmRpcnR5X3BpcGVzID0gMDsKIAorCXJldCA9IHNrbF9kZGJfYWRkX2Fm ZmVjdGVkX3BpcGVzKHN0YXRlLCAmY2hhbmdlZCk7CisJaWYgKHJldCB8fCAhY2hhbmdlZCkKKwkJ cmV0dXJuIHJldDsKKwogCXJldCA9IHNrbF9jb21wdXRlX2RkYihzdGF0ZSk7CiAJaWYgKHJldCkK IAkJcmV0dXJuIHJldDsKLS0gCjIuNy40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK