From mboxrd@z Thu Jan 1 00:00:00 1970 From: Martin Peres Subject: Re: [PATCH v4 13/37] clk: respect voltage limits in nvkm_cstate_prog Date: Wed, 20 Apr 2016 00:04:30 +0300 Message-ID: <57169D5E.10902@free.fr> References: <1461006851-5007-1-git-send-email-nouveau@karolherbst.de> <1461006851-5007-14-git-send-email-nouveau@karolherbst.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1461006851-5007-14-git-send-email-nouveau-lIBOoy2+GI7scQ4cX5LuPg@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Karol Herbst , nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: nouveau.vger.kernel.org T24gMTgvMDQvMTYgMjI6MTMsIEthcm9sIEhlcmJzdCB3cm90ZToKPiB3ZSBzaG91bGQgbmV2ZXIg YWxsb3cgdG8gc2VsZWN0IGEgY3N0YXRlIHdoaWNoIGN1cnJlbnQgdm9sdGFnZSAoZGVwZW5kaW5n IG9uCj4gdGhlIHRlbXBlcmF0dXJlKSBpcyBoaWdoZXIgdGhhbgo+Cj4gMS4gdGhlIG1heCB2b2x0 IGVudHJpZXMgaW4gdGhlIHZvbHRhZ2UgbWFwIHRhYmxlCj4gMi4gd2hhdCB0aGEgZ3B1IGFjdHVh bGx5IGNhbiB2b2x0IHRvLgo+Cj4gdGhpcyByZXNvbHZlcyBhbGwgcmVtYWluaW5nIHZvbHRpbmcg ZXJyb3JzIG9uIGZlcm1pIGFuZCBuZXdlci4KPgo+IHYzOiB1c2UgZmluZF9iZXN0IGZvciBhbGwg Y3N0YXRlcyBiZWZvcmUgYWN0dWFsbHkgdHJ5aW5nCj4gICAgICBhZGQgbnZrbV9jc3RhdGVfZ2V0 IGZ1bmN0aW9uIHRvIGdldCBjc3RhdGUgYnkgaW5kZXgKPgo+IFNpZ25lZC1vZmYtYnk6IEthcm9s IEhlcmJzdCA8bm91dmVhdUBrYXJvbGhlcmJzdC5kZT4KPiAtLS0KPiAgIGRybS9ub3V2ZWF1L252 a20vc3ViZGV2L2Nsay9iYXNlLmMgfCA4MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KystLS0tLQo+ICAgMSBmaWxlIGNoYW5nZWQsIDc0IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25z KC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvY2xrL2Jhc2UuYyBi L2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9iYXNlLmMKPiBpbmRleCBmZWNmNThmLi4yMWY2 MzY5IDEwMDY0NAo+IC0tLSBhL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9iYXNlLmMKPiAr KysgYi9kcm0vbm91dmVhdS9udmttL3N1YmRldi9jbGsvYmFzZS5jCj4gQEAgLTc0LDYgKzc0LDc4 IEBAIG52a21fY2xrX2FkanVzdChzdHJ1Y3QgbnZrbV9jbGsgKmNsaywgYm9vbCBhZGp1c3QsCj4g ICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqCj4gICAgKiBDLVN0YXRlcwo+ICAgICoqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqLwo+ICtzdGF0aWMgYm9vbAo+ICtudmttX2NzdGF0ZV92YWxpZChzdHJ1Y3QgbnZr bV9jbGsgKmNsaywgc3RydWN0IG52a21fY3N0YXRlICpjc3RhdGUsIHUzMiBtYXhfdm9sdCwgaW50 IHRlbXApCj4gK3sKPiArCXN0cnVjdCBudmttX3ZvbHQgKnZvbHQgPSBjbGstPnN1YmRldi5kZXZp Y2UtPnZvbHQ7Cj4gKwlpbnQgdm9sdGFnZTsKPiArCj4gKwlpZiAoIXZvbHQpCj4gKwkJcmV0dXJu IHRydWU7Cj4gKwo+ICsJdm9sdGFnZSA9IG52a21fdm9sdF9tYXAodm9sdCwgY3N0YXRlLT52b2x0 YWdlLCB0ZW1wKTsKPiArCWlmICh2b2x0YWdlIDwgMCkKPiArCQlyZXR1cm4gZmFsc2U7Cj4gKwly ZXR1cm4gdm9sdGFnZSA8PSBtaW4obWF4X3ZvbHQsIHZvbHQtPm1heF91dikgJiYKPiArCSAgICAg ICB2b2x0YWdlID49IHZvbHQtPm1pbl91djsKPiArfQo+ICsKPiArc3RhdGljIHN0cnVjdCBudmtt X2NzdGF0ZSAqCj4gK252a21fY3N0YXRlX2ZpbmRfYmVzdChzdHJ1Y3QgbnZrbV9jbGsgKmNsaywg c3RydWN0IG52a21fcHN0YXRlICpwc3RhdGUsCj4gKwkJICAgICAgc3RydWN0IG52a21fY3N0YXRl ICpzdGFydCkKPiArewo+ICsJc3RydWN0IG52a21fZGV2aWNlICpkZXZpY2UgPSBjbGstPnN1YmRl di5kZXZpY2U7Cj4gKwlzdHJ1Y3QgbnZrbV90aGVybSAqdGhlcm0gPSBkZXZpY2UtPnRoZXJtOwo+ ICsJc3RydWN0IG52a21fdm9sdCAqdm9sdCA9IGRldmljZS0+dm9sdDsKPiArCXN0cnVjdCBudmtt X2NzdGF0ZSAqY3N0YXRlOwo+ICsJaW50IG1heF92b2x0LCB0ZW1wID0gMDsKPiArCj4gKwlpZiAo IXBzdGF0ZSB8fCAhc3RhcnQpCj4gKwkJcmV0dXJuIE5VTEw7Cj4gKwo+ICsJaWYgKCF2b2x0KQo+ ICsJCXJldHVybiBzdGFydDsKPiArCj4gKwlpZiAodGhlcm0pIHsKPiArCQkvKiBpZ25vcmUgZXJy b3IgY29kZSAqLwo+ICsJCXRlbXAgPSBtYXgoMCwgbnZrbV90aGVybV90ZW1wX2dldCh0aGVybSkp Owo+ICsJfQo+ICsKPiArCW1heF92b2x0ID0gdm9sdC0+bWF4X3V2Owo+ICsJaWYgKHZvbHQtPm1h eDBfaWQgIT0gMHhmZikKPiArCQltYXhfdm9sdCA9IG1pbihtYXhfdm9sdCwKPiArCQkJICAgICAg IG52a21fdm9sdF9tYXAodm9sdCwgdm9sdC0+bWF4MF9pZCwgdGVtcCkpOwo+ICsJaWYgKHZvbHQt Pm1heDFfaWQgIT0gMHhmZikKPiArCQltYXhfdm9sdCA9IG1pbihtYXhfdm9sdCwKPiArCQkJICAg ICAgIG52a21fdm9sdF9tYXAodm9sdCwgdm9sdC0+bWF4MV9pZCwgdGVtcCkpOwo+ICsJaWYgKHZv bHQtPm1heDJfaWQgIT0gMHhmZikKPiArCQltYXhfdm9sdCA9IG1pbihtYXhfdm9sdCwKPiArCQkJ ICAgICAgIG52a21fdm9sdF9tYXAodm9sdCwgdm9sdC0+bWF4Ml9pZCwgdGVtcCkpOwo+ICsKPiAr CWZvciAoY3N0YXRlID0gc3RhcnQ7ICZjc3RhdGUtPmhlYWQgIT0gJnBzdGF0ZS0+bGlzdDsKPiAr CSAgICAgY3N0YXRlID0gbGlzdF9lbnRyeShjc3RhdGUtPmhlYWQucHJldiwgdHlwZW9mKCpjc3Rh dGUpLCBoZWFkKSkgewo+ICsJCWlmIChudmttX2NzdGF0ZV92YWxpZChjbGssIGNzdGF0ZSwgbWF4 X3ZvbHQsIHRlbXApKQo+ICsJCQlicmVhazsKPiArCX0KPiArCj4gKwlyZXR1cm4gY3N0YXRlOwo+ ICt9Cj4gKwo+ICtzdGF0aWMgc3RydWN0IG52a21fY3N0YXRlICoKPiArbnZrbV9jc3RhdGVfZ2V0 KHN0cnVjdCBudmttX2NsayAqY2xrLCBzdHJ1Y3QgbnZrbV9wc3RhdGUgKnBzdGF0ZSwgaW50IGNz dGF0ZWkpCj4gK3sKPiArCXN0cnVjdCBudmttX2NzdGF0ZSAqY3N0YXRlOwo+ICsJaWYgKGNzdGF0 ZWkgPT0gLTEpCj4gKwkJcmV0dXJuIGxpc3RfZW50cnkocHN0YXRlLT5saXN0LnByZXYsIHR5cGVv ZigqY3N0YXRlKSwgaGVhZCk7Cj4gKwllbHNlIHsKPiArCQlsaXN0X2Zvcl9lYWNoX2VudHJ5KGNz dGF0ZSwgJnBzdGF0ZS0+bGlzdCwgaGVhZCkgewo+ICsJCQlpZiAoY3N0YXRlLT5jc3RhdGUgPT0g Y3N0YXRlaSkKPiArCQkJCXJldHVybiBjc3RhdGU7Cj4gKwkJfQo+ICsJfQo+ICsJcmV0dXJuIE5V TEw7Cj4gK30KPiArCj4gICBzdGF0aWMgaW50Cj4gICBudmttX2NzdGF0ZV9wcm9nKHN0cnVjdCBu dmttX2NsayAqY2xrLCBzdHJ1Y3QgbnZrbV9wc3RhdGUgKnBzdGF0ZSwgaW50IGNzdGF0ZWkpCj4g ICB7Cj4gQEAgLTg1LDE1ICsxNTcsOCBAQCBudmttX2NzdGF0ZV9wcm9nKHN0cnVjdCBudmttX2Ns ayAqY2xrLCBzdHJ1Y3QgbnZrbV9wc3RhdGUgKnBzdGF0ZSwgaW50IGNzdGF0ZWkpCj4gICAJaW50 IHJldDsKPiAgIAo+ICAgCWlmICghbGlzdF9lbXB0eSgmcHN0YXRlLT5saXN0KSkgewo+IC0JCWlm IChjc3RhdGVpID09IC0xKQo+IC0JCQljc3RhdGUgPSBsaXN0X2VudHJ5KHBzdGF0ZS0+bGlzdC5w cmV2LCB0eXBlb2YoKmNzdGF0ZSksCj4gLQkJCQkJICAgIGhlYWQpOwo+IC0JCWVsc2Ugewo+IC0J CQlsaXN0X2Zvcl9lYWNoX2VudHJ5KGNzdGF0ZSwgJnBzdGF0ZS0+bGlzdCwgaGVhZCkgewo+IC0J CQkJaWYgKGNzdGF0ZS0+Y3N0YXRlID09IGNzdGF0ZWkpCj4gLQkJCQkJYnJlYWs7Cj4gLQkJCX0K PiAtCQl9Cj4gKwkJY3N0YXRlID0gbnZrbV9jc3RhdGVfZ2V0KGNsaywgcHN0YXRlLCBjc3RhdGVp KTsKPiArCQljc3RhdGUgPSBudmttX2NzdGF0ZV9maW5kX2Jlc3QoY2xrLCBwc3RhdGUsIGNzdGF0 ZSk7Cj4gICAJfSBlbHNlIHsKPiAgIAkJY3N0YXRlID0gJnBzdGF0ZS0+YmFzZTsKPiAgIAl9CgpS ZXZpZXdlZC1ieTogTWFydGluIFBlcmVzIDxtYXJ0aW4ucGVyZXNAZnJlZS5mcj4KX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTm91dmVhdSBtYWlsaW5nIGxp c3QKTm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1Cg==