From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 1/9] drm: Add variable refresh rate properties to DRM connector Date: Tue, 11 Sep 2018 20:09:14 +0200 Message-ID: <20180911180914.GM19774@phenom.ffwll.local> References: <20180911161333.5334-1-nicholas.kazlauskas@amd.com> <20180911161333.5334-2-nicholas.kazlauskas@amd.com> <20180911162243.GN5565@intel.com> <20180911163119.GO5565@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: "Kazlauskas, Nicholas" Cc: nicolai.haehnle@amd.com, michel@daenzer.net, amd-gfx@lists.freedesktop.org, Christian.Koenig@amd.com, manasi.d.navare@intel.com, dri-devel@lists.freedesktop.org, Alexander.Deucher@amd.com, Marek.Olsak@amd.com List-Id: amd-gfx.lists.freedesktop.org T24gVHVlLCBTZXAgMTEsIDIwMTggYXQgMDE6MzY6MDFQTSAtMDQwMCwgS2F6bGF1c2thcywgTmlj aG9sYXMgd3JvdGU6Cj4gT24gMDkvMTEvMjAxOCAxMjozMSBQTSwgVmlsbGUgU3lyasOkbMOkIHdy b3RlOgo+ID4gT24gVHVlLCBTZXAgMTEsIDIwMTggYXQgMDc6MjI6NDNQTSArMDMwMCwgVmlsbGUg U3lyasOkbMOkIHdyb3RlOgo+ID4gPiBPbiBUdWUsIFNlcCAxMSwgMjAxOCBhdCAxMjoxMzoyNVBN IC0wNDAwLCBOaWNob2xhcyBLYXpsYXVza2FzIHdyb3RlOgo+ID4gPiA+IE1vZGVybiBtb25pdG9y IGhhcmR3YXJlIGlzIGNhcGFibGUgb2Ygc3VwcG9ydGluZyB2YXJpYWJsZSByZWZyZXNoIHJhdGVz Cj4gPiA+ID4gYW5kIGFkYXB0aXZlIHN5bmMgdGVjaG5vbG9naWVzLiBUaGUgcHJvcGVydGllcyBm b3IgcXVlcnlpbmcgYW5kCj4gPiA+ID4gY29udHJvbGxpbmcgdGhlc2UgZmVhdHVyZXMgc2hvdWxk IGJlIGV4cG9zZWQgb24gdGhlIERSTSBjb25uZWN0b3IuCj4gPiA+ID4gCj4gPiA+ID4gVGhpcyBw YXRjaCBpbnRyb2R1Y2VzIHR3byBuZXcgcHJvcGVydGllcyBmb3IgdmFyaWFibGUgcmVmcmVzaCBy YXRlCj4gPiA+ID4gc3VwcG9ydDoKPiA+ID4gPiAKPiA+ID4gPiAtIHZhcmlhYmxlX3JlZnJlc2hf Y2FwYWJsZQo+ID4gPiA+IC0gdmFyaWFibGVfcmVmcmVzaF9lbmFibGVkCj4gPiA+ID4gCj4gPiA+ ID4gVGhlc2UgYXJlIG9wdGlvbmFsIHByb3BlcnRpZXMgdGhhdCBjYW4gYmUgYWRkZWQgdG8gYSBE Uk0gY29ubmVjdG9yCj4gPiA+ID4gZHluYW1pY2FsbHkgYnkgdXNpbmcgZHJtX2Nvbm5lY3Rvcl9h dHRhY2hfdmFyaWFibGVfcmVmcmVzaF9wcm9wZXJ0aWVzLgo+ID4gPiA+IAo+ID4gPiA+IERSTSBk cml2ZXJzIHNob3VsZCBzZXQgdmFyaWFibGVfcmVmcmVzaF9jYXBhYmxlIGFzIGFwcGxpY2FibGUg Zm9yCj4gPiA+ID4gdGhlaXIgaGFyZHdhcmUuIFRoZSBwcm9wZXJ0eSB2YXJpYWJsZV9yZWZyZXNo X2VuYWJsZWQgYXMgYSB1c2Vyc3BhY2UKPiA+ID4gPiBjb250cm9sbGVkIG9wdGlvbi4KPiA+ID4g PiAKPiA+ID4gPiBDaGFuZ2UtSWQ6IEk1ZjYwZjhiNTc1MzRlMWQzZGFjZGE0YzY0YzZjOTEwNmI0 MmY0NDM5Cj4gPiA+ID4gU2lnbmVkLW9mZi1ieTogTmljaG9sYXMgS2F6bGF1c2thcyA8bmljaG9s YXMua2F6bGF1c2thc0BhbWQuY29tPgo+ID4gPiA+IC0tLQo+ID4gPiA+ICAgZHJpdmVycy9ncHUv ZHJtL2RybV9hdG9taWMuYyAgICB8ICA5ICsrKysrKysrKwo+ID4gPiA+ICAgZHJpdmVycy9ncHUv ZHJtL2RybV9jb25uZWN0b3IuYyB8IDM1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Kwo+ID4gPiA+ICAgaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oICAgICB8IDI3ICsrKysrKysr KysrKysrKysrKysrKysrKysKPiA+ID4gPiAgIDMgZmlsZXMgY2hhbmdlZCwgNzEgaW5zZXJ0aW9u cygrKQo+ID4gPiA+IAo+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0 b21pYy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+ID4gPiA+IGluZGV4IGQwNDc4 YWJjMDFiZC4uMmY4OWFiMGZhYzg3IDEwMDY0NAo+ID4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fYXRvbWljLmMKPiA+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5j Cj4gPiA+ID4gQEAgLTE0MDMsNiArMTQwMywxMSBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNfY29u bmVjdG9yX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4g PiA+ICAgCQlzdGF0ZS0+Y29udGVudF90eXBlID0gdmFsOwo+ID4gPiA+ICAgCX0gZWxzZSBpZiAo cHJvcGVydHkgPT0gY29ubmVjdG9yLT5zY2FsaW5nX21vZGVfcHJvcGVydHkpIHsKPiA+ID4gPiAg IAkJc3RhdGUtPnNjYWxpbmdfbW9kZSA9IHZhbDsKPiA+ID4gPiArCX0gZWxzZSBpZiAocHJvcGVy dHkgPT0gY29ubmVjdG9yLT52YXJpYWJsZV9yZWZyZXNoX2NhcGFibGVfcHJvcGVydHkpIHsKPiA+ ID4gPiArCQlEUk1fREVCVUdfS01TKCJvbmx5IGRyaXZlcnMgY2FuIHNldCB2YXJpYWJsZV9yZWZy ZXNoX2NhcGFibGVcbiIpOwo+ID4gPiA+ICsJCXJldHVybiAtRUlOVkFMOwo+ID4gPiAKPiA+ID4g V2h5IGlzIHRoYXQgbmVlZGVkPyBXaHkgbm90IGp1c3QgYXZvaWQgZXhwb3NpbmcgdGhlIHZycl9l bmFibGVkIHByb3AKPiA+ID4gd2hlbiBpdCdzIG5vdCBzdXBwb3J0ZWQ/Cj4gPiAKPiA+IEFoLCBJ IGd1ZXNzIHlvdSB3YW50IHRvIGNoYW5nZSB0aGUgdmFsdWUgYWZ0ZXIgcGx1Z2dpbmcgaW4gYSBu ZXcKPiA+IGRpc3BsYXkuIFllYWgsIGlmIHdlIGRvbid0IHdhbnQgdXNlcnNwYWNlIHRvIGhhdmUg dG8gcGFyc2UgdGhlIEVESUQgSQo+ID4gZ3Vlc3Mgd2UgbmVlZCB0aGlzLiBCdXQgaW4gdGhhdCBj YXNlIGl0IHNob3VsZCBiZSBtYXJrZWQgaW1tdXRhYmxlLAo+ID4gYW5kIHRoZW4geW91IGRvbid0 IG5lZWQgYW55IG9mIHRoaXMgYXRvbWljIHN0YXRlIHJlbGF0ZWQgY29kZSBmb3IgaXQuCj4gCj4g WWVhaCwgaXQncyBmb3IgaG90cGx1Z2dpbmcgdGhhdCBpdCB3b3JrcyB0aGlzIHdheS4gVGhlIHJl YXNvbiBpdCdzIG5vdAo+IG1hcmtlZCBhcyBpbW11dGFibGUgaXMgbW9zdGx5IGNvbnZlbnRpb24g LSB0aGUgZXhpc3RpbmcgZHJpdmVyIHdyaXRlLW9ubHkKPiBwcm9wZXJ0aWVzICh3aXRoIHVzZXJz cGFjZSBxdWVyaWVzKSBkbyB0aGUgc2FtZSB0aGluZy4KPiAKPiBUaGUgaW1tdXRhYmxlIHByb3Bl cnR5IGZsYWcgaXMgb25seSB1c2VkIGZvciBub24tY29ubmVjdG9yIHByb3BlcnRpZXMuCj4gRHVy aW5nIHRlc3RpbmcgSSBhbHNvIG5vdGljZWQgdGhhdCBzb21ldGhpbmcgbGlrZXMgdG8gY2FjaGUg dGhlIGluaXRpYWwKPiBkZWZhdWx0IHZhbHVlIGZvciB0aGVzZSBpbW11dGFibGUgZmxhZ2dlZCBw cm9wZXJ0aWVzIGZvciB1c2Vyc3BhY2UgcXVlcmllcyAtCj4gc28gd2hlbiB5b3UgY2FsbCB4cmFu ZHIgeW91IG9ubHkgZW5kIHVwIHNlZWluZyB0aGUgZGVmYXVsdCB2YWx1ZSBhbmQgbm90IHRoZQo+ IGN1cnJlbnQuCgpJbW11dGFibGUgaXMgdXNlZCBmb3IgdGhlIGVkaWQgcHJvcGVydHkuIFNvIGV4 YWN0bHkgd2hhdCB5b3Ugd2FudCBoZXJlIC0Kc3RhdGljIGRhdGEgdGhhdCBvbmx5IGRlcGVuZHMg dXBvbiB0aGUgcGx1Z2dlZCBpbiBtb25pdG9yLCB3aGljaCB1c2Vyc3BhY2UKaXNuJ3QgYWxsb3dl ZCB0byBjaGFuZ2UuCgpZZWFoIGltbXV0YWJsZSBpcyBtaXNsYWJlbGxlZCwgaXQganVzdCBtZWFu cyAidXNlcnNwYWNlIGNhbid0IGNoYW5nZSBpdCIuCkl0J3Mgbm90IGFjdHVhbGx5IGZvciBpbW11 dGFibGUgc3R1ZmYuIFRoZSBkb2NzIHNob3VsZCBleHBsYWluIHRoaXMKc29tZXdoZXJlLCBpZiBu b3QsIHBscyB0eXBlIGEgcGF0Y2ggdG8gZml4IHRoaXMuCi1EYW5pZWwKCgo+IAo+ID4gCj4gPiA+ IAo+ID4gPiA+ICsJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25uZWN0b3ItPnZhcmlhYmxlX3Jl ZnJlc2hfZW5hYmxlZF9wcm9wZXJ0eSkgewo+ID4gPiA+ICsJCXN0YXRlLT52YXJpYWJsZV9yZWZy ZXNoX2VuYWJsZWQgPSB2YWw7Cj4gPiA+IAo+ID4gPiBTbyBvbmUgdGhpbmcgSSBhbHJlYWR5IGFz a2VkIGxvbmcgYWdvIGlzIHdoZXRoZXIgdGhlcmUgd291bGQgYSBwb2ludCBpbgo+ID4gPiBleHBv c2luZyBzb21lIGtpbmQgb2YgbWluL21heCByZWZyZXNoIHJhdGUgcmFuZ2UgY29udHJvbC4gTmV2 ZXIgcmVhbGx5Cj4gPiA+IGdvdCBhbiBhbnN3ZXIuIFdhcyBzb21laHRpbmcgbGlrZSB0aGF0IGNv bnNpZGVyZWQgYW5kIHJlamVjdGVkPwo+IAo+IEZvciB0aGUgaW5pdGlhbCBwYXRjaHNldCBpdCBz ZWVtZWQgYmVzdCB0byBrZWVwIHRoaW5ncyBzaW1wbGUgYW5kIHRhcmdldCB0aGUKPiBkeW5hbWlj IGFkYXB0YXRpb24gdXNlY2FzZSB3aXRoIG9uL29mZiB0b2dnbGUuCj4gCj4gVGhlIGRyaXZlciBo YXZpbmcgYWNjZXNzIHRvIHRoZSBmdWxsIHJhbmdlIGNhbiBlbmFibGUgYWRkaXRpb25hbAo+IGZ1 bmN0aW9uYWxpdHkgdGhhdCBjYW4gaW1wcm92ZSB0aGUgdXNlciBleHBlcmllbmNlIC0gYSBnb29k IGV4YW1wbGUgaXMgbG93Cj4gZnJhbWVyYXRlIGNvbXBlbnNhdGlvbi4KPiAKPiBBZGRpbmcgdGhl IHByb3BlcnRpZXMgdG8gc3VwcG9ydCBzZXR0aW5nIHRoZSBtaW4vbWF4IGNvdWxkIGJlIGRvbmUg b24gdG9wIG9mCj4gdGhpcywgaG93ZXZlci4gRHJpdmVyIGJlaGF2aW9yIHdvdWxkIGxpa2VseSBu ZWVkIHRvIGJlIGRlZmluZWQgZm9yIGF0b21pYwo+IGNoZWNrLiBUaGUgZHJpdmVyIG5lZWRzIHRv IHZlcmlmeSB3aXRoIHRoZSBtb25pdG9yIHRoYXQgdGhlIHJhbmdlcyBhcmUgdmFsaWQKPiBhdCBz b21lIHBvaW50IC0gd2hldGhlciBpdCBzaWxlbnRseSBmYWlscyBvciByZXR1cm5zIGFuIGVycm9y IGlzIGFuIGV4YW1wbGUKPiBvZiBzb21ldGhpbmcgdG8gY29uc2lkZXIgaGVyZS4KPiAKPiBEbyB5 b3UgaGF2ZSBhIHNwZWNpZmljIHVzZWNhc2UgaW4gbWluZCB0aGF0IG5lZWRzIG1pbi9tYXggZXhw b3NlZCB0bwo+IHVzZXJzcGFjZT8KPiAKPiA+ID4gCj4gPiA+ID4gICAJfSBlbHNlIGlmIChwcm9w ZXJ0eSA9PSBjb25uZWN0b3ItPmNvbnRlbnRfcHJvdGVjdGlvbl9wcm9wZXJ0eSkgewo+ID4gPiA+ ICAgCQlpZiAodmFsID09IERSTV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9FTkFCTEVEKSB7Cj4g PiA+ID4gICAJCQlEUk1fREVCVUdfS01TKCJvbmx5IGRyaXZlcnMgY2FuIHNldCBDUCBFbmFibGVk XG4iKTsKPiA+ID4gPiBAQCAtMTUwOCw2ICsxNTEzLDEwIEBAIGRybV9hdG9taWNfY29ubmVjdG9y X2dldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4gPiA+ICAg CQkqdmFsID0gc3RhdGUtPmNvbnRlbnRfdHlwZTsKPiA+ID4gPiAgIAl9IGVsc2UgaWYgKHByb3Bl cnR5ID09IGNvbm5lY3Rvci0+c2NhbGluZ19tb2RlX3Byb3BlcnR5KSB7Cj4gPiA+ID4gICAJCSp2 YWwgPSBzdGF0ZS0+c2NhbGluZ19tb2RlOwo+ID4gPiA+ICsJfSBlbHNlIGlmIChwcm9wZXJ0eSA9 PSBjb25uZWN0b3ItPnZhcmlhYmxlX3JlZnJlc2hfY2FwYWJsZV9wcm9wZXJ0eSkgewo+ID4gPiA+ ICsJCSp2YWwgPSBzdGF0ZS0+dmFyaWFibGVfcmVmcmVzaF9jYXBhYmxlOwo+ID4gPiA+ICsJfSBl bHNlIGlmIChwcm9wZXJ0eSA9PSBjb25uZWN0b3ItPnZhcmlhYmxlX3JlZnJlc2hfZW5hYmxlZF9w cm9wZXJ0eSkgewo+ID4gPiA+ICsJCSp2YWwgPSBzdGF0ZS0+dmFyaWFibGVfcmVmcmVzaF9lbmFi bGVkOwo+ID4gPiA+ICAgCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29ubmVjdG9yLT5jb250ZW50 X3Byb3RlY3Rpb25fcHJvcGVydHkpIHsKPiA+ID4gPiAgIAkJKnZhbCA9IHN0YXRlLT5jb250ZW50 X3Byb3RlY3Rpb247Cj4gPiA+ID4gICAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPndy aXRlYmFja19mYl9pZF9wcm9wZXJ0eSkgewo+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vZHJtX2Nvbm5lY3Rvci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYwo+ ID4gPiA+IGluZGV4IDYwMTFkNzY5ZDUwYi4uMzdmYjMzZmE3N2I5IDEwMDY0NAo+ID4gPiA+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPiA+ID4gPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4gPiA+ID4gQEAgLTEyNTAsNiArMTI1MCw0MSBAQCBp bnQgZHJtX21vZGVfY3JlYXRlX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQo+ID4gPiA+ICAgfQo+ID4gPiA+ICAgRVhQT1JUX1NZTUJPTChkcm1fbW9kZV9jcmVh dGVfc2NhbGluZ19tb2RlX3Byb3BlcnR5KTsKPiA+ID4gPiArLyoqCj4gPiA+ID4gKyAqIGRybV9j b25uZWN0b3JfYXR0YWNoX3ZhcmlhYmxlX3JlZnJlc2hfcHJvcGVydGllcyAtIGNyZWF0ZXMgYW5k IGF0dGFjaGVzCj4gPiA+ID4gKyAqIHByb3BlcnRpZXMgZm9yIGNvbm5lY3RvcnMgdGhhdCBzdXBw b3J0IGFkYXB0aXZlIHJlZnJlc2gKPiA+ID4gPiArICogQGNvbm5lY3RvcjogY29ubmVjdG9yIHRv IGNyZWF0ZSBhZGFwdGl2ZSByZWZyZXNoIHByb3BlcnRpZXMgb24KPiA+ID4gPiArICovCj4gPiA+ ID4gK2ludCBkcm1fY29ubmVjdG9yX2F0dGFjaF92YXJpYWJsZV9yZWZyZXNoX3Byb3BlcnRpZXMo Cj4gPiA+ID4gKwlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4gPiA+ICt7Cj4g PiA+ID4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY29ubmVjdG9yLT5kZXY7Cj4gPiA+ID4g KwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wOwo+ID4gPiA+ICsKPiA+ID4gPiArCWlmICghY29u bmVjdG9yLT52YXJpYWJsZV9yZWZyZXNoX2NhcGFibGVfcHJvcGVydHkpIHsKPiA+ID4gPiArCQlw cm9wID0gZHJtX3Byb3BlcnR5X2NyZWF0ZV9ib29sKGRldiwgMCwKPiA+ID4gPiArCQkJInZhcmlh YmxlX3JlZnJlc2hfY2FwYWJsZSIpOwo+ID4gPiA+ICsJCWlmICghcHJvcCkKPiA+ID4gPiArCQkJ cmV0dXJuIC1FTk9NRU07Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCWNvbm5lY3Rvci0+dmFyaWFibGVf cmVmcmVzaF9jYXBhYmxlX3Byb3BlcnR5ID0gcHJvcDsKPiA+ID4gPiArCQlkcm1fb2JqZWN0X2F0 dGFjaF9wcm9wZXJ0eSgmY29ubmVjdG9yLT5iYXNlLCBwcm9wLCAwKTsKPiA+ID4gPiArCX0KPiA+ ID4gPiArCj4gPiA+ID4gKwlpZiAoIWNvbm5lY3Rvci0+dmFyaWFibGVfcmVmcmVzaF9lbmFibGVk X3Byb3BlcnR5KSB7Cj4gPiA+ID4gKwkJcHJvcCA9IGRybV9wcm9wZXJ0eV9jcmVhdGVfYm9vbChk ZXYsIDAsCj4gPiA+ID4gKwkJCSJ2YXJpYWJsZV9yZWZyZXNoX2VuYWJsZWQiKTsKPiA+ID4gPiAr CQlpZiAoIXByb3ApCj4gPiA+ID4gKwkJCXJldHVybiAtRU5PTUVNOwo+ID4gPiA+ICsKPiA+ID4g PiArCQljb25uZWN0b3ItPnZhcmlhYmxlX3JlZnJlc2hfZW5hYmxlZF9wcm9wZXJ0eSA9IHByb3A7 Cj4gPiA+ID4gKwkJZHJtX29iamVjdF9hdHRhY2hfcHJvcGVydHkoJmNvbm5lY3Rvci0+YmFzZSwg cHJvcCwgMCk7Cj4gPiA+ID4gKwl9Cj4gPiA+ID4gKwo+ID4gPiA+ICsJcmV0dXJuIDA7Cj4gPiA+ ID4gK30KPiA+ID4gPiArRVhQT1JUX1NZTUJPTChkcm1fY29ubmVjdG9yX2F0dGFjaF92YXJpYWJs ZV9yZWZyZXNoX3Byb3BlcnRpZXMpOwo+ID4gPiA+ICsKPiA+ID4gPiAgIC8qKgo+ID4gPiA+ICAg ICogZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfc2NhbGluZ19tb2RlX3Byb3BlcnR5IC0gYXR0YWNoIGF0 b21pYyBzY2FsaW5nIG1vZGUgcHJvcGVydHkKPiA+ID4gPiAgICAqIEBjb25uZWN0b3I6IGNvbm5l Y3RvciB0byBhdHRhY2ggc2NhbGluZyBtb2RlIHByb3BlcnR5IG9uLgo+ID4gPiA+IGRpZmYgLS1n aXQgYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggYi9pbmNsdWRlL2RybS9kcm1fY29ubmVj dG9yLmgKPiA+ID4gPiBpbmRleCA5N2VhNDFkYzY3OGYuLjEwNWExMjdlOTE5MSAxMDA2NDQKPiA+ ID4gPiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKPiA+ID4gPiArKysgYi9pbmNs dWRlL2RybS9kcm1fY29ubmVjdG9yLmgKPiA+ID4gPiBAQCAtNDQ4LDYgKzQ0OCwxOCBAQCBzdHJ1 Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSB7Cj4gPiA+ID4gICAJICovCj4gPiA+ID4gICAJdW5zaWdu ZWQgaW50IGNvbnRlbnRfcHJvdGVjdGlvbjsKPiA+ID4gPiArCS8qKgo+ID4gPiA+ICsJICogQHZh cmlhYmxlX3JlZnJlc2hfZW5hYmxlZDogQ29ubmVjdG9yIHByb3BlcnR5IHVzZWQgdG8gY2hlY2sK PiA+ID4gPiArCSAqIGlmIHZhcmlhYmxlIHJlZnJlc2ggaXMgc3VwcG9ydGVkIG9uIHRoZSBkZXZp Y2UuCj4gPiA+ID4gKwkgKi8KPiA+ID4gPiArCWJvb2wgdmFyaWFibGVfcmVmcmVzaF9jYXBhYmxl Owo+ID4gPiA+ICsKPiA+ID4gPiArCS8qKgo+ID4gPiA+ICsJICogQHZhcmlhYmxlX3JlZnJlc2hf ZW5hYmxlZDogQ29ubmVjdG9yIHByb3BlcnR5IHVzZWQgdG8gY2hlY2sKPiA+ID4gPiArCSAqIGlm IHZhcmlhYmxlIHJlZnJlc2ggaXMgZW5hYmxlZC4KPiA+ID4gPiArCSAqLwo+ID4gPiA+ICsJYm9v bCB2YXJpYWJsZV9yZWZyZXNoX2VuYWJsZWQ7Cj4gPiA+ID4gKwo+ID4gPiA+ICAgCS8qKgo+ID4g PiA+ICAgCSAqIEB3cml0ZWJhY2tfam9iOiBXcml0ZWJhY2sgam9iIGZvciB3cml0ZWJhY2sgY29u bmVjdG9ycwo+ID4gPiA+ICAgCSAqCj4gPiA+ID4gQEAgLTkwOSw2ICs5MjEsMTkgQEAgc3RydWN0 IGRybV9jb25uZWN0b3Igewo+ID4gPiA+ICAgCSAqLwo+ID4gPiA+ICAgCXN0cnVjdCBkcm1fcHJv cGVydHkgKnNjYWxpbmdfbW9kZV9wcm9wZXJ0eTsKPiA+ID4gPiArCS8qKgo+ID4gPiA+ICsJICog QHZhcmlhYmxlX3JlZnJlc2hfY2FwYWJsZV9wcm9wZXJ0eTogT3B0aW9uYWwgcHJvcGVydHkgZm9y Cj4gPiA+ID4gKwkgKiBxdWVyeWluZyBoYXJkd2FyZSBzdXBwb3J0IGZvciB2YXJpYWJsZSByZWZy ZXNoLgo+ID4gPiA+ICsJICovCj4gPiA+ID4gKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICp2YXJpYWJs ZV9yZWZyZXNoX2NhcGFibGVfcHJvcGVydHk7Cj4gPiA+ID4gKwo+ID4gPiA+ICsJLyoqCj4gPiA+ ID4gKwkgKiBAdmFyaWFibGVfcmVmcmVzaF9lbmFibGVkX3Byb3BlcnR5OiBPcHRpb25hbCBwcm9w ZXJ0eSBmb3IKPiA+ID4gPiArCSAqIGVuYWJsaW5nIG9yIGRpc2FibGluZyBzdXBwb3J0IGZvciB2 YXJpYWJsZSByZWZyZXNoCj4gPiA+ID4gKwkgKiBvbiB0aGUgY29ubmVjdG9yLgo+ID4gPiA+ICsJ ICovCj4gPiA+ID4gKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICp2YXJpYWJsZV9yZWZyZXNoX2VuYWJs ZWRfcHJvcGVydHk7Cj4gPiA+ID4gKwo+ID4gPiA+ICAgCS8qKgo+ID4gPiA+ICAgCSAqIEBjb250 ZW50X3Byb3RlY3Rpb25fcHJvcGVydHk6IERSTSBFTlVNIHByb3BlcnR5IGZvciBjb250ZW50Cj4g PiA+ID4gICAJICogcHJvdGVjdGlvbi4gU2VlIGRybV9jb25uZWN0b3JfYXR0YWNoX2NvbnRlbnRf cHJvdGVjdGlvbl9wcm9wZXJ0eSgpLgo+ID4gPiA+IEBAIC0xMTgyLDYgKzEyMDcsOCBAQCBpbnQg ZHJtX21vZGVfY3JlYXRlX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KTsKPiA+ID4gPiAgIGludCBkcm1fY29ubmVjdG9yX2F0dGFjaF9jb250ZW50X3R5cGVfcHJv cGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmRldik7Cj4gPiA+ID4gICBpbnQgZHJtX2Nvbm5l Y3Rvcl9hdHRhY2hfc2NhbGluZ19tb2RlX3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IsCj4gPiA+ID4gICAJCQkJCSAgICAgICB1MzIgc2NhbGluZ19tb2RlX21hc2spOwo+ ID4gPiA+ICtpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfdmFyaWFibGVfcmVmcmVzaF9wcm9wZXJ0 aWVzKAo+ID4gPiA+ICsJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7Cj4gPiA+ID4g ICBpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVudF9wcm90ZWN0aW9uX3Byb3BlcnR5KAo+ ID4gPiA+ICAgCQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKPiA+ID4gPiAgIGlu dCBkcm1fbW9kZV9jcmVhdGVfYXNwZWN0X3JhdGlvX3Byb3BlcnR5KHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpOwo+ID4gPiA+IC0tIAo+ID4gPiA+IDIuMTcuMQo+ID4gPiAKPiA+ID4gLS0gCj4gPiA+ IFZpbGxlIFN5cmrDpGzDpAo+ID4gPiBJbnRlbAo+ID4gCj4gCgotLSAKRGFuaWVsIFZldHRlcgpT b2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==