From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephane Viau Subject: [PATCH 05/10] drm/msm/mdp5: Vote for SMMU power when performing translations Date: Tue, 15 Sep 2015 08:41:48 -0400 Message-ID: <1442320913-3248-6-git-send-email-sviau@codeaurora.org> References: <1442320913-3248-1-git-send-email-sviau@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1442320913-3248-1-git-send-email-sviau@codeaurora.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org T24gbW9zdCByZWNlbnQgY2hpcHNldHMsIGNsaWVudHMgbmVlZCB0byB2b3RlIGZvciBTTU1VIHBv d2VyCihyZWd1bGF0b3IgYW5kIGNsb2NrKSB0aGVtc2VsdmVzIGZvciBhcyBsb25nIGFzIHRoZXkg d2FudCB0aGUKU01NVSB0byBiZSBvbiwgcGVyZm9ybWluZyB0cmFuc2xhdGlvbnMuCgpUaGlzIGNo YW5nZSBlbmFibGVzIChkaXNhYmxlcykgdGhlIFNNTVUgcG93ZXIganVzdCBiZWZvcmUKYXR0YWNo aW5nIChhZnRlciBkZXRhY2hpbmcpIE1EUDUgZGV2aWNlIHRvIHRoZSBTTU1VLgoKU2lnbmVkLW9m Zi1ieTogU3RlcGhhbmUgVmlhdSA8c3ZpYXVAY29kZWF1cm9yYS5vcmc+Ci0tLQogRG9jdW1lbnRh dGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2RybS9tc20vbWRwLnR4dCB8ICAzICsrCiBkcml2ZXJz L2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfa21zLmMgICAgICAgICAgIHwgNjUgKysrKysrKysr KysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9rbXMuaCAg ICAgICAgICAgfCAgMyArKwogMyBmaWxlcyBjaGFuZ2VkLCA3MSBpbnNlcnRpb25zKCspCgpkaWZm IC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2RybS9tc20vbWRwLnR4 dCBiL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9kcm0vbXNtL21kcC50eHQKaW5k ZXggMDgzM2VkYS4uOTliYTc2NCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVl L2JpbmRpbmdzL2RybS9tc20vbWRwLnR4dAorKysgYi9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUv YmluZGluZ3MvZHJtL21zbS9tZHAudHh0CkBAIC0xOSw2ICsxOSw5IEBAIE9wdGlvbmFsIHByb3Bl cnRpZXM6CiAtIGdwdXM6IHBoYW5kbGUgZm9yIGdwdSBkZXZpY2UKIC0gY2xvY2stbmFtZXM6IHRo ZSBmb2xsb3dpbmcgY2xvY2tzIGFyZSBvcHRpb25hbDoKICAgKiAibHV0X2NsayIKKyAgKiAiaW9t bXVfY2xrIgorICAqICJtbWFnaWNfY2xrIgorLSBtbWFnaWMtc3VwcGx5OiBwaGFuZGxlIGZvciBt bWFnaWMgR0RTQyByZWd1bGF0b3IgdXNlZCBkdXJpbmcgSU9NTVUgdHJhbnNsYXRpb24KIAogRXhh bXBsZToKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X2tt cy5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X2ttcy5jCmluZGV4IDYxZmNi NDEuLjk4M2JkNTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRw NV9rbXMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfa21zLmMKQEAg LTEyOSw2ICsxMjksNTQgQEAgc3RhdGljIHZvaWQgbWRwNV9wcmVjbG9zZShzdHJ1Y3QgbXNtX2tt cyAqa21zLCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUpCiAJCW1kcDVfY3J0Y19jYW5jZWxfcGVuZGlu Z19mbGlwKHByaXYtPmNydGNzW2ldLCBmaWxlKTsKIH0KIAorc3RhdGljIGludCBtZHA1X3RyYW5z bGF0aW9uX2N0cmxfcHdyKHN0cnVjdCBtZHA1X2ttcyAqbWRwNV9rbXMsIGJvb2wgb24pCit7CisJ c3RydWN0IGRldmljZSAqZGV2ID0gbWRwNV9rbXMtPmRldi0+ZGV2OworCWludCByZXQ7CisKKwlp ZiAob24pIHsKKwkJaWYgKG1kcDVfa21zLT5tbWFnaWMpIHsKKwkJCXJldCA9IHJlZ3VsYXRvcl9l bmFibGUobWRwNV9rbXMtPm1tYWdpYyk7CisJCQlpZiAocmV0KSB7CisJCQkJZGV2X2VycihkZXYs ICJmYWlsZWQgdG8gZW5hYmxlIG1tYWdpYyBHRFNDOiAlZFxuIiwgcmV0KTsKKwkJCQlyZXR1cm4g cmV0OworCQkJfQorCQl9CisJCWlmIChtZHA1X2ttcy0+bW1hZ2ljX2NsaykgeworCQkJY2xrX3By ZXBhcmVfZW5hYmxlKG1kcDVfa21zLT5tbWFnaWNfY2xrKTsKKwkJCWlmIChyZXQpIHsKKwkJCQlk ZXZfZXJyKGRldiwgImZhaWxlZCB0byBlbmFibGUgbW1hZ2ljX2Nsa1xuIik7CisJCQkJZ290byB1 bmRvX2dkc2M7CisJCQl9CisJCX0KKwkJaWYgKG1kcDVfa21zLT5pb21tdV9jbGspIHsKKwkJCXJl dCA9IGNsa19wcmVwYXJlX2VuYWJsZShtZHA1X2ttcy0+aW9tbXVfY2xrKTsKKwkJCWlmIChyZXQp IHsKKwkJCQlkZXZfZXJyKGRldiwgImZhaWxlZCB0byBlbmFibGUgaW9tbXVfY2xrXG4iKTsKKwkJ CQlnb3RvIHVuZG9fbW1hZ2ljX2NsazsKKwkJCX0KKwkJfQorCX0gZWxzZSB7CisJCWlmIChtZHA1 X2ttcy0+aW9tbXVfY2xrKQorCQkJY2xrX2Rpc2FibGVfdW5wcmVwYXJlKG1kcDVfa21zLT5pb21t dV9jbGspOworCQlpZiAobWRwNV9rbXMtPm1tYWdpY19jbGspCisJCQljbGtfZGlzYWJsZV91bnBy ZXBhcmUobWRwNV9rbXMtPm1tYWdpY19jbGspOworCQlpZiAobWRwNV9rbXMtPm1tYWdpYykKKwkJ CXJlZ3VsYXRvcl9kaXNhYmxlKG1kcDVfa21zLT5tbWFnaWMpOworCX0KKworCXJldHVybiAwOwor Cit1bmRvX21tYWdpY19jbGs6CisJaWYgKG1kcDVfa21zLT5tbWFnaWNfY2xrKQorCQljbGtfZGlz YWJsZV91bnByZXBhcmUobWRwNV9rbXMtPm1tYWdpY19jbGspOwordW5kb19nZHNjOgorCWlmICht ZHA1X2ttcy0+bW1hZ2ljKQorCQlyZWd1bGF0b3JfZGlzYWJsZShtZHA1X2ttcy0+bW1hZ2ljKTsK KworCXJldHVybiByZXQ7Cit9CisKIHN0YXRpYyB2b2lkIG1kcDVfZGVzdHJveShzdHJ1Y3QgbXNt X2ttcyAqa21zKQogewogCXN0cnVjdCBtZHA1X2ttcyAqbWRwNV9rbXMgPSB0b19tZHA1X2ttcyh0 b19tZHBfa21zKGttcykpOwpAQCAtMTM4LDYgKzE4Niw3IEBAIHN0YXRpYyB2b2lkIG1kcDVfZGVz dHJveShzdHJ1Y3QgbXNtX2ttcyAqa21zKQogCiAJaWYgKG1tdSkgewogCQltbXUtPmZ1bmNzLT5k ZXRhY2gobW11LCBpb21tdV9wb3J0cywgQVJSQVlfU0laRShpb21tdV9wb3J0cykpOworCQltZHA1 X3RyYW5zbGF0aW9uX2N0cmxfcHdyKG1kcDVfa21zLCBmYWxzZSk7CiAJCW1tdS0+ZnVuY3MtPmRl c3Ryb3kobW11KTsKIAl9CiAKQEAgLTUyMCw2ICs1NjksMTMgQEAgc3RydWN0IG1zbV9rbXMgKm1k cDVfa21zX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJZ290byBmYWlsOwogCX0KIAor CW1kcDVfa21zLT5tbWFnaWMgPSBkZXZtX3JlZ3VsYXRvcl9nZXRfb3B0aW9uYWwoJnBkZXYtPmRl diwgIm1tYWdpYyIpOworCWlmIChJU19FUlIobWRwNV9rbXMtPm1tYWdpYykpIHsKKwkJcmV0ID0g UFRSX0VSUihtZHA1X2ttcy0+bW1hZ2ljKTsKKwkJREJHKCJmYWlsZWQgdG8gZ2V0IG1tYWdpYyBH RFNDIHJlZ3VsYXRvcjogJWRcbiIsIHJldCk7CisJCW1kcDVfa21zLT5tbWFnaWMgPSBOVUxMOwor CX0KKwogCS8qIG1hbmRhdG9yeSBjbG9ja3M6ICovCiAJcmV0ID0gZ2V0X2NsayhwZGV2LCAmbWRw NV9rbXMtPmF4aV9jbGssICJidXNfY2xrIiwgdHJ1ZSk7CiAJaWYgKHJldCkKQEAgLTUzOSw2ICs1 OTUsOCBAQCBzdHJ1Y3QgbXNtX2ttcyAqbWRwNV9rbXNfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KQogCiAJLyogb3B0aW9uYWwgY2xvY2tzOiAqLwogCWdldF9jbGsocGRldiwgJm1kcDVfa21z LT5sdXRfY2xrLCAibHV0X2NsayIsIGZhbHNlKTsKKwlnZXRfY2xrKHBkZXYsICZtZHA1X2ttcy0+ bW1hZ2ljX2NsaywgIm1tYWdpY19jbGsiLCBmYWxzZSk7CisJZ2V0X2NsayhwZGV2LCAmbWRwNV9r bXMtPmlvbW11X2NsaywgImlvbW11X2NsayIsIGZhbHNlKTsKIAogCS8qIHdlIG5lZWQgdG8gc2V0 IGEgZGVmYXVsdCByYXRlIGJlZm9yZSBlbmFibGluZy4gIFNldCBhIHNhZmUKIAkgKiByYXRlIGZp cnN0LCB0aGVuIGZpZ3VyZSBvdXQgaHcgcmV2aXNpb24sIGFuZCB0aGVuIHNldCBhCkBAIC02MTIs NiArNjcwLDEzIEBAIHN0cnVjdCBtc21fa21zICptZHA1X2ttc19pbml0KHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYpCiAJCQlEQkcoImNvaGVyZW50IGhhcmR3YXJlIHRyYW5zbGF0aW9uIHRhYmxlIHdh bGtzIGlzIG9mZiIpOwogCQl9CiAKKwkJcmV0ID0gbWRwNV90cmFuc2xhdGlvbl9jdHJsX3B3ciht ZHA1X2ttcywgdHJ1ZSk7CisJCWlmIChyZXQpIHsKKwkJCWRldl9lcnIoZGV2LT5kZXYsICJmYWls ZWQgdG8gcG93ZXIgaW9tbXU6ICVkXG4iLCByZXQpOworCQkJbW11LT5mdW5jcy0+ZGVzdHJveSht bXUpOworCQkJZ290byBmYWlsOworCQl9CisKIAkJcmV0ID0gbW11LT5mdW5jcy0+YXR0YWNoKG1t dSwgaW9tbXVfcG9ydHMsCiAJCQkJQVJSQVlfU0laRShpb21tdV9wb3J0cykpOwogCQlpZiAocmV0 KSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfa21zLmgg Yi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfa21zLmgKaW5kZXggMWUxYTZiMC4u YWIxOWQ1MmEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9r bXMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfa21zLmgKQEAgLTQ0 LDEyICs0NCwxNSBAQCBzdHJ1Y3QgbWRwNV9rbXMgewogCXZvaWQgX19pb21lbSAqbW1pbywgKnZi aWY7CiAKIAlzdHJ1Y3QgcmVndWxhdG9yICp2ZGQ7CisJc3RydWN0IHJlZ3VsYXRvciAqbW1hZ2lj OwogCiAJc3RydWN0IGNsayAqYXhpX2NsazsKIAlzdHJ1Y3QgY2xrICphaGJfY2xrOwogCXN0cnVj dCBjbGsgKnNyY19jbGs7CiAJc3RydWN0IGNsayAqY29yZV9jbGs7CiAJc3RydWN0IGNsayAqbHV0 X2NsazsKKwlzdHJ1Y3QgY2xrICptbWFnaWNfY2xrOworCXN0cnVjdCBjbGsgKmlvbW11X2NsazsK IAlzdHJ1Y3QgY2xrICp2c3luY19jbGs7CiAKIAkvKgotLSAKUXVhbGNvbW0gSW5ub3ZhdGlvbiBD ZW50ZXIsIEluYy4KClRoZSBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRlciwgSW5jLiBpcyBhIG1l bWJlciBvZiB0aGUgQ29kZSBBdXJvcmEgRm9ydW0sIGEgTGludXggRm91bmRhdGlvbiBDb2xsYWJv cmF0aXZlIFByb2plY3QKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRl dmVsCg==