From mboxrd@z Thu Jan 1 00:00:00 1970 From: tom.orourke@intel.com Subject: [PATCH 17/26] drm/i915/slpc: Add parameter unset/set/get functions Date: Tue, 8 Mar 2016 16:34:20 -0800 Message-ID: <1457483669-155235-18-git-send-email-tom.orourke@intel.com> References: <1457483669-155235-1-git-send-email-tom.orourke@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 262086E7B1 for ; Wed, 9 Mar 2016 00:35:08 +0000 (UTC) In-Reply-To: <1457483669-155235-1-git-send-email-tom.orourke@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: paulo.r.zanoni@intel.com, Tom O'Rourke List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVG9tIE8nUm91cmtlIDxUb20uTydSb3Vya2VAaW50ZWwuY29tPgoKQWRkIHNscGNfcGFy YW1faWQgZW51bSB2YWx1ZXMuCkFkZCBldmVudHMgZm9yIHNldHRpbmcvdW5zZXR0aW5nIHBhcmFt ZXRlcnMuCgp2MjogdXNlIGhvc3QyZ3VjX3NscGMKICAgIHVwZGF0ZSBzbGNwX3BhcmFtX2lkIGVu dW0gdmFsdWVzIGZvciBTTFBDIDIwMTUuMi40CiAgICByZXR1cm4gdm9pZCBpbnN0ZWFkIG9mIGln bm9yZWQgZXJyb3IgY29kZSAoUGF1bG8pCgpTaWduZWQtb2ZmLWJ5OiBUb20gTydSb3Vya2UgPFRv bS5PJ1JvdXJrZUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2xw Yy5jIHwgMTA0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9zbHBjLmggfCAgMjYgKysrKysrKysrLQogMiBmaWxlcyBjaGFu Z2VkLCAxMjkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3NscGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3NscGMuYwppbmRleCA1MjRhZDYzLi5lN2Y0OWRiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9zbHBjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2xw Yy5jCkBAIC04OCw2ICs4OCwzMyBAQCBzdGF0aWMgdm9pZCBob3N0Mmd1Y19zbHBjX2Rpc3BsYXlf bW9kZV9jaGFuZ2Uoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlob3N0Mmd1Y19zbHBjKGRldl9w cml2LCBkYXRhLCA3KTsKIH0KIAorc3RhdGljIHZvaWQgaG9zdDJndWNfc2xwY19zZXRfcGFyYW0o c3RydWN0IGRybV9kZXZpY2UgKmRldiwKKwkJCQkgICAgZW51bSBzbHBjX3BhcmFtX2lkIGlkLCB1 MzIgdmFsdWUpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5k ZXZfcHJpdmF0ZTsKKwl1MzIgZGF0YVs0XTsKKworCWRhdGFbMF0gPSBIT1NUMkdVQ19BQ1RJT05f U0xQQ19SRVFVRVNUOworCWRhdGFbMV0gPSBTTFBDX0VWRU5UKFNMUENfRVZFTlRfUEFSQU1FVEVS X1NFVCwgMik7CisJZGF0YVsyXSA9ICh1MzIpIGlkOworCWRhdGFbM10gPSB2YWx1ZTsKKworCWhv c3QyZ3VjX3NscGMoZGV2X3ByaXYsIGRhdGEsIDQpOworfQorCitzdGF0aWMgdm9pZCBob3N0Mmd1 Y19zbHBjX3Vuc2V0X3BhcmFtKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCisJCQkJICAgICAgZW51 bSBzbHBjX3BhcmFtX2lkIGlkKQoreworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IGRldi0+ZGV2X3ByaXZhdGU7CisJdTMyIGRhdGFbM107CisKKwlkYXRhWzBdID0gSE9TVDJH VUNfQUNUSU9OX1NMUENfUkVRVUVTVDsKKwlkYXRhWzFdID0gU0xQQ19FVkVOVChTTFBDX0VWRU5U X1BBUkFNRVRFUl9VTlNFVCwgMSk7CisJZGF0YVsyXSA9ICh1MzIpIGlkOworCisJaG9zdDJndWNf c2xwYyhkZXZfcHJpdiwgZGF0YSwgMyk7Cit9CisKIHN0YXRpYyB1OCBzbHBjX2dldF9wbGF0Zm9y bV9za3Uoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKIHsKIAlzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2ID0gb2JqLT5iYXNlLmRldjsKQEAgLTM1NSwzICszODIsODAgQEAgdm9pZCBpbnRl bF9zbHBjX3VwZGF0ZV9kaXNwbGF5X3JyX2luZm8oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMy IHJlZnJlc2hfcmF0ZSkKIAogCWhvc3QyZ3VjX3NscGNfZGlzcGxheV9tb2RlX2NoYW5nZShkZXYp OwogfQorCit2b2lkIGludGVsX3NscGNfdW5zZXRfcGFyYW0oc3RydWN0IGRybV9kZXZpY2UgKmRl diwgZW51bSBzbHBjX3BhcmFtX2lkIGlkKQoreworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CisJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Qg Km9iajsKKwlzdHJ1Y3QgcGFnZSAqcGFnZTsKKwlzdHJ1Y3Qgc2xwY19zaGFyZWRfZGF0YSAqZGF0 YSA9IE5VTEw7CisKKwlvYmogPSBkZXZfcHJpdi0+Z3VjLnNscGMuc2hhcmVkX2RhdGFfb2JqOwor CWlmIChvYmopIHsKKwkJcGFnZSA9IGk5MTVfZ2VtX29iamVjdF9nZXRfcGFnZShvYmosIDApOwor CQlpZiAocGFnZSkKKwkJCWRhdGEgPSBrbWFwX2F0b21pYyhwYWdlKTsKKwl9CisKKwlpZiAoZGF0 YSkgeworCQlkYXRhLT5vdmVycmlkZV9wYXJhbWV0ZXJzX3NldF9iaXRzW2lkID4+IDVdCisJCQkJ CQkJJj0gKH4oMSA8PCAoaWQgJSAzMikpKTsKKwkJZGF0YS0+b3ZlcnJpZGVfcGFyYW1ldGVyc192 YWx1ZXNbaWRdID0gMDsKKwkJa3VubWFwX2F0b21pYyhkYXRhKTsKKworCQlob3N0Mmd1Y19zbHBj X3Vuc2V0X3BhcmFtKGRldiwgaWQpOworCX0KK30KKwordm9pZCBpbnRlbF9zbHBjX3NldF9wYXJh bShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBlbnVtIHNscGNfcGFyYW1faWQgaWQsCisJCQkgIHUz MiB2YWx1ZSkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRl dl9wcml2YXRlOworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CisJc3RydWN0IHBh Z2UgKnBhZ2U7CisJc3RydWN0IHNscGNfc2hhcmVkX2RhdGEgKmRhdGEgPSBOVUxMOworCisJb2Jq ID0gZGV2X3ByaXYtPmd1Yy5zbHBjLnNoYXJlZF9kYXRhX29iajsKKwlpZiAob2JqKSB7CisJCXBh Z2UgPSBpOTE1X2dlbV9vYmplY3RfZ2V0X3BhZ2Uob2JqLCAwKTsKKwkJaWYgKHBhZ2UpCisJCQlk YXRhID0ga21hcF9hdG9taWMocGFnZSk7CisJfQorCisJaWYgKGRhdGEpIHsKKwkJZGF0YS0+b3Zl cnJpZGVfcGFyYW1ldGVyc19zZXRfYml0c1tpZCA+PiA1XQorCQkJCQkJCXw9ICgxIDw8IChpZCAl IDMyKSk7CisJCWRhdGEtPm92ZXJyaWRlX3BhcmFtZXRlcnNfdmFsdWVzW2lkXSA9IHZhbHVlOwor CQlrdW5tYXBfYXRvbWljKGRhdGEpOworCisJCWhvc3QyZ3VjX3NscGNfc2V0X3BhcmFtKGRldiwg aWQsIHZhbHVlKTsKKwl9Cit9CisKK3ZvaWQgaW50ZWxfc2xwY19nZXRfcGFyYW0oc3RydWN0IGRy bV9kZXZpY2UgKmRldiwgZW51bSBzbHBjX3BhcmFtX2lkIGlkLAorCQkJICBpbnQgKm92ZXJyaWRp bmcsIHUzMiAqdmFsdWUpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0g ZGV2LT5kZXZfcHJpdmF0ZTsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOworCXN0 cnVjdCBwYWdlICpwYWdlOworCXN0cnVjdCBzbHBjX3NoYXJlZF9kYXRhICpkYXRhID0gTlVMTDsK Kwl1MzIgYml0czsKKworCW9iaiA9IGRldl9wcml2LT5ndWMuc2xwYy5zaGFyZWRfZGF0YV9vYmo7 CisJaWYgKG9iaikgeworCQlwYWdlID0gaTkxNV9nZW1fb2JqZWN0X2dldF9wYWdlKG9iaiwgMCk7 CisJCWlmIChwYWdlKQorCQkJZGF0YSA9IGttYXBfYXRvbWljKHBhZ2UpOworCX0KKworCWlmIChk YXRhKSB7CisJCWlmIChvdmVycmlkaW5nKSB7CisJCQliaXRzID0gZGF0YS0+b3ZlcnJpZGVfcGFy YW1ldGVyc19zZXRfYml0c1tpZCA+PiA1XTsKKwkJCSpvdmVycmlkaW5nID0gKDAgIT0gKGJpdHMg JiAoMSA8PCAoaWQgJSAzMikpKSk7CisJCX0KKwkJaWYgKHZhbHVlKQorCQkJKnZhbHVlID0gZGF0 YS0+b3ZlcnJpZGVfcGFyYW1ldGVyc192YWx1ZXNbaWRdOworCisJCWt1bm1hcF9hdG9taWMoZGF0 YSk7CisJfQorfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2xwYy5o IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2xwYy5oCmluZGV4IGRlMmRmMGMuLmI3YWQ0 NDAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3NscGMuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zbHBjLmgKQEAgLTY5LDYgKzY5LDI2IEBAIGVudW0g c2xwY19ldmVudF9pZCB7CiAjZGVmaW5lIFNMUENfRVZFTlQoaWQsIGFyZ2MpICgodTMyKSAoaWQp IDw8IDggfCAoYXJnYykpCiAjZGVmaW5lIFNMUENfRVZFTlRfU1RBVFVTX01BU0sJMHhGRgogCitl bnVtIHNscGNfcGFyYW1faWQgeworCVNMUENfUEFSQU1fVEFTS19FTkFCTEVfR1RQRVJGID0gMCwK KwlTTFBDX1BBUkFNX1RBU0tfRElTQUJMRV9HVFBFUkYgPSAxLAorCVNMUENfUEFSQU1fVEFTS19F TkFCTEVfQkFMQU5DRVIgPSAyLAorCVNMUENfUEFSQU1fVEFTS19ESVNBQkxFX0JBTEFOQ0VSID0g MywKKwlTTFBDX1BBUkFNX1RBU0tfRU5BQkxFX0RDQyA9IDQsCisJU0xQQ19QQVJBTV9UQVNLX0RJ U0FCTEVfRENDID0gNSwKKwlTTFBDX1BBUkFNX0dMT0JBTF9NSU5fR1RfVU5TTElDRV9GUkVRX01I WiA9IDYsCisJU0xQQ19QQVJBTV9HTE9CQUxfTUFYX0dUX1VOU0xJQ0VfRlJFUV9NSFogPSA3LAor CVNMUENfUEFSQU1fR0xPQkFMX01JTl9HVF9TTElDRV9GUkVRX01IWiA9IDgsCisJU0xQQ19QQVJB TV9HTE9CQUxfTUFYX0dUX1NMSUNFX0ZSRVFfTUhaID0gOSwKKwlTTFBDX1BBUkFNX0RGUFNfVEhS RVNIT0xEX01BWF9GUFMgPSAxMCwKKwlTTFBDX1BBUkFNX0dMT0JBTF9ESVNBQkxFX0dUX0ZSRVFf TUFOQUdFTUVOVCA9IDExLAorCVNMUENfUEFSQU1fREZQU19ESVNBQkxFX0ZSQU1FUkFURV9TVEFM TElORyA9IDEyLAorCVNMUENfUEFSQU1fR0xPQkFMX0RJU0FCTEVfUkM2X01PREVfQ0hBTkdFID0g MTMsCisJU0xQQ19QQVJBTV9HTE9CQUxfT0NfVU5TTElDRV9GUkVRX01IWiA9IDE0LAorCVNMUENf UEFSQU1fR0xPQkFMX09DX1NMSUNFX0ZSRVFfTUhaID0gMTUsCisJU0xQQ19QQVJBTV9HTE9CQUxf RElTQUJFX0lBX0dUX0JBTEFOQ0lORyA9IDE2LAorfTsKKwogZW51bSBzbHBjX2dsb2JhbF9zdGF0 ZSB7CiAJU0xQQ19HTE9CQUxfU1RBVEVfTk9UX1JVTk5JTkcgPSAwLAogCVNMUENfR0xPQkFMX1NU QVRFX0lOSVRJQUxJWklORyA9IDEsCkBAIC0xODAsNSArMjAwLDkgQEAgdm9pZCBpbnRlbF9zbHBj X3VwZGF0ZV9kaXNwbGF5X21vZGVfaW5mbyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIHZvaWQg aW50ZWxfc2xwY191cGRhdGVfYXRvbWljX2NvbW1pdF9pbmZvKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCiAJCQkJCSAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKTsKIHZvaWQgaW50ZWxf c2xwY191cGRhdGVfZGlzcGxheV9ycl9pbmZvKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUzMiBy ZWZyZXNoX3JhdGUpOwotCit2b2lkIGludGVsX3NscGNfdW5zZXRfcGFyYW0oc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgZW51bSBzbHBjX3BhcmFtX2lkIGlkKTsKK3ZvaWQgaW50ZWxfc2xwY19zZXRf cGFyYW0oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBzbHBjX3BhcmFtX2lkIGlkLAorCQkJ ICB1MzIgdmFsdWUpOwordm9pZCBpbnRlbF9zbHBjX2dldF9wYXJhbShzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCBlbnVtIHNscGNfcGFyYW1faWQgaWQsCisJCQkgIGludCAqb3ZlcnJpZGluZywgdTMy ICp2YWx1ZSk7CiAjZW5kaWYKLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK