From mboxrd@z Thu Jan 1 00:00:00 1970 From: Karol Herbst Subject: [PATCH 4/9] clk: Hold information about the current cstate status Date: Sun, 5 Mar 2017 17:35:02 +0100 Message-ID: <20170305163507.2002-5-karolherbst@gmail.com> References: <20170305163507.2002-1-karolherbst@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170305163507.2002-1-karolherbst-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: nouveau.vger.kernel.org TGF0ZXIgd2Ugd2lsbCBoYXZlIHNpdHVhdGlvbnMgd2hlcmUgdGhlIGV4cGVjdGVkIGFuZCB0aGUg Y3VycmVudCBzdGF0ZQppc24ndCB0aGUgc2FtZS4KClNpZ25lZC1vZmYtYnk6IEthcm9sIEhlcmJz dCA8a2Fyb2xoZXJic3RAZ21haWwuY29tPgpSZXZpZXdlZC1ieTogTWFydGluIFBlcmVzIDxtYXJ0 aW4ucGVyZXNAZnJlZS5mcj4KLS0tCiBkcm0vbm91dmVhdS9pbmNsdWRlL252a20vc3ViZGV2L2Ns ay5oIHwgIDIgKysKIGRybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9iYXNlLmMgICAgfCAzMiAr KysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAyNyBpbnNl cnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RybS9ub3V2ZWF1L2luY2x1 ZGUvbnZrbS9zdWJkZXYvY2xrLmggYi9kcm0vbm91dmVhdS9pbmNsdWRlL252a20vc3ViZGV2L2Ns ay5oCmluZGV4IDM3MjYzYjdmLi4wZTBhZjcwNCAxMDA2NDQKLS0tIGEvZHJtL25vdXZlYXUvaW5j bHVkZS9udmttL3N1YmRldi9jbGsuaAorKysgYi9kcm0vbm91dmVhdS9pbmNsdWRlL252a20vc3Vi ZGV2L2Nsay5oCkBAIC0xMDEsNiArMTAxLDggQEAgc3RydWN0IG52a21fY2xrIHsKIAlpbnQgdXN0 YXRlX2FjOyAvKiB1c2VyLXJlcXVlc3RlZCAoLTEgZGlzYWJsZWQsIC0yIHBlcmZtb24pICovCiAJ aW50IHVzdGF0ZV9kYzsgLyogdXNlci1yZXF1ZXN0ZWQgKC0xIGRpc2FibGVkLCAtMiBwZXJmbW9u KSAqLwogCWludCBhc3RhdGU7IC8qIHBlcmZtb24gYWRqdXN0bWVudCAoYmFzZSkgKi8KKwlzdHJ1 Y3QgbnZrbV9jc3RhdGUgKmNzdGF0ZTsKKwlpbnQgZXhwX2NzdGF0ZWlkOwogCXU4ICB0ZW1wOwog CiAJYm9vbCBhbGxvd19yZWNsb2NrOwpkaWZmIC0tZ2l0IGEvZHJtL25vdXZlYXUvbnZrbS9zdWJk ZXYvY2xrL2Jhc2UuYyBiL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9iYXNlLmMKaW5kZXgg MGQ0ZDlmZGYuLmQzN2MxM2I3IDEwMDY0NAotLS0gYS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9j bGsvYmFzZS5jCisrKyBiL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9iYXNlLmMKQEAgLTE0 Niw5ICsxNDYsMTQgQEAgc3RhdGljIHN0cnVjdCBudmttX2NzdGF0ZSAqCiBudmttX2NzdGF0ZV9n ZXQoc3RydWN0IG52a21fY2xrICpjbGssIHN0cnVjdCBudmttX3BzdGF0ZSAqcHN0YXRlLCBpbnQg Y3N0YXRlaSkKIHsKIAlzdHJ1Y3QgbnZrbV9jc3RhdGUgKmNzdGF0ZTsKLQlpZiAoY3N0YXRlaSA9 PSBOVktNX0NMS19DU1RBVEVfSElHSEVTVCkKKwlzd2l0Y2ggKGNzdGF0ZWkpIHsKKwljYXNlIE5W S01fQ0xLX0NTVEFURV9ISUdIRVNUOgogCQlyZXR1cm4gbGlzdF9sYXN0X2VudHJ5KCZwc3RhdGUt Pmxpc3QsIHR5cGVvZigqY3N0YXRlKSwgaGVhZCk7Ci0JZWxzZSB7CisJY2FzZSBOVktNX0NMS19D U1RBVEVfQkFTRToKKwkJcmV0dXJuICZwc3RhdGUtPmJhc2U7CisJY2FzZSBOVktNX0NMS19DU1RB VEVfREVGQVVMVDoKKwkJcmV0dXJuIE5VTEw7CisJZGVmYXVsdDoKIAkJbGlzdF9mb3JfZWFjaF9l bnRyeShjc3RhdGUsICZwc3RhdGUtPmxpc3QsIGhlYWQpIHsKIAkJCWlmIChjc3RhdGUtPmlkID09 IGNzdGF0ZWkpCiAJCQkJcmV0dXJuIGNzdGF0ZTsKQEAgLTE2Nyw2ICsxNzIsOSBAQCBudmttX2Nz dGF0ZV9wcm9nKHN0cnVjdCBudmttX2NsayAqY2xrLCBzdHJ1Y3QgbnZrbV9wc3RhdGUgKnBzdGF0 ZSwgaW50IGNzdGF0ZWkpCiAJc3RydWN0IG52a21fY3N0YXRlICpjc3RhdGU7CiAJaW50IHJldDsK IAorCWlmIChjc3RhdGVpID09IE5WS01fQ0xLX0NTVEFURV9ERUZBVUxUKQorCQlyZXR1cm4gMDsK KwogCWlmICghbGlzdF9lbXB0eSgmcHN0YXRlLT5saXN0KSkgewogCQljc3RhdGUgPSBudmttX2Nz dGF0ZV9nZXQoY2xrLCBwc3RhdGUsIGNzdGF0ZWkpOwogCQljc3RhdGUgPSBudmttX2NzdGF0ZV9m aW5kX2Jlc3QoY2xrLCBwc3RhdGUsIGNzdGF0ZSk7CkBAIC0xOTMsNiArMjAxLDcgQEAgbnZrbV9j c3RhdGVfcHJvZyhzdHJ1Y3QgbnZrbV9jbGsgKmNsaywgc3RydWN0IG52a21fcHN0YXRlICpwc3Rh dGUsIGludCBjc3RhdGVpKQogCiAJcmV0ID0gY2xrLT5mdW5jLT5jYWxjKGNsaywgY3N0YXRlKTsK IAlpZiAocmV0ID09IDApIHsKKwkJY2xrLT5jc3RhdGUgPSBjc3RhdGU7CiAJCXJldCA9IGNsay0+ ZnVuYy0+cHJvZyhjbGspOwogCQljbGstPmZ1bmMtPnRpZHkoY2xrKTsKIAl9CkBAIC0yOTUsNyAr MzA0LDcgQEAgbnZrbV9wc3RhdGVfcHJvZyhzdHJ1Y3QgbnZrbV9jbGsgKmNsaywgaW50IHBzdGF0 ZWkpCiAJCXJhbS0+ZnVuYy0+dGlkeShyYW0pOwogCX0KIAotCXJldHVybiBudmttX2NzdGF0ZV9w cm9nKGNsaywgcHN0YXRlLCBOVktNX0NMS19DU1RBVEVfSElHSEVTVCk7CisJcmV0dXJuIG52a21f Y3N0YXRlX3Byb2coY2xrLCBwc3RhdGUsIGNsay0+ZXhwX2NzdGF0ZWlkKTsKIH0KIAogc3RhdGlj IHZvaWQKQEAgLTMxMyw5ICszMjIsOSBAQCBudmttX2Nsa191cGRhdGVfd29yayhzdHJ1Y3Qgd29y a19zdHJ1Y3QgKndvcmspCiAJCXBzdGF0ZSA9IGNsay0+cHN0YXRlLT5wc3RhdGU7CiAJZWxzZQog CQlwc3RhdGUgPSBOVktNX0NMS19QU1RBVEVfREVGQVVMVDsKLQludmttX3RyYWNlKHN1YmRldiwg IlAgJWQgUFdSICVkIFUoQUMpICVkIFUoREMpICVkIEEgJWQgVCAlZMKwQ1xuIiwKKwludmttX3Ry YWNlKHN1YmRldiwgIlAgJWQgUFdSICVkIFUoQUMpICVkIFUoREMpICVkIEEgJWQgQyAlZCBUICVk wrBDXG4iLAogCQkgICBwc3RhdGUsIGNsay0+cHdyc3JjLCBjbGstPnVzdGF0ZV9hYywgY2xrLT51 c3RhdGVfZGMsCi0JCSAgIGNsay0+YXN0YXRlLCBjbGstPnRlbXApOworCQkgICBjbGstPmFzdGF0 ZSwgY2xrLT5leHBfY3N0YXRlaWQsIGNsay0+dGVtcCk7CiAKIAlwc3RhdGUgPSBjbGstPnB3cnNy YyA/IGNsay0+dXN0YXRlX2FjIDogY2xrLT51c3RhdGVfZGM7CiAJaWYgKGNsay0+c3RhdGVfbnIg JiYgcHN0YXRlICE9IC0xKSB7CkBAIC01MzYsNiArNTQ1LDcgQEAgbnZrbV9jbGtfdXN0YXRlKHN0 cnVjdCBudmttX2NsayAqY2xrLCBpbnQgcmVxLCBpbnQgcHdyKQogCWlmIChyZXQgPj0gMCkgewog CQlpZiAocmV0IC09IDIsIHB3cikgY2xrLT51c3RhdGVfYWMgPSByZXQ7CiAJCWVsc2UJCSAgIGNs ay0+dXN0YXRlX2RjID0gcmV0OworCQljbGstPmV4cF9jc3RhdGVpZCA9IE5WS01fQ0xLX0NTVEFU RV9ISUdIRVNUOwogCQlyZXR1cm4gbnZrbV9jbGtfdXBkYXRlKGNsaywgdHJ1ZSk7CiAJfQogCXJl dHVybiByZXQ7CkBAIC01NDgsNiArNTU4LDcgQEAgbnZrbV9jbGtfYXN0YXRlKHN0cnVjdCBudmtt X2NsayAqY2xrLCBpbnQgcmVxLCBpbnQgcmVsLCBib29sIHdhaXQpCiAJaWYgKCByZWwpIGNsay0+ YXN0YXRlICs9IHJlbDsKIAljbGstPmFzdGF0ZSA9IG1pbihjbGstPmFzdGF0ZSwgY2xrLT5zdGF0 ZV9uciAtIDEpOwogCWNsay0+YXN0YXRlID0gbWF4KGNsay0+YXN0YXRlLCAwKTsKKwljbGstPmV4 cF9jc3RhdGVpZCA9IE5WS01fQ0xLX0NTVEFURV9CQVNFOwogCXJldHVybiBudmttX2Nsa191cGRh dGUoY2xrLCB3YWl0KTsKIH0KIApAQCAtNjE4LDYgKzYyOSw4IEBAIG52a21fY2xrX2luaXQoc3Ry dWN0IG52a21fc3ViZGV2ICpzdWJkZXYpCiAKIAljbGstPmFzdGF0ZSA9IGNsay0+c3RhdGVfbnIg LSAxOwogCWNsay0+cHN0YXRlID0gTlVMTDsKKwljbGstPmV4cF9jc3RhdGVpZCA9IE5WS01fQ0xL X0NTVEFURV9ERUZBVUxUOworCWNsay0+Y3N0YXRlID0gTlVMTDsKIAljbGstPnRlbXAgPSA5MDsg LyogcmVhc29uYWJsZSBkZWZhdWx0IHZhbHVlICovCiAJbnZrbV9jbGtfdXBkYXRlKGNsaywgdHJ1 ZSk7CiAJcmV0dXJuIDA7CkBAIC03MDEsMTUgKzcxNCwyMCBAQCBudmttX2Nsa19jdG9yKGNvbnN0 IHN0cnVjdCBudmttX2Nsa19mdW5jICpmdW5jLCBzdHJ1Y3QgbnZrbV9kZXZpY2UgKmRldmljZSwK IAlpZiAobW9kZSkgewogCQljbGstPnVzdGF0ZV9hYyA9IG52a21fY2xrX25zdGF0ZShjbGssIG1v ZGUsIGFyZ2xlbik7CiAJCWNsay0+dXN0YXRlX2RjID0gbnZrbV9jbGtfbnN0YXRlKGNsaywgbW9k ZSwgYXJnbGVuKTsKKwkJY2xrLT5leHBfY3N0YXRlaWQgPSBOVktNX0NMS19DU1RBVEVfSElHSEVT VDsKIAl9CiAKIAltb2RlID0gbnZrbV9zdHJvcHQoZGV2aWNlLT5jZmdvcHQsICJOdkNsa01vZGVB QyIsICZhcmdsZW4pOwotCWlmIChtb2RlKQorCWlmIChtb2RlKSB7CiAJCWNsay0+dXN0YXRlX2Fj ID0gbnZrbV9jbGtfbnN0YXRlKGNsaywgbW9kZSwgYXJnbGVuKTsKKwkJY2xrLT5leHBfY3N0YXRl aWQgPSBOVktNX0NMS19DU1RBVEVfSElHSEVTVDsKKwl9CiAKIAltb2RlID0gbnZrbV9zdHJvcHQo ZGV2aWNlLT5jZmdvcHQsICJOdkNsa01vZGVEQyIsICZhcmdsZW4pOwotCWlmIChtb2RlKQorCWlm IChtb2RlKSB7CiAJCWNsay0+dXN0YXRlX2RjID0gbnZrbV9jbGtfbnN0YXRlKGNsaywgbW9kZSwg YXJnbGVuKTsKKwkJY2xrLT5leHBfY3N0YXRlaWQgPSBOVktNX0NMS19DU1RBVEVfSElHSEVTVDsK Kwl9CiAKIAljbGstPmJvb3N0X21vZGUgPSBudmttX2xvbmdvcHQoZGV2aWNlLT5jZmdvcHQsICJO dkJvb3N0IiwKIAkJCQkgICAgICAgTlZLTV9DTEtfQk9PU1RfTk9ORSk7Ci0tIAoyLjEyLjAKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5vdXZlYXUgbWFp bGluZyBsaXN0Ck5vdXZlYXVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vbm91dmVhdQo=