From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Deucher Subject: [PATCH 83/88] drm/amdgpu: enable uvd dpm and powergating Date: Tue, 26 May 2015 23:20:22 -0400 Message-ID: <1432696827-3752-53-git-send-email-alexander.deucher@amd.com> References: <1432696827-3752-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-qc0-f177.google.com (mail-qc0-f177.google.com [209.85.216.177]) by gabe.freedesktop.org (Postfix) with ESMTP id B86886E8E5 for ; Tue, 26 May 2015 20:21:06 -0700 (PDT) Received: by qcmi9 with SMTP id i9so9083732qcm.0 for ; Tue, 26 May 2015 20:21:06 -0700 (PDT) In-Reply-To: <1432696827-3752-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: Sonny Jiang List-Id: dri-devel@lists.freedesktop.org RnJvbTogU29ubnkgSmlhbmcgPHNvbm55LmppYW5nQGFtZC5jb20+CgpFbmFibGUgVVZEIGRwbSAo ZHluYW1pYyBwb3dlciBtYW5hZ2VtZW50KSBhbmQgcG93ZXJnYXRpbmcuICBVVkQgZHBtIGR5bmFt aWNhbGx5IHNjYWxlcyB0aGUgVVZECmNsb2NrcyBvbiBkZW1hbmQuICBQb3dlcmdhdGluZyB0dXJu cyBvZmYgdGhlIHBvd2VyIHRvIHRoZSBibG9jayB3aGVuIGl0J3Mgbm90IGluIHVzZS4KClNpZ25l ZC1vZmYtYnk6IFNvbm55IEppYW5nIDxzb25ueS5qaWFuZ0BhbWQuY29tPgpBY2tlZC1ieTogQ2hy aXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgpSZXZpZXdlZC1ieTogQWxl eCBEZXVjaGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2N6X2RwbS5jIHwgOTAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvY3pfZHBtLmggfCAgMiArCiBkcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS92aS5jICAgICB8ICAyICstCiAzIGZpbGVzIGNoYW5nZWQs IDkxIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvY3pfZHBtLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9j el9kcG0uYwppbmRleCBhZGY0ZGJjLi4yNjQ5YjUwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9jel9kcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9j el9kcG0uYwpAQCAtNDIsNiArNDIsOCBAQAogI2luY2x1ZGUgImJpZi9iaWZfNV8xX2QuaCIKICNp bmNsdWRlICJnZnhfdjhfMC5oIgogCitzdGF0aWMgdm9pZCBjel9kcG1fcG93ZXJnYXRlX3V2ZChz dHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgYm9vbCBnYXRlKTsKKwogc3RhdGljIHN0cnVjdCBj el9wcyAqY3pfZ2V0X3BzKHN0cnVjdCBhbWRncHVfcHMgKnJwcykKIHsKIAlzdHJ1Y3QgY3pfcHMg KnBzID0gcnBzLT5wc19wcml2OwpAQCAtNDc0LDYgKzQ3Niw3IEBAIHN0YXRpYyBpbnQgY3pfZHBt X2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCiAJCXJldHVybiByZXQ7CiAKIAlwaS0+ ZHBtX2VuYWJsZWQgPSB0cnVlOworCXBpLT51dmRfZHluYW1pY19wZyA9IGZhbHNlOwogCiAJcmV0 dXJuIDA7CiB9CkBAIC01NDYsNiArNTQ5LDE1IEBAIHN0YXRpYyBpbnQgY3pfZHBtX2Vhcmx5X2lu aXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCiAJcmV0dXJuIDA7CiB9CiAKKworc3RhdGlj IGludCBjel9kcG1fbGF0ZV9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQoreworCS8q IHBvd2VyZG93biB1bnVzZWQgYmxvY2tzIGZvciBub3cgKi8KKwljel9kcG1fcG93ZXJnYXRlX3V2 ZChhZGV2LCB0cnVlKTsKKworCXJldHVybiAwOworfQorCiBzdGF0aWMgaW50IGN6X2RwbV9zd19p bml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogewogCWludCByZXQgPSAwOwpAQCAtMTI2 MCw2ICsxMjcyLDkgQEAgc3RhdGljIGludCBjel9kcG1fZGlzYWJsZShzdHJ1Y3QgYW1kZ3B1X2Rl dmljZSAqYWRldikKIAkJcmV0dXJuIC1FSU5WQUw7CiAJfQogCisJLyogcG93ZXJ1cCBibG9ja3Mg Ki8KKwljel9kcG1fcG93ZXJnYXRlX3V2ZChhZGV2LCBmYWxzZSk7CisKIAljel9jbGVhcl92b3Rp bmdfY2xpZW50cyhhZGV2KTsKIAljel9zdG9wX2RwbShhZGV2KTsKIAljel91cGRhdGVfY3VycmVu dF9wcyhhZGV2LCBhZGV2LT5wbS5kcG0uYm9vdF9wcyk7CkBAIC0xNjc3LDkgKzE2OTIsODAgQEAg c3RhdGljIHVpbnQzMl90IGN6X2RwbV9nZXRfbWNsayhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRl diwgYm9vbCBsb3cpCiAJcmV0dXJuIHBpLT5zeXNfaW5mby5ib290dXBfdW1hX2NsazsKIH0KIAor c3RhdGljIGludCBjel9lbmFibGVfdXZkX2RwbShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwg Ym9vbCBlbmFibGUpCit7CisJc3RydWN0IGN6X3Bvd2VyX2luZm8gKnBpID0gY3pfZ2V0X3BpKGFk ZXYpOworCWludCByZXQgPSAwOworCisJaWYgKGVuYWJsZSAmJiBwaS0+Y2Fwc191dmRfZHBtICkg eworCQlwaS0+ZHBtX2ZsYWdzIHw9IERQTUZsYWdzX1VWRF9FbmFibGVkOworCQlEUk1fREVCVUco IlVWRCBEUE0gRW5hYmxlZC5cbiIpOworCisJCXJldCA9IGN6X3NlbmRfbXNnX3RvX3NtY193aXRo X3BhcmFtZXRlcihhZGV2LAorCQkJUFBTTUNfTVNHX0VuYWJsZUFsbFNtdUZlYXR1cmVzLCBVVkRf RFBNX01BU0spOworCX0gZWxzZSB7CisJCXBpLT5kcG1fZmxhZ3MgJj0gfkRQTUZsYWdzX1VWRF9F bmFibGVkOworCQlEUk1fREVCVUcoIlVWRCBEUE0gU3RvcHBlZFxuIik7CisKKwkJcmV0ID0gY3pf c2VuZF9tc2dfdG9fc21jX3dpdGhfcGFyYW1ldGVyKGFkZXYsCisJCQlQUFNNQ19NU0dfRGlzYWJs ZUFsbFNtdUZlYXR1cmVzLCBVVkRfRFBNX01BU0spOworCX0KKworCXJldHVybiByZXQ7Cit9CisK K3N0YXRpYyBpbnQgY3pfdXBkYXRlX3V2ZF9kcG0oc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYs IGJvb2wgZ2F0ZSkKK3sKKwlyZXR1cm4gY3pfZW5hYmxlX3V2ZF9kcG0oYWRldiwgIWdhdGUpOwor fQorCisKK3N0YXRpYyB2b2lkIGN6X2RwbV9wb3dlcmdhdGVfdXZkKHN0cnVjdCBhbWRncHVfZGV2 aWNlICphZGV2LCBib29sIGdhdGUpCit7CisJc3RydWN0IGN6X3Bvd2VyX2luZm8gKnBpID0gY3pf Z2V0X3BpKGFkZXYpOworCWludCByZXQ7CisKKwlpZiAocGktPnV2ZF9wb3dlcl9nYXRlZCA9PSBn YXRlKQorCQlyZXR1cm47CisKKwlwaS0+dXZkX3Bvd2VyX2dhdGVkID0gZ2F0ZTsKKworCWlmIChn YXRlKSB7CisJCWlmIChwaS0+Y2Fwc191dmRfcGcpIHsKKwkJCS8qIGRpc2FibGUgY2xvY2tnYXRp bmcgc28gd2UgY2FuIHByb3Blcmx5IHNodXQgZG93biB0aGUgYmxvY2sgKi8KKwkJCXJldCA9IGFt ZGdwdV9zZXRfY2xvY2tnYXRpbmdfc3RhdGUoYWRldiwgQU1ER1BVX0lQX0JMT0NLX1RZUEVfVVZE LAorCQkJCQkJCSAgICBBTURHUFVfQ0dfU1RBVEVfVU5HQVRFKTsKKwkJCS8qIHNodXRkb3duIHRo ZSBVVkQgYmxvY2sgKi8KKwkJCXJldCA9IGFtZGdwdV9zZXRfcG93ZXJnYXRpbmdfc3RhdGUoYWRl diwgQU1ER1BVX0lQX0JMT0NLX1RZUEVfVVZELAorCQkJCQkJCSAgICBBTURHUFVfUEdfU1RBVEVf R0FURSk7CisJCQkvKiBYWFg6IGNoZWNrIGZvciBlcnJvcnMgKi8KKwkJfQorCQljel91cGRhdGVf dXZkX2RwbShhZGV2LCBnYXRlKTsKKwkJaWYgKHBpLT5jYXBzX3V2ZF9wZykKKwkJCS8qIHBvd2Vy IG9mZiB0aGUgVVZEIGJsb2NrICovCisJCQljel9zZW5kX21zZ190b19zbWMoYWRldiwgUFBTTUNf TVNHX1VWRFBvd2VyT0ZGKTsKKwl9IGVsc2UgeworCQlpZiAocGktPmNhcHNfdXZkX3BnKSB7CisJ CQkvKiBwb3dlciBvbiB0aGUgVVZEIGJsb2NrICovCisJCQlpZiAocGktPnV2ZF9keW5hbWljX3Bn KQorCQkJCWN6X3NlbmRfbXNnX3RvX3NtY193aXRoX3BhcmFtZXRlcihhZGV2LCBQUFNNQ19NU0df VVZEUG93ZXJPTiwgMSk7CisJCQllbHNlCisJCQkJY3pfc2VuZF9tc2dfdG9fc21jX3dpdGhfcGFy YW1ldGVyKGFkZXYsIFBQU01DX01TR19VVkRQb3dlck9OLCAwKTsKKwkJCS8qIHJlLWluaXQgdGhl IFVWRCBibG9jayAqLworCQkJcmV0ID0gYW1kZ3B1X3NldF9wb3dlcmdhdGluZ19zdGF0ZShhZGV2 LCBBTURHUFVfSVBfQkxPQ0tfVFlQRV9VVkQsCisJCQkJCQkJICAgIEFNREdQVV9QR19TVEFURV9V TkdBVEUpOworCQkJLyogZW5hYmxlIGNsb2NrZ2F0aW5nLiBodyB3aWxsIGR5bmFtaWNhbGx5IGdh dGUvdW5nYXRlIGNsb2NrcyBvbiB0aGUgZmx5ICovCisJCQlyZXQgPSBhbWRncHVfc2V0X2Nsb2Nr Z2F0aW5nX3N0YXRlKGFkZXYsIEFNREdQVV9JUF9CTE9DS19UWVBFX1VWRCwKKwkJCQkJCQkgICAg QU1ER1BVX0NHX1NUQVRFX0dBVEUpOworCQkJLyogWFhYOiBjaGVjayBmb3IgZXJyb3JzICovCisJ CX0KKwkJY3pfdXBkYXRlX3V2ZF9kcG0oYWRldiwgZ2F0ZSk7CisJfQorfQorCiBjb25zdCBzdHJ1 Y3QgYW1kZ3B1X2lwX2Z1bmNzIGN6X2RwbV9pcF9mdW5jcyA9IHsKIAkuZWFybHlfaW5pdCA9IGN6 X2RwbV9lYXJseV9pbml0LAotCS5sYXRlX2luaXQgPSBOVUxMLAorCS5sYXRlX2luaXQgPSBjel9k cG1fbGF0ZV9pbml0LAogCS5zd19pbml0ID0gY3pfZHBtX3N3X2luaXQsCiAJLnN3X2ZpbmkgPSBj el9kcG1fc3dfZmluaSwKIAkuaHdfaW5pdCA9IGN6X2RwbV9od19pbml0LApAQCAtMTcwNyw3ICsx NzkzLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhbWRncHVfZHBtX2Z1bmNzIGN6X2RwbV9mdW5j cyA9IHsKIAkJCQljel9kcG1fZGVidWdmc19wcmludF9jdXJyZW50X3BlcmZvcm1hbmNlX2xldmVs LAogCS5mb3JjZV9wZXJmb3JtYW5jZV9sZXZlbCA9IGN6X2RwbV9mb3JjZV9kcG1fbGV2ZWwsCiAJ LnZibGFua190b29fc2hvcnQgPSBOVUxMLAotCS5wb3dlcmdhdGVfdXZkID0gTlVMTCwKKwkucG93 ZXJnYXRlX3V2ZCA9IGN6X2RwbV9wb3dlcmdhdGVfdXZkLAogfTsKIAogc3RhdGljIHZvaWQgY3pf ZHBtX3NldF9mdW5jcyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2N6X2RwbS5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvY3pfZHBtLmgKaW5kZXggZWQ2NDQ5ZC4uNzgyYTc0MSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvY3pfZHBtLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvY3pfZHBtLmgKQEAgLTIyMSw2ICsyMjEsOCBAQCBzdHJ1Y3QgY3pfcG93ZXJfaW5mbyB7 CiAJYm9vbCB1dmRfcG93ZXJfZG93bjsKIAlib29sIHZjZV9wb3dlcl9kb3duOwogCWJvb2wgYWNw X3Bvd2VyX2Rvd247CisKKwlib29sIHV2ZF9keW5hbWljX3BnOwogfTsKIAogLyogY3pfc21jLmMg Ki8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3ZpLmMgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS92aS5jCmluZGV4IDIwYTE1OTguLjU5YTA3M2EgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3ZpLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvdmkuYwpAQCAtMTI2Niw3ICsxMjY2LDcgQEAgc3RhdGljIGludCB2aV9jb21t b25fZWFybHlfaW5pdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIAljYXNlIENISVBfQ0FS UklaTzoKIAkJYWRldi0+aGFzX3V2ZCA9IHRydWU7CiAJCWFkZXYtPmNnX2ZsYWdzID0gMDsKLQkJ YWRldi0+cGdfZmxhZ3MgPSAwOworCQlhZGV2LT5wZ19mbGFncyA9IEFNREdQVV9QR19TVVBQT1JU X1VWRDsKIAkJYWRldi0+ZXh0ZXJuYWxfcmV2X2lkID0gYWRldi0+cmV2X2lkICsgMHgxOwogCQlp ZiAoYW1kZ3B1X3NtY19sb2FkX2Z3ICYmIHNtY19lbmFibGVkKQogCQkJYWRldi0+ZmlybXdhcmUu c211X2xvYWQgPSB0cnVlOwotLSAKMS44LjMuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9kcmktZGV2ZWwK