From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Deucher Subject: [PATCH 1/4] drm/amdgpu: add the new common pm code to select the clock levels Date: Fri, 20 May 2016 18:02:44 -0400 Message-ID: <1463781767-28124-2-git-send-email-alexander.deucher@amd.com> References: <1463781767-28124-1-git-send-email-alexander.deucher@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-it0-x243.google.com (mail-it0-x243.google.com [IPv6:2607:f8b0:4001:c0b::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id B6ABE6E187 for ; Fri, 20 May 2016 22:02:54 +0000 (UTC) Received: by mail-it0-x243.google.com with SMTP id k76so94400ita.1 for ; Fri, 20 May 2016 15:02:54 -0700 (PDT) In-Reply-To: <1463781767-28124-1-git-send-email-alexander.deucher@amd.com> 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: Eric Huang , Alex Deucher List-Id: dri-devel@lists.freedesktop.org RnJvbTogRXJpYyBIdWFuZyA8SmluSHVpRXJpYy5IdWFuZ0BhbWQuY29tPgoKVGhpcyBleHRlbmRz IGRwbSBjbG9jayBsZXZlbCBzZWxlY3Rpb24gdG8gdGhlIG5vbi1wb3dlcnBsYXkgY29kZSBwYXRo cy4KVGhpcyBpbnRlcmZhY2UgY2FuIGJlIHVzZWQgdG8gc2VsZWN0IGluZGl2aWR1YWwgY2xvY2sg bGV2ZWxzLgoKUmV2aWV3ZWQtYnk6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1k LmNvbT4KU2lnbmVkLW9mZi1ieTogRXJpYyBIdWFuZyA8SmluSHVpRXJpYy5IdWFuZ0BhbWQuY29t PgpTaWduZWQtb2ZmLWJ5OiBBbGV4IERldWNoZXIgPGFsZXhhbmRlci5kZXVjaGVyQGFtZC5jb20+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggICAgfCAgMiArKwogZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3BtLmMgfCA1MCArKysrKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDE4 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Ft ZGdwdS5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmgKaW5kZXggMzY3ZGJj NC4uNDliYTIzMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmgKQEAgLTE1NjAsNiAr MTU2MCw4IEBAIHN0cnVjdCBhbWRncHVfZHBtX2Z1bmNzIHsKIAl1MzIgKCpnZXRfZmFuX2NvbnRy b2xfbW9kZSkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwogCWludCAoKnNldF9mYW5fc3Bl ZWRfcGVyY2VudCkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHUzMiBzcGVlZCk7CiAJaW50 ICgqZ2V0X2Zhbl9zcGVlZF9wZXJjZW50KShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdTMy ICpzcGVlZCk7CisJaW50ICgqZm9yY2VfY2xvY2tfbGV2ZWwpKHN0cnVjdCBhbWRncHVfZGV2aWNl ICphZGV2LCBlbnVtIHBwX2Nsb2NrX3R5cGUgdHlwZSwgdWludDMyX3QgbWFzayk7CisJaW50ICgq cHJpbnRfY2xvY2tfbGV2ZWxzKShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgZW51bSBwcF9j bG9ja190eXBlIHR5cGUsIGNoYXIgKmJ1Zik7CiB9OwogCiBzdHJ1Y3QgYW1kZ3B1X2RwbSB7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcG0uYyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jCmluZGV4IGQyZTRhZTkuLjdiNzg4NTYg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9wbS5jCkBAIC0zNDksNiArMzQ5LDgg QEAgc3RhdGljIHNzaXplX3QgYW1kZ3B1X2dldF9wcF9kcG1fc2NsayhzdHJ1Y3QgZGV2aWNlICpk ZXYsCiAKIAlpZiAoYWRldi0+cHBfZW5hYmxlZCkKIAkJc2l6ZSA9IGFtZGdwdV9kcG1fcHJpbnRf Y2xvY2tfbGV2ZWxzKGFkZXYsIFBQX1NDTEssIGJ1Zik7CisJZWxzZSBpZiAoYWRldi0+cG0uZnVu Y3MtPnByaW50X2Nsb2NrX2xldmVscykKKwkJc2l6ZSA9IGFkZXYtPnBtLmZ1bmNzLT5wcmludF9j bG9ja19sZXZlbHMoYWRldiwgUFBfU0NMSywgYnVmKTsKIAogCXJldHVybiBzaXplOwogfQpAQCAt Mzc5LDYgKzM4MSw4IEBAIHN0YXRpYyBzc2l6ZV90IGFtZGdwdV9zZXRfcHBfZHBtX3NjbGsoc3Ry dWN0IGRldmljZSAqZGV2LAogCiAJaWYgKGFkZXYtPnBwX2VuYWJsZWQpCiAJCWFtZGdwdV9kcG1f Zm9yY2VfY2xvY2tfbGV2ZWwoYWRldiwgUFBfU0NMSywgbWFzayk7CisJZWxzZSBpZiAoYWRldi0+ cG0uZnVuY3MtPmZvcmNlX2Nsb2NrX2xldmVsKQorCQlhZGV2LT5wbS5mdW5jcy0+Zm9yY2VfY2xv Y2tfbGV2ZWwoYWRldiwgUFBfU0NMSywgbWFzayk7CiBmYWlsOgogCXJldHVybiBjb3VudDsKIH0K QEAgLTM5Myw2ICszOTcsOCBAQCBzdGF0aWMgc3NpemVfdCBhbWRncHVfZ2V0X3BwX2RwbV9tY2xr KHN0cnVjdCBkZXZpY2UgKmRldiwKIAogCWlmIChhZGV2LT5wcF9lbmFibGVkKQogCQlzaXplID0g YW1kZ3B1X2RwbV9wcmludF9jbG9ja19sZXZlbHMoYWRldiwgUFBfTUNMSywgYnVmKTsKKwllbHNl IGlmIChhZGV2LT5wbS5mdW5jcy0+cHJpbnRfY2xvY2tfbGV2ZWxzKQorCQlzaXplID0gYWRldi0+ cG0uZnVuY3MtPnByaW50X2Nsb2NrX2xldmVscyhhZGV2LCBQUF9NQ0xLLCBidWYpOwogCiAJcmV0 dXJuIHNpemU7CiB9CkBAIC00MjMsNiArNDI5LDggQEAgc3RhdGljIHNzaXplX3QgYW1kZ3B1X3Nl dF9wcF9kcG1fbWNsayhzdHJ1Y3QgZGV2aWNlICpkZXYsCiAKIAlpZiAoYWRldi0+cHBfZW5hYmxl ZCkKIAkJYW1kZ3B1X2RwbV9mb3JjZV9jbG9ja19sZXZlbChhZGV2LCBQUF9NQ0xLLCBtYXNrKTsK KwllbHNlIGlmIChhZGV2LT5wbS5mdW5jcy0+Zm9yY2VfY2xvY2tfbGV2ZWwpCisJCWFkZXYtPnBt LmZ1bmNzLT5mb3JjZV9jbG9ja19sZXZlbChhZGV2LCBQUF9NQ0xLLCBtYXNrKTsKIGZhaWw6CiAJ cmV0dXJuIGNvdW50OwogfQpAQCAtNDM3LDYgKzQ0NSw4IEBAIHN0YXRpYyBzc2l6ZV90IGFtZGdw dV9nZXRfcHBfZHBtX3BjaWUoc3RydWN0IGRldmljZSAqZGV2LAogCiAJaWYgKGFkZXYtPnBwX2Vu YWJsZWQpCiAJCXNpemUgPSBhbWRncHVfZHBtX3ByaW50X2Nsb2NrX2xldmVscyhhZGV2LCBQUF9Q Q0lFLCBidWYpOworCWVsc2UgaWYgKGFkZXYtPnBtLmZ1bmNzLT5wcmludF9jbG9ja19sZXZlbHMp CisJCXNpemUgPSBhZGV2LT5wbS5mdW5jcy0+cHJpbnRfY2xvY2tfbGV2ZWxzKGFkZXYsIFBQX1BD SUUsIGJ1Zik7CiAKIAlyZXR1cm4gc2l6ZTsKIH0KQEAgLTQ2Nyw2ICs0NzcsOCBAQCBzdGF0aWMg c3NpemVfdCBhbWRncHVfc2V0X3BwX2RwbV9wY2llKHN0cnVjdCBkZXZpY2UgKmRldiwKIAogCWlm IChhZGV2LT5wcF9lbmFibGVkKQogCQlhbWRncHVfZHBtX2ZvcmNlX2Nsb2NrX2xldmVsKGFkZXYs IFBQX1BDSUUsIG1hc2spOworCWVsc2UgaWYgKGFkZXYtPnBtLmZ1bmNzLT5mb3JjZV9jbG9ja19s ZXZlbCkKKwkJYWRldi0+cG0uZnVuY3MtPmZvcmNlX2Nsb2NrX2xldmVsKGFkZXYsIFBQX1BDSUUs IG1hc2spOwogZmFpbDoKIAlyZXR1cm4gY291bnQ7CiB9CkBAIC0xMTUzLDI3ICsxMTY1LDI5IEBA IGludCBhbWRncHVfcG1fc3lzZnNfaW5pdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIAkJ CURSTV9FUlJPUigiZmFpbGVkIHRvIGNyZWF0ZSBkZXZpY2UgZmlsZSBwcF90YWJsZVxuIik7CiAJ CQlyZXR1cm4gcmV0OwogCQl9Ci0JCXJldCA9IGRldmljZV9jcmVhdGVfZmlsZShhZGV2LT5kZXYs ICZkZXZfYXR0cl9wcF9kcG1fc2Nsayk7Ci0JCWlmIChyZXQpIHsKLQkJCURSTV9FUlJPUigiZmFp bGVkIHRvIGNyZWF0ZSBkZXZpY2UgZmlsZSBwcF9kcG1fc2Nsa1xuIik7Ci0JCQlyZXR1cm4gcmV0 OwotCQl9Ci0JCXJldCA9IGRldmljZV9jcmVhdGVfZmlsZShhZGV2LT5kZXYsICZkZXZfYXR0cl9w cF9kcG1fbWNsayk7Ci0JCWlmIChyZXQpIHsKLQkJCURSTV9FUlJPUigiZmFpbGVkIHRvIGNyZWF0 ZSBkZXZpY2UgZmlsZSBwcF9kcG1fbWNsa1xuIik7Ci0JCQlyZXR1cm4gcmV0OwotCQl9Ci0JCXJl dCA9IGRldmljZV9jcmVhdGVfZmlsZShhZGV2LT5kZXYsICZkZXZfYXR0cl9wcF9kcG1fcGNpZSk7 Ci0JCWlmIChyZXQpIHsKLQkJCURSTV9FUlJPUigiZmFpbGVkIHRvIGNyZWF0ZSBkZXZpY2UgZmls ZSBwcF9kcG1fcGNpZVxuIik7Ci0JCQlyZXR1cm4gcmV0OwotCQl9CiAJCXJldCA9IGRldmljZV9j cmVhdGVfZmlsZShhZGV2LT5kZXYsICZkZXZfYXR0cl9wcF9zY2xrX29kKTsKIAkJaWYgKHJldCkg ewogCQkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gY3JlYXRlIGRldmljZSBmaWxlIHBwX3NjbGtfb2Rc biIpOwogCQkJcmV0dXJuIHJldDsKIAkJfQogCX0KKworCXJldCA9IGRldmljZV9jcmVhdGVfZmls ZShhZGV2LT5kZXYsICZkZXZfYXR0cl9wcF9kcG1fc2Nsayk7CisJaWYgKHJldCkgeworCQlEUk1f RVJST1IoImZhaWxlZCB0byBjcmVhdGUgZGV2aWNlIGZpbGUgcHBfZHBtX3NjbGtcbiIpOworCQly ZXR1cm4gcmV0OworCX0KKwlyZXQgPSBkZXZpY2VfY3JlYXRlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2 X2F0dHJfcHBfZHBtX21jbGspOworCWlmIChyZXQpIHsKKwkJRFJNX0VSUk9SKCJmYWlsZWQgdG8g Y3JlYXRlIGRldmljZSBmaWxlIHBwX2RwbV9tY2xrXG4iKTsKKwkJcmV0dXJuIHJldDsKKwl9CisJ cmV0ID0gZGV2aWNlX2NyZWF0ZV9maWxlKGFkZXYtPmRldiwgJmRldl9hdHRyX3BwX2RwbV9wY2ll KTsKKwlpZiAocmV0KSB7CisJCURSTV9FUlJPUigiZmFpbGVkIHRvIGNyZWF0ZSBkZXZpY2UgZmls ZSBwcF9kcG1fcGNpZVxuIik7CisJCXJldHVybiByZXQ7CisJfQorCiAJcmV0ID0gYW1kZ3B1X2Rl YnVnZnNfcG1faW5pdChhZGV2KTsKIAlpZiAocmV0KSB7CiAJCURSTV9FUlJPUigiRmFpbGVkIHRv IHJlZ2lzdGVyIGRlYnVnZnMgZmlsZSBmb3IgZHBtIVxuIik7CkBAIC0xMTk2LDExICsxMjEwLDEx IEBAIHZvaWQgYW1kZ3B1X3BtX3N5c2ZzX2Zpbmkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYp CiAJCWRldmljZV9yZW1vdmVfZmlsZShhZGV2LT5kZXYsICZkZXZfYXR0cl9wcF9jdXJfc3RhdGUp OwogCQlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfcHBfZm9yY2Vfc3Rh dGUpOwogCQlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfcHBfdGFibGUp OwotCQlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfcHBfZHBtX3NjbGsp OwotCQlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfcHBfZHBtX21jbGsp OwotCQlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfcHBfZHBtX3BjaWUp OwogCQlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfcHBfc2Nsa19vZCk7 CiAJfQorCWRldmljZV9yZW1vdmVfZmlsZShhZGV2LT5kZXYsICZkZXZfYXR0cl9wcF9kcG1fc2Ns ayk7CisJZGV2aWNlX3JlbW92ZV9maWxlKGFkZXYtPmRldiwgJmRldl9hdHRyX3BwX2RwbV9tY2xr KTsKKwlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfcHBfZHBtX3BjaWUp OwogfQogCiB2b2lkIGFtZGdwdV9wbV9jb21wdXRlX2Nsb2NrcyhzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldikKLS0gCjIuNS41CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK