From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vidya Srinivas Subject: [PATCH 09/15] drm/i915/skl: split skl_compute_ddb function Date: Thu, 4 Jan 2018 10:44:25 +0000 (UTC) Message-ID: <1515319159-30543-10-git-send-email-vidya.srinivas@intel.com> References: <1515319159-30543-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 mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 42B436E0F3 for ; Thu, 4 Jan 2018 10:46:11 +0000 (UTC) Date: Sun, 7 Jan 2018 15:29:13 +0530 In-Reply-To: <1515319159-30543-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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogTWFoZXNoIEt1bWFyIDxtYWhlc2gxLmt1bWFyQGludGVsLmNvbT4KClRoaXMgcGF0Y2gg c3BsaXQgc2tsX2NvbXB1dGVfd20vZGRiIGZ1bmN0aW9ucyBpbnRvIHR3byBwYXJ0cy4KT25lIGFk ZHMgYWxsIGFmZmVjdGVkIHBpcGVzIGFmdGVyIHRoZSBjb21taXQgdG8gYXRvbWljX3N0YXRlIHN0 cnVjdHVyZQphbmQgc2Vjb25kIHBhcnQgZG9lcyBjb21wdXRlIHRoZSBEREIuCgpTaWduZWQtb2Zm LWJ5OiBNYWhlc2ggS3VtYXIgPG1haGVzaDEua3VtYXJAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX3BtLmMgfCAxNTggKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDg5IGluc2VydGlvbnMoKyksIDY5IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCmluZGV4IDkwYWEyMTYuLjJjNDkzMTEgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcG0uYwpAQCAtNTAwOCw2OSArNTAwOCwxNiBAQCBza2xfZGRiX2Fk ZF9hZmZlY3RlZF9wbGFuZXMoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSkKIHN0YXRp YyBpbnQKIHNrbF9jb21wdXRlX2RkYihzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiB7 Ci0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IHN0YXRlLT5kZXY7Ci0Jc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOworCWNvbnN0IHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoc3RhdGUtPmRldik7CiAJc3RydWN0IGludGVs X2F0b21pY19zdGF0ZSAqaW50ZWxfc3RhdGUgPSB0b19pbnRlbF9hdG9taWNfc3RhdGUoc3RhdGUp OwotCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjOwogCXN0cnVjdCBza2xfZGRiX2FsbG9j YXRpb24gKmRkYiA9ICZpbnRlbF9zdGF0ZS0+d21fcmVzdWx0cy5kZGI7Ci0JdWludDMyX3QgcmVh bGxvY19waXBlcyA9IHBpcGVzX21vZGlmaWVkKHN0YXRlKTsKLQlpbnQgcmV0OwotCi0JLyoKLQkg KiBJZiB0aGlzIGlzIG91ciBmaXJzdCBhdG9taWMgdXBkYXRlIGZvbGxvd2luZyBoYXJkd2FyZSBy ZWFkb3V0LAotCSAqIHdlIGNhbid0IHRydXN0IHRoZSBEREIgdGhhdCB0aGUgQklPUyBwcm9ncmFt bWVkIGZvciB1cy4gIExldCdzCi0JICogcHJldGVuZCB0aGF0IGFsbCBwaXBlcyBzd2l0Y2hlZCBh Y3RpdmUgc3RhdHVzIHNvIHRoYXQgd2UnbGwKLQkgKiBlbnN1cmUgYSBmdWxsIEREQiByZWNvbXB1 dGUuCi0JICovCi0JaWYgKGRldl9wcml2LT53bS5kaXN0cnVzdF9iaW9zX3dtKSB7Ci0JCXJldCA9 IGRybV9tb2Rlc2V0X2xvY2soJmRldi0+bW9kZV9jb25maWcuY29ubmVjdGlvbl9tdXRleCwKLQkJ CQkgICAgICAgc3RhdGUtPmFjcXVpcmVfY3R4KTsKLQkJaWYgKHJldCkKLQkJCXJldHVybiByZXQ7 Ci0KLQkJaW50ZWxfc3RhdGUtPmFjdGl2ZV9waXBlX2NoYW5nZXMgPSB+MDsKLQotCQkvKgotCQkg KiBXZSB1c3VhbGx5IG9ubHkgaW5pdGlhbGl6ZSBpbnRlbF9zdGF0ZS0+YWN0aXZlX2NydGNzIGlm IHdlCi0JCSAqIHdlJ3JlIGRvaW5nIGEgbW9kZXNldDsgbWFrZSBzdXJlIHRoaXMgZmllbGQgaXMg YWx3YXlzCi0JCSAqIGluaXRpYWxpemVkIGR1cmluZyB0aGUgc2FuaXRpemF0aW9uIHByb2Nlc3Mg dGhhdCBoYXBwZW5zCi0JCSAqIG9uIHRoZSBmaXJzdCBjb21taXQgdG9vLgotCQkgKi8KLQkJaWYg KCFpbnRlbF9zdGF0ZS0+bW9kZXNldCkKLQkJCWludGVsX3N0YXRlLT5hY3RpdmVfY3J0Y3MgPSBk ZXZfcHJpdi0+YWN0aXZlX2NydGNzOwotCX0KLQotCS8qCi0JICogSWYgdGhlIG1vZGVzZXQgY2hh bmdlcyB3aGljaCBDUlRDJ3MgYXJlIGFjdGl2ZSwgd2UgbmVlZCB0bwotCSAqIHJlY29tcHV0ZSB0 aGUgRERCIGFsbG9jYXRpb24gZm9yICphbGwqIGFjdGl2ZSBwaXBlcywgZXZlbgotCSAqIHRob3Nl IHRoYXQgd2VyZW4ndCBvdGhlcndpc2UgYmVpbmcgbW9kaWZpZWQgaW4gYW55IHdheSBieSB0aGlz Ci0JICogYXRvbWljIGNvbW1pdC4gIER1ZSB0byB0aGUgc2hyaW5raW5nIG9mIHRoZSBwZXItcGlw ZSBhbGxvY2F0aW9ucwotCSAqIHdoZW4gbmV3IGFjdGl2ZSBDUlRDJ3MgYXJlIGFkZGVkLCBpdCdz IHBvc3NpYmxlIGZvciBhIHBpcGUgdGhhdAotCSAqIHdlIHdlcmUgYWxyZWFkeSB1c2luZyBhbmQg YXJlbid0IGNoYW5naW5nIGF0IGFsbCBoZXJlIHRvIHN1ZGRlbmx5Ci0JICogYmVjb21lIGludmFs aWQgaWYgaXRzIEREQiBuZWVkcyBleGNlZWRzIGl0cyBuZXcgYWxsb2NhdGlvbi4KLQkgKgotCSAq IE5vdGUgdGhhdCBpZiB3ZSB3aW5kIHVwIGRvaW5nIGEgZnVsbCBEREIgcmVjb21wdXRlLCB3ZSBj YW4ndCBsZXQKLQkgKiBhbnkgb3RoZXIgZGlzcGxheSB1cGRhdGVzIHJhY2Ugd2l0aCB0aGlzIHRy YW5zYWN0aW9uLCBzbyB3ZSBuZWVkCi0JICogdG8gZ3JhYiB0aGUgbG9jayBvbiAqYWxsKiBDUlRD J3MuCi0JICovCi0JaWYgKGludGVsX3N0YXRlLT5hY3RpdmVfcGlwZV9jaGFuZ2VzKSB7Ci0JCXJl YWxsb2NfcGlwZXMgPSB+MDsKLQkJaW50ZWxfc3RhdGUtPndtX3Jlc3VsdHMuZGlydHlfcGlwZXMg PSB+MDsKLQl9CisJc3RydWN0IGludGVsX2NydGMgKmNydGM7CisJc3RydWN0IGludGVsX2NydGNf c3RhdGUgKmNzdGF0ZTsKKwlpbnQgcmV0LCBpOwogCi0JLyoKLQkgKiBXZSdyZSBub3QgcmVjb21w dXRpbmcgZm9yIHRoZSBwaXBlcyBub3QgaW5jbHVkZWQgaW4gdGhlIGNvbW1pdCwgc28KLQkgKiBt YWtlIHN1cmUgd2Ugc3RhcnQgd2l0aCB0aGUgY3VycmVudCBzdGF0ZS4KLQkgKi8KIAltZW1jcHko ZGRiLCAmZGV2X3ByaXYtPndtLnNrbF9ody5kZGIsIHNpemVvZigqZGRiKSk7CiAKLQlmb3JfZWFj aF9pbnRlbF9jcnRjX21hc2soZGV2LCBpbnRlbF9jcnRjLCByZWFsbG9jX3BpcGVzKSB7Ci0JCXN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGU7Ci0KLQkJY3N0YXRlID0gaW50ZWxfYXRvbWlj X2dldF9jcnRjX3N0YXRlKHN0YXRlLCBpbnRlbF9jcnRjKTsKLQkJaWYgKElTX0VSUihjc3RhdGUp KQotCQkJcmV0dXJuIFBUUl9FUlIoY3N0YXRlKTsKLQorCWZvcl9lYWNoX25ld19pbnRlbF9jcnRj X2luX3N0YXRlKGludGVsX3N0YXRlLCBjcnRjLCBjc3RhdGUsIGkpIHsKIAkJcmV0ID0gc2tsX2Fs bG9jYXRlX3BpcGVfZGRiKGNzdGF0ZSwgZGRiKTsKIAkJaWYgKHJldCkKIAkJCXJldHVybiByZXQ7 CkBAIC01MTMyLDIzICs1MDc5LDIzIEBAIHNrbF9wcmludF93bV9jaGFuZ2VzKGNvbnN0IHN0cnVj dCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIH0KIAogc3RhdGljIGludAotc2tsX2NvbXB1dGVf d20oc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQorc2tsX2RkYl9hZGRfYWZmZWN0ZWRf cGlwZXMoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLCBib29sICpjaGFuZ2VkKQogewot CXN0cnVjdCBkcm1fY3J0YyAqY3J0YzsKLQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNzdGF0ZTsK LQlzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICppbnRlbF9zdGF0ZSA9IHRvX2ludGVsX2F0b21p Y19zdGF0ZShzdGF0ZSk7Ci0Jc3RydWN0IHNrbF9kZGJfdmFsdWVzICpyZXN1bHRzID0gJmludGVs X3N0YXRlLT53bV9yZXN1bHRzOwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBzdGF0ZS0+ZGV2 OwotCXN0cnVjdCBza2xfcGlwZV93bSAqcGlwZV93bTsKLQlib29sIGNoYW5nZWQgPSBmYWxzZTsK Kwljb25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7 CisJY29uc3Qgc3RydWN0IGRybV9jcnRjICpjcnRjOworCWNvbnN0IHN0cnVjdCBkcm1fY3J0Y19z dGF0ZSAqY3N0YXRlOworCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjOworCXN0cnVjdCBp bnRlbF9hdG9taWNfc3RhdGUgKmludGVsX3N0YXRlID0gdG9faW50ZWxfYXRvbWljX3N0YXRlKHN0 YXRlKTsKKwl1aW50MzJfdCByZWFsbG9jX3BpcGVzID0gcGlwZXNfbW9kaWZpZWQoc3RhdGUpOwog CWludCByZXQsIGk7CiAKIAkvKgogCSAqIFdoZW4gd2UgZGlzdHJ1c3QgYmlvcyB3bSB3ZSBhbHdh eXMgbmVlZCB0byByZWNvbXB1dGUgdG8gc2V0IHRoZQogCSAqIGV4cGVjdGVkIEREQiBhbGxvY2F0 aW9ucyBmb3IgZWFjaCBDUlRDLgogCSAqLwotCWlmICh0b19pOTE1KGRldiktPndtLmRpc3RydXN0 X2Jpb3Nfd20pCi0JCWNoYW5nZWQgPSB0cnVlOworCWlmIChkZXZfcHJpdi0+d20uZGlzdHJ1c3Rf Ymlvc193bSkKKwkJKmNoYW5nZWQgPSB0cnVlOwogCiAJLyoKIAkgKiBJZiB0aGlzIHRyYW5zYWN0 aW9uIGlzbid0IGFjdHVhbGx5IHRvdWNoaW5nIGFueSBDUlRDJ3MsIGRvbid0CkBAIC01MTU5LDE0 ICs1MTA2LDg3IEBAIHNrbF9jb21wdXRlX3dtKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0 ZSkKIAkgKiBob2xkIF9hbGxfIENSVEMgc3RhdGUgbXV0ZXhlcy4KIAkgKi8KIAlmb3JfZWFjaF9u ZXdfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0YywgY3N0YXRlLCBpKQotCQljaGFuZ2VkID0gdHJ1 ZTsKKwkJKmNoYW5nZWQgPSB0cnVlOwogCi0JaWYgKCFjaGFuZ2VkKQorCWlmICghKmNoYW5nZWQp CiAJCXJldHVybiAwOwogCisJLyoKKwkgKiBJZiB0aGlzIGlzIG91ciBmaXJzdCBhdG9taWMgdXBk YXRlIGZvbGxvd2luZyBoYXJkd2FyZSByZWFkb3V0LAorCSAqIHdlIGNhbid0IHRydXN0IHRoZSBE REIgdGhhdCB0aGUgQklPUyBwcm9ncmFtbWVkIGZvciB1cy4gIExldCdzCisJICogcHJldGVuZCB0 aGF0IGFsbCBwaXBlcyBzd2l0Y2hlZCBhY3RpdmUgc3RhdHVzIHNvIHRoYXQgd2UnbGwKKwkgKiBl bnN1cmUgYSBmdWxsIEREQiByZWNvbXB1dGUuCisJICovCisJaWYgKGRldl9wcml2LT53bS5kaXN0 cnVzdF9iaW9zX3dtKSB7CisJCXJldCA9IGRybV9tb2Rlc2V0X2xvY2soJmRldi0+bW9kZV9jb25m aWcuY29ubmVjdGlvbl9tdXRleCwKKwkJCQkgICAgICAgc3RhdGUtPmFjcXVpcmVfY3R4KTsKKwkJ aWYgKHJldCkKKwkJCXJldHVybiByZXQ7CisKKwkJaW50ZWxfc3RhdGUtPmFjdGl2ZV9waXBlX2No YW5nZXMgPSB+MDsKKworCQkvKgorCQkgKiBXZSB1c3VhbGx5IG9ubHkgaW5pdGlhbGl6ZSBpbnRl bF9zdGF0ZS0+YWN0aXZlX2NydGNzIGlmIHdlCisJCSAqIHdlJ3JlIGRvaW5nIGEgbW9kZXNldDsg bWFrZSBzdXJlIHRoaXMgZmllbGQgaXMgYWx3YXlzCisJCSAqIGluaXRpYWxpemVkIGR1cmluZyB0 aGUgc2FuaXRpemF0aW9uIHByb2Nlc3MgdGhhdCBoYXBwZW5zCisJCSAqIG9uIHRoZSBmaXJzdCBj b21taXQgdG9vLgorCQkgKi8KKwkJaWYgKCFpbnRlbF9zdGF0ZS0+bW9kZXNldCkKKwkJCWludGVs X3N0YXRlLT5hY3RpdmVfY3J0Y3MgPSBkZXZfcHJpdi0+YWN0aXZlX2NydGNzOworCX0KKworCS8q CisJICogSWYgdGhlIG1vZGVzZXQgY2hhbmdlcyB3aGljaCBDUlRDJ3MgYXJlIGFjdGl2ZSwgd2Ug bmVlZCB0bworCSAqIHJlY29tcHV0ZSB0aGUgRERCIGFsbG9jYXRpb24gZm9yICphbGwqIGFjdGl2 ZSBwaXBlcywgZXZlbgorCSAqIHRob3NlIHRoYXQgd2VyZW4ndCBvdGhlcndpc2UgYmVpbmcgbW9k aWZpZWQgaW4gYW55IHdheSBieSB0aGlzCisJICogYXRvbWljIGNvbW1pdC4gIER1ZSB0byB0aGUg c2hyaW5raW5nIG9mIHRoZSBwZXItcGlwZSBhbGxvY2F0aW9ucworCSAqIHdoZW4gbmV3IGFjdGl2 ZSBDUlRDJ3MgYXJlIGFkZGVkLCBpdCdzIHBvc3NpYmxlIGZvciBhIHBpcGUgdGhhdAorCSAqIHdl IHdlcmUgYWxyZWFkeSB1c2luZyBhbmQgYXJlbid0IGNoYW5naW5nIGF0IGFsbCBoZXJlIHRvIHN1 ZGRlbmx5CisJICogYmVjb21lIGludmFsaWQgaWYgaXRzIEREQiBuZWVkcyBleGNlZWRzIGl0cyBu ZXcgYWxsb2NhdGlvbi4KKwkgKgorCSAqIE5vdGUgdGhhdCBpZiB3ZSB3aW5kIHVwIGRvaW5nIGEg ZnVsbCBEREIgcmVjb21wdXRlLCB3ZSBjYW4ndCBsZXQKKwkgKiBhbnkgb3RoZXIgZGlzcGxheSB1 cGRhdGVzIHJhY2Ugd2l0aCB0aGlzIHRyYW5zYWN0aW9uLCBzbyB3ZSBuZWVkCisJICogdG8gZ3Jh YiB0aGUgbG9jayBvbiAqYWxsKiBDUlRDJ3MuCisJICovCisJaWYgKGludGVsX3N0YXRlLT5hY3Rp dmVfcGlwZV9jaGFuZ2VzKSB7CisJCXJlYWxsb2NfcGlwZXMgPSB+MDsKKwkJaW50ZWxfc3RhdGUt PndtX3Jlc3VsdHMuZGlydHlfcGlwZXMgPSB+MDsKKwl9CisKKwkvKgorCSAqIFdlJ3JlIG5vdCBy ZWNvbXB1dGluZyBmb3IgdGhlIHBpcGVzIG5vdCBpbmNsdWRlZCBpbiB0aGUgY29tbWl0LCBzbwor CSAqIG1ha2Ugc3VyZSB3ZSBzdGFydCB3aXRoIHRoZSBjdXJyZW50IHN0YXRlLgorCSAqLworCWZv cl9lYWNoX2ludGVsX2NydGNfbWFzayhkZXYsIGludGVsX2NydGMsIHJlYWxsb2NfcGlwZXMpIHsK KwkJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZTsKKworCQljc3RhdGUgPSBpbnRlbF9h dG9taWNfZ2V0X2NydGNfc3RhdGUoc3RhdGUsIGludGVsX2NydGMpOworCQlpZiAoSVNfRVJSKGNz dGF0ZSkpCisJCQlyZXR1cm4gUFRSX0VSUihjc3RhdGUpOworCX0KKworCXJldHVybiAwOworfQor CisKK3N0YXRpYyBpbnQKK3NrbF9jb21wdXRlX3dtKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpz dGF0ZSkKK3sKKwlzdHJ1Y3QgZHJtX2NydGMgKmNydGM7CisJc3RydWN0IGRybV9jcnRjX3N0YXRl ICpjc3RhdGU7CisJc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqaW50ZWxfc3RhdGUgPSB0b19p bnRlbF9hdG9taWNfc3RhdGUoc3RhdGUpOworCXN0cnVjdCBza2xfZGRiX3ZhbHVlcyAqcmVzdWx0 cyA9ICZpbnRlbF9zdGF0ZS0+d21fcmVzdWx0czsKKwlzdHJ1Y3Qgc2tsX3BpcGVfd20gKnBpcGVf d207CisJYm9vbCBjaGFuZ2VkID0gZmFsc2U7CisJaW50IHJldCwgaTsKKwogCS8qIENsZWFyIGFs bCBkaXJ0eSBmbGFncyAqLwogCXJlc3VsdHMtPmRpcnR5X3BpcGVzID0gMDsKIAorCXJldCA9IHNr bF9kZGJfYWRkX2FmZmVjdGVkX3BpcGVzKHN0YXRlLCAmY2hhbmdlZCk7CisJaWYgKHJldCB8fCAh Y2hhbmdlZCkKKwkJcmV0dXJuIHJldDsKKwogCXJldCA9IHNrbF9jb21wdXRlX2RkYihzdGF0ZSk7 CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKLS0gCjIuNy40CgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK