From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: [PATCH 5/6] drm/msm: gpu: Use OPP tables if we can Date: Tue, 7 Mar 2017 10:02:55 -0700 Message-ID: <1488906176-10720-6-git-send-email-jcrouse@codeaurora.org> References: <1488906176-10720-1-git-send-email-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1488906176-10720-1-git-send-email-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org SWYgYSBPUFAgdGFibGUgaXMgZGVmaW5lZCBmb3IgdGhlIEdQVSBkZXZpY2UgaW4gdGhlIGRldmlj ZSB0cmVlIHVzZQp0aGF0IGluIGxpZXUgb2YgdGhlIGRvd25zdHJlYW0gc3R5bGUgR1BVIGZyZXF1 ZW5jeSB0YWJsZS4gSWYgd2UgZG8KdXNlIHRoZSBkb3duc3RyZWFtIHRhYmxlIGNvbnZlcnQgaXQg dG8gYSBPUFAgdGFibGUgc28gdGhhdCB3ZSBjYW4KdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlIE9QUCBs b29rdXAgZmFjaWxpdGllcyBsYXRlci4KClNpZ25lZC1vZmYtYnk6IEpvcmRhbiBDcm91c2UgPGpj cm91c2VAY29kZWF1cm9yYS5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRy ZW5vX2RldmljZS5jIHwgODUgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2RldmljZS5jIGIvZHJpdmVycy9ncHUv ZHJtL21zbS9hZHJlbm8vYWRyZW5vX2RldmljZS5jCmluZGV4IDgzNzRlOWEuLjI0ZGE3ZjYgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19kZXZpY2UuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZGV2aWNlLmMKQEAgLTE3LDYgKzE3 LDcgQEAKICAqIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcv bGljZW5zZXMvPi4KICAqLwogCisjaW5jbHVkZSA8bGludXgvcG1fb3BwLmg+CiAjaW5jbHVkZSAi YWRyZW5vX2dwdS5oIgogCiAjZGVmaW5lIEFOWV9JRCAweGZmCkBAIC0yMjAsMTAgKzIyMSw3MSBA QCBzdGF0aWMgaW50IGZpbmRfY2hpcGlkKHN0cnVjdCBkZXZpY2UgKmRldiwgdTMyICpjaGlwaWQp CiAJcmV0dXJuIDA7CiB9CiAKKy8qIEdldCBsZWdhY3kgcG93ZXJsZXZlbHMgZnJvbSBxY29tLGdw dS1wd3JsZXZlbHMgYW5kIHBvcHVsYXRlIHRoZSBvcHAgdGFibGUgKi8KK3N0YXRpYyBpbnQgYWRy ZW5vX2dldF9sZWdhY3lfcHdybGV2ZWxzKHN0cnVjdCBkZXZpY2UgKmRldikKK3sKKwlzdHJ1Y3Qg ZGV2aWNlX25vZGUgKmNoaWxkLCAqbm9kZTsKKwlpbnQgcmV0OworCisJbm9kZSA9IG9mX2ZpbmRf Y29tcGF0aWJsZV9ub2RlKGRldi0+b2Zfbm9kZSwgTlVMTCwKKwkJInFjb20sZ3B1LXB3cmxldmVs cyIpOworCWlmICghbm9kZSkgeworCQlkZXZfZXJyKGRldiwgIkNvdWxkIG5vdCBmaW5kIHRoZSBH UFUgcG93ZXJsZXZlbHNcbiIpOworCQlyZXR1cm4gLUVOWElPOworCX0KKworCWZvcl9lYWNoX2No aWxkX29mX25vZGUobm9kZSwgY2hpbGQpIHsKKwkJdW5zaWduZWQgaW50IHZhbDsKKworCQlyZXQg PSBvZl9wcm9wZXJ0eV9yZWFkX3UzMihjaGlsZCwgInFjb20sZ3B1LWZyZXEiLCAmdmFsKTsKKwkJ aWYgKHJldCkKKwkJCWNvbnRpbnVlOworCisJCS8qCisJCSAqIFNraXAgdGhlIGludGVudGlvbmFs bHkgYm9ndXMgY2xvY2sgdmFsdWUgZm91bmQgYXQgdGhlIGJvdHRvbQorCQkgKiBvZiBtb3N0IGxl Z2FjeSBmcmVxdWVuY3kgdGFibGVzCisJCSAqLworCQlpZiAodmFsICE9IDI3MDAwMDAwKQorCQkJ ZGV2X3BtX29wcF9hZGQoZGV2LCB2YWwsIDApOworCX0KKworCXJldHVybiAwOworfQorCitzdGF0 aWMgaW50IGFkcmVub19nZXRfcHdybGV2ZWxzKHN0cnVjdCBkZXZpY2UgKmRldiwKKwkJc3RydWN0 IGFkcmVub19wbGF0Zm9ybV9jb25maWcgKmNvbmZpZykKK3sKKwl1bnNpZ25lZCBsb25nIGZyZXEg PSBVTE9OR19NQVg7CisJc3RydWN0IGRldl9wbV9vcHAgKm9wcDsKKwlpbnQgcmV0OworCisJLyog WW91IGRvd24gd2l0aCBPUFA/ICovCisJaWYgKCFvZl9maW5kX3Byb3BlcnR5KGRldi0+b2Zfbm9k ZSwgIm9wZXJhdGluZy1wb2ludHMtdjIiLCBOVUxMKSkKKwkJcmV0ID0gYWRyZW5vX2dldF9sZWdh Y3lfcHdybGV2ZWxzKGRldik7CisJZWxzZQorCQlyZXQgPSBkZXZfcG1fb3BwX29mX2FkZF90YWJs ZShkZXYpOworCisJaWYgKHJldCkKKwkJcmV0dXJuIHJldDsKKworCS8qIEZpbmQgdGhlIGZhc3Rl c3QgZGVmaW5lZCByYXRlICovCisJb3BwID0gZGV2X3BtX29wcF9maW5kX2ZyZXFfZmxvb3IoZGV2 LCAmZnJlcSk7CisJaWYgKCFJU19FUlIob3BwKSkKKwkJY29uZmlnLT5mYXN0X3JhdGUgPSBkZXZf cG1fb3BwX2dldF9mcmVxKG9wcCk7CisKKwlpZiAoIWNvbmZpZy0+ZmFzdF9yYXRlKSB7CisJCURS TV9ERVZfSU5GTyhkZXYsCisJCQkiQ291bGQgbm90IGZpbmQgY2xvY2sgcmF0ZS4gVXNpbmcgZGVm YXVsdFxuIik7CisJCS8qIFBpY2sgYSBzdWl0YWJseSBzYWZlIGNsb2NrIHNwZWVkIGZvciBhbnkg dGFyZ2V0ICovCisJCWNvbmZpZy0+ZmFzdF9yYXRlID0gMjAwMDAwMDAwOworCX0KKworCXJldHVy biAwOworfQorCiBzdGF0aWMgaW50IGFkcmVub19iaW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3Ry dWN0IGRldmljZSAqbWFzdGVyLCB2b2lkICpkYXRhKQogewogCXN0YXRpYyBzdHJ1Y3QgYWRyZW5v X3BsYXRmb3JtX2NvbmZpZyBjb25maWcgPSB7fTsKLQlzdHJ1Y3QgZGV2aWNlX25vZGUgKmNoaWxk LCAqbm9kZSA9IGRldi0+b2Zfbm9kZTsKIAl1MzIgdmFsOwogCWludCByZXQ7CiAKQEAgLTIzOCwy NSArMzAwLDEwIEBAIHN0YXRpYyBpbnQgYWRyZW5vX2JpbmQoc3RydWN0IGRldmljZSAqZGV2LCBz dHJ1Y3QgZGV2aWNlICptYXN0ZXIsIHZvaWQgKmRhdGEpCiAKIAkvKiBmaW5kIGNsb2NrIHJhdGVz OiAqLwogCWNvbmZpZy5mYXN0X3JhdGUgPSAwOwotCWZvcl9lYWNoX2NoaWxkX29mX25vZGUobm9k ZSwgY2hpbGQpIHsKLQkJaWYgKG9mX2RldmljZV9pc19jb21wYXRpYmxlKGNoaWxkLCAicWNvbSxn cHUtcHdybGV2ZWxzIikpIHsKLQkJCXN0cnVjdCBkZXZpY2Vfbm9kZSAqcHdybHZsOwotCQkJZm9y X2VhY2hfY2hpbGRfb2Zfbm9kZShjaGlsZCwgcHdybHZsKSB7Ci0JCQkJcmV0ID0gb2ZfcHJvcGVy dHlfcmVhZF91MzIocHdybHZsLCAicWNvbSxncHUtZnJlcSIsICZ2YWwpOwotCQkJCWlmIChyZXQp IHsKLQkJCQkJZGV2X2VycihkZXYsICJjb3VsZCBub3QgZmluZCBncHUtZnJlcTogJWRcbiIsIHJl dCk7Ci0JCQkJCXJldHVybiByZXQ7Ci0JCQkJfQotCQkJCWNvbmZpZy5mYXN0X3JhdGUgPSBtYXgo Y29uZmlnLmZhc3RfcmF0ZSwgdmFsKTsKLQkJCX0KLQkJfQotCX0KIAotCWlmICghY29uZmlnLmZh c3RfcmF0ZSkgewotCQlkZXZfd2FybihkZXYsICJjb3VsZCBub3QgZmluZCBjbGsgcmF0ZXNcbiIp OwotCQkvKiBUaGlzIGlzIGEgc2FmZSBsb3cgc3BlZWQgZm9yIGFsbCBkZXZpY2VzOiAqLwotCQlj b25maWcuZmFzdF9yYXRlID0gMjAwMDAwMDAwOwotCX0KKwlyZXQgPSBhZHJlbm9fZ2V0X3B3cmxl dmVscyhkZXYsICZjb25maWcpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CiAKIAlkZXYtPnBs YXRmb3JtX2RhdGEgPSAmY29uZmlnOwogCXNldF9ncHVfcGRldihkZXZfZ2V0X2RydmRhdGEobWFz dGVyKSwgdG9fcGxhdGZvcm1fZGV2aWNlKGRldikpOwotLSAKMS45LjEKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxpc3QK RnJlZWRyZW5vQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZyZWVkcmVubwo=