From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [Intel-gfx] [PATCH v8 1/2] drm: content-type property for HDMI connector Date: Thu, 03 May 2018 13:18:09 +0300 Message-ID: <87a7th82la.fsf@intel.com> References: <20180502120411.7219-1-stanislav.lisovskiy@intel.com> <20180502120411.7219-2-stanislav.lisovskiy@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180502120411.7219-2-stanislav.lisovskiy@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: StanLis , dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCAwMiBNYXkgMjAxOCwgU3RhbkxpcyA8c3RhbmlzbGF2Lmxpc292c2tpeUBpbnRlbC5j b20+IHdyb3RlOgo+IEZyb206IFN0YW5pc2xhdiBMaXNvdnNraXkgPHN0YW5pc2xhdi5saXNvdnNr aXlAaW50ZWwuY29tPgo+Cj4gQWRkZWQgY29udGVudF90eXBlIHByb3BlcnR5IHRvIGRybV9jb25u ZWN0b3Jfc3RhdGUKPiBpbiBvcmRlciB0byBwcm9wZXJseSBoYW5kbGUgZXh0ZXJuYWwgSERNSSBU ViBjb250ZW50LXR5cGUgc2V0dGluZy4KPgo+IHYyOgo+ICAqIE1vdmVkIGhlbHBlciBmdW5jdGlv biB3aGljaCBhdHRhY2hlcyBjb250ZW50IHR5cGUgcHJvcGVydHkKPiAgICB0byB0aGUgZHJtIGNv cmUsIGFzIHdhcyBzdWdnZXN0ZWQuCj4gICAgUmVtb3ZlZCByZWR1bmRhbnQgY29ubmVjdG9yIHN0 YXRlIGluaXRpYWxpemF0aW9uLgo+Cj4gdjM6Cj4gICogUmVtb3ZlZCBjYXBzIGluIGRybV9jb250 ZW50X3R5cGVfZW51bV9saXN0Lgo+ICAgIEFmdGVyIHNvbWUgZGlzY3Vzc2lvbiBpdCB0dXJuZWQg b3V0IHRoYXQgSERNSSBTcGVjIDEuNAo+ICAgIHdhcyB3cm9uZ2x5IGFzc3VtaW5nIHRoYXQgSVQg Q29udGVudChpdGMpIGJpdCBkb2Vzbid0IGFmZmVjdAo+ICAgIENvbnRlbnQgdHlwZSBzdGF0ZXMs IGhvd2V2ZXIgaXRjIGJpdCBuZWVkcyB0byBiZSBtYW51cHVsYXRlZAo+ICAgIGFzIHdlbGwuIElu IG9yZGVyIHRvIG5vdCBleHBvc2UgYWRkaXRpb25hbCBwcm9wZXJ0eSBmb3IgaXRjLAo+ICAgIGZv ciBzYWtlIG9mIHNpbXBsaWNpdHkgaXQgd2FzIGRlY2lkZWQgdG8gYmluZCB0aG9zZSB0b2dldGhl cgo+ICAgIGluIHNhbWUgImNvbnRlbnQgdHlwZSIgcHJvcGVydHkuCj4KPiB2NDoKPiAgKiBBZGRl ZCBpdF9jb250ZW50IGNoZWNraW5nIGluIGludGVsX2RpZ2l0YWxfY29ubmVjdG9yX2F0b21pY19j aGVjay4KPiAgICBGaXhlZCBkb2N1bWVudGF0aW9uIGZvciBuZXcgY29udGVudCB0eXBlIGVudW0u Cj4KPiB2NToKPiAgKiBNb3ZlZCBwYXRjaCByZXZpc2lvbidzIGRlc2NyaXB0aW9uIHRvIGNvbW1p dCBtZXNzYWdlcy4KPgo+IHY2Ogo+ICAqIE1pbm9yIG5hbWluZyBmaXggZm9yIHRoZSBjb250ZW50 IHR5cGUgZW51bWVyYXRpb24gc3RyaW5nLgo+Cj4gdjc6Cj4gICogRml4IHBhcmFtZXRlciBuYW1l IGZvciBkb2N1bWVudGF0aW9uIGFuZCBwYXJhbWV0ZXIgYWxpZ25tZW50Cj4gICAgaW4gb3JkZXIg bm90IHRvIGdldCB3YXJuaW5nLiBBZGRlZCBDb250ZW50IFR5cGUgZGVzY3JpcHRpb24gdG8KPiAg ICBuZXcgSERNSSBjb25uZWN0b3IgcHJvcGVydGllcyBzZWN0aW9uLgo+Cj4gdjg6Cj4gICogVGhy b3duIGF3YXkgdW5uZWVkZWQgbnVtYmVycyBmcm9tIEhETUkgY29udGVudC10eXBlIHByb3BlcnR5 Cj4gICAgZGVzY3JpcHRpb24uIFN3aXRjaCB0byBzdHJpbmdzIGRlc3JpcHRpb24gaW5zdGVhZCBv ZiBwbGFpbgo+ICAgIGRlZmluaXRpb25zLgo+Cj4gU2lnbmVkLW9mZi1ieTogU3RhbmlzbGF2IExp c292c2tpeSA8c3RhbmlzbGF2Lmxpc292c2tpeUBpbnRlbC5jb20+Cj4gLS0tCj4gIERvY3VtZW50 YXRpb24vZ3B1L2RybS1rbXMucnN0ICAgICAgICB8ICA2ICsrKwo+ICBEb2N1bWVudGF0aW9uL2dw dS9rbXMtcHJvcGVydGllcy5jc3YgfCAgMSArCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWlj LmMgICAgICAgICB8IDE3ICsrKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3Iu YyAgICAgIHwgNzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrLQo+ICBkcml2ZXJzL2dwdS9k cm0vZHJtX2VkaWQuYyAgICAgICAgICAgfCAgMiArCj4gIGluY2x1ZGUvZHJtL2RybV9jb25uZWN0 b3IuaCAgICAgICAgICB8IDE4ICsrKysrKysKPiAgaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmln LmggICAgICAgIHwgIDUgKysKPiAgaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oICAgICAgICAg IHwgIDcgKysrCj4gIDggZmlsZXMgY2hhbmdlZCwgMTMxIGluc2VydGlvbnMoKyksIDEgZGVsZXRp b24oLSkKPgo+IGRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2dwdS9kcm0ta21zLnJzdCBiL0Rv Y3VtZW50YXRpb24vZ3B1L2RybS1rbXMucnN0Cj4gaW5kZXggMWRmZmQxYWM0Y2Q0Li5lMjMzYzI2 MjZiZDAgMTAwNjQ0Cj4gLS0tIGEvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWttcy5yc3QKPiArKysg Yi9Eb2N1bWVudGF0aW9uL2dwdS9kcm0ta21zLnJzdAo+IEBAIC01MTcsNiArNTE3LDEyIEBAIFN0 YW5kYXJkIENvbm5lY3RvciBQcm9wZXJ0aWVzCj4gIC4uIGtlcm5lbC1kb2M6OiBkcml2ZXJzL2dw dS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4gICAgIDpkb2M6IHN0YW5kYXJkIGNvbm5lY3RvciBwcm9w ZXJ0aWVzCj4gIAo+ICtIRE1JIFNwZWNpZmljIENvbm5lY3RvciBQcm9wZXJ0aWVzCj4gKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gKwo+ICsuLiBrZXJuZWwtZG9jOjogZHJpdmVycy9n cHUvZHJtL2RybV9jb25uZWN0b3IuYwo+ICsgICA6ZG9jOiBIRE1JIGNvbm5lY3RvciBwcm9wZXJ0 aWVzCj4gKwo+ICBQbGFuZSBDb21wb3NpdGlvbiBQcm9wZXJ0aWVzCj4gIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KPiAgCj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ3B1L2ttcy1w cm9wZXJ0aWVzLmNzdiBiL0RvY3VtZW50YXRpb24vZ3B1L2ttcy1wcm9wZXJ0aWVzLmNzdgo+IGlu ZGV4IDA3ZWQyMmVhM2JkNi4uYmZkZTA0ZWRkZDE0IDEwMDY0NAo+IC0tLSBhL0RvY3VtZW50YXRp b24vZ3B1L2ttcy1wcm9wZXJ0aWVzLmNzdgo+ICsrKyBiL0RvY3VtZW50YXRpb24vZ3B1L2ttcy1w cm9wZXJ0aWVzLmNzdgo+IEBAIC0xNyw2ICsxNyw3IEBAIE93bmVyIE1vZHVsZS9Ecml2ZXJzLEdy b3VwLFByb3BlcnR5IE5hbWUsVHlwZSxQcm9wZXJ0eSBWYWx1ZXMsT2JqZWN0IGF0dGFjaGVkLERl Cj4gICxWaXJ0dWFsIEdQVSzigJxzdWdnZXN0ZWQgWOKAnSxSQU5HRSwiTWluPTAsIE1heD0weGZm ZmZmZmZmIixDb25uZWN0b3IscHJvcGVydHkgdG8gc3VnZ2VzdCBhbiBYIG9mZnNldCBmb3IgYSBj b25uZWN0b3IKPiAgLCzigJxzdWdnZXN0ZWQgWeKAnSxSQU5HRSwiTWluPTAsIE1heD0weGZmZmZm ZmZmIixDb25uZWN0b3IscHJvcGVydHkgdG8gc3VnZ2VzdCBhbiBZIG9mZnNldCBmb3IgYSBjb25u ZWN0b3IKPiAgLE9wdGlvbmFsLCIiImFzcGVjdCByYXRpbyIiIixFTlVNLCJ7ICIiTm9uZSIiLCAi IjQ6MyIiLCAiIjE2OjkiIiB9IixDb25uZWN0b3IsVERCCj4gKyxPcHRpb25hbCwiIiJjb250ZW50 IHR5cGUiIiIsRU5VTSwieyAiIk5vIERhdGEiIiwgIiJHcmFwaGljcyIiLCAiIlBob3RvIiIsICIi Q2luZW1hIiIsICIiR2FtZSIiIH0iLENvbm5lY3RvcixUQkQKPiAgaTkxNSxHZW5lcmljLCIiIkJy b2FkY2FzdCBSR0IiIiIsRU5VTSwieyAiIkF1dG9tYXRpYyIiLCAiIkZ1bGwiIiwgIiJMaW1pdGVk IDE2OjIzNSIiIH0iLENvbm5lY3RvciwiV2hlbiB0aGlzIHByb3BlcnR5IGlzIHNldCB0byBMaW1p dGVkIDE2OjIzNSBhbmQgQ1RNIGlzIHNldCwgdGhlIGhhcmR3YXJlIHdpbGwgYmUgcHJvZ3JhbW1l ZCB3aXRoIHRoZSByZXN1bHQgb2YgdGhlIG11bHRpcGxpY2F0aW9uIG9mIENUTSBieSB0aGUgbGlt aXRlZCByYW5nZSBtYXRyaXggdG8gZW5zdXJlIHRoZSBwaXhlbHMgbm9ybWFseSBpbiB0aGUgcmFu Z2UgMC4uMS4wIGFyZSByZW1hcHBlZCB0byB0aGUgcmFuZ2UgMTYvMjU1Li4yMzUvMjU1LiIKPiAg LCzigJxhdWRpb+KAnSxFTlVNLCJ7ICIiZm9yY2UtZHZpIiIsICIib2ZmIiIsICIiYXV0byIiLCAi Im9uIiIgfSIsQ29ubmVjdG9yLFRCRAo+ICAsU0RWTy1UVizigJxtb2Rl4oCdLEVOVU0sInsgIiJO VFNDX00iIiwgIiJOVFNDX0oiIiwgIiJOVFNDXzQ0MyIiLCAiIlBBTF9CIiIgfSBldGMuIixDb25u ZWN0b3IsVEJECj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCj4gaW5kZXggM2Q5YWUwNTdhNmNkLi4wNDZmYzUy NDk4NTkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKPiBAQCAtMTI3MCw2ICsxMjcwLDE1IEBAIHN0 YXRpYyBpbnQgZHJtX2F0b21pY19jb25uZWN0b3Jfc2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29u bmVjdG9yICpjb25uZWN0b3IsCj4gIAkJCXN0YXRlLT5saW5rX3N0YXR1cyA9IHZhbDsKPiAgCX0g ZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5hc3BlY3RfcmF0aW9fcHJvcGVydHkpIHsKPiAg CQlzdGF0ZS0+cGljdHVyZV9hc3BlY3RfcmF0aW8gPSB2YWw7Cj4gKwl9IGVsc2UgaWYgKHByb3Bl cnR5ID09IGNvbmZpZy0+Y29udGVudF90eXBlX3Byb3BlcnR5KSB7Cj4gKwkJLyoKPiArCQkgKiBM b3dlc3QgdHdvIGJpdHMgb2YgY29udGVudF90eXBlIHByb3BlcnR5IGNvbnRyb2wKPiArCQkgKiBj b250ZW50X3R5cGUsIGJpdCAyIGNvbnRyb2xzIGl0YyBiaXQuCj4gKwkJICogSXQgd2FzIGRlY2lk ZWQgdG8gaGF2ZSBhIHNpbmdsZSBwcm9wZXJ0eSBjYWxsZWQKPiArCQkgKiBjb250ZW50X3R5cGUs IGluc3RlYWQgb2YgY29udGVudF90eXBlIGFuZCBpdGMuCgpXaG8gZGVjaWRlZD8gSSB3YXMgdHJ5 aW5nIHRvIGxvb2sgdGhyb3VnaCB0aGUgaGlzdG9yeSwgYnV0IGNvdWxkbid0IGZpbmQKdGhlIHJl dmlldyBkaXNjdXNzaW9uIG9uIHRoaXMgcGFydC4KClRoaXMgYXBwcm9hY2ggZW5jb2RlcyBtZWFu aW5nIHRvIGJpdHMgaW4gdGhlIHByb3BlcnR5IHZhbHVlLCB3aGlsZSBubwpzdWNoIHByb21pc2Ug aXMgYWN0dWFsbHkgbWFkZSBpbiB0aGUgcHJvcGVydHkgaW50ZXJmYWNlLiBEbyB5b3UgZXhwZWN0 CnRvIHN1cHBvcnQgZ3JhcGhpY3MsIHBob3RvLCBjaW5lbWEsIGdhbWUgd2l0aCBhbmQgd2l0aG91 dCBpdGM/CgpJcyB0aGUgaW50ZW50aW9uIHRvIGJlIGFibGUgdG8gZXh0ZW5kIHRoaXMgbGF0ZXIg b24/IElmIHllcywgd2h5IGlzIGl0YwppbiBiaXQgMiBpbnN0ZWFkIG9mIGUuZy4gYml0IDAsIHNv IHRoZSBjb250ZW50LXR5cGUgY291bGQgYWN0dWFsbHkgZ3Jvdz8KCj4gKwkJICovCj4gKwkJc3Rh dGUtPmNvbnRlbnRfdHlwZSA9IHZhbCAmIDM7Cj4gKwkJc3RhdGUtPml0X2NvbnRlbnQgPSB2YWwg Pj4gMjsKCkknbSBtb3N0bHkgYXNraW5nIGJlY2F1c2UgdGhpcyBpcyByZWFsbHkgY29uZnVzaW5n IGNvbnNpZGVyaW5nIHRoZQpwcm9wZXJ0eSB2YWx1ZSBkZWZpbml0aW9ucywgYW5kIHNob3VsZCBJ TU8gYmUgd3JpdHRlbiBpbiB0ZXJtcyBvZiB0aGUKbWFjcm9zLCByZXNwZWN0aW5nIFNQT1QsIGlu c3RlYWQgb2YgYWRkaW5nIG1hZ2ljIG51bWJlcnMgaGVyZS4KCkFsc28sIGxhdGVyIG9uIHlvdSBz ZXQgZnJhbWUtPmNvbnRlbnRfdHlwZSA9IEhETUlfQ09OVEVOVF9UWVBFX0dSQVBISUNTLAp3aGlj aCBpcyBpbmNvbnNpc3RlbnQgd2l0aCB0aGUgbWFza2luZyBhYm92ZS4KCkJSLApKYW5pLgoKClBT LiBQbGVhc2Ugd2FpdCBmb3IgdGhlIGRpc2N1c3Npb24gdG8gc2V0dGxlIG9uIHRoaXMgYmVmb3Jl IHNlbmRpbmcKYW5vdGhlciB2ZXJzaW9uLiBBY2N1bXVsYXRpbmcgdG9ucyBvZiByZXZpc2lvbnMg b2YgdGhlIHBhdGNoIGRvZXMgbm90Cm1ha2UgaXQgbW92ZSBhbnkgZmFzdGVyLgoKPiAgCX0gZWxz ZSBpZiAocHJvcGVydHkgPT0gY29ubmVjdG9yLT5zY2FsaW5nX21vZGVfcHJvcGVydHkpIHsKPiAg CQlzdGF0ZS0+c2NhbGluZ19tb2RlID0gdmFsOwo+ICAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBj b25uZWN0b3ItPmNvbnRlbnRfcHJvdGVjdGlvbl9wcm9wZXJ0eSkgewo+IEBAIC0xMzU1LDYgKzEz NjQsMTQgQEAgZHJtX2F0b21pY19jb25uZWN0b3JfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29u bmVjdG9yICpjb25uZWN0b3IsCj4gIAkJKnZhbCA9IHN0YXRlLT5saW5rX3N0YXR1czsKPiAgCX0g ZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5hc3BlY3RfcmF0aW9fcHJvcGVydHkpIHsKPiAg CQkqdmFsID0gc3RhdGUtPnBpY3R1cmVfYXNwZWN0X3JhdGlvOwo+ICsJfSBlbHNlIGlmIChwcm9w ZXJ0eSA9PSBjb25maWctPmNvbnRlbnRfdHlwZV9wcm9wZXJ0eSkgewo+ICsJCS8qCj4gKwkJICog TG93ZXN0IHR3byBiaXRzIG9mIGNvbnRlbnRfdHlwZSBwcm9wZXJ0eSBjb250cm9sCj4gKwkJICog Y29udGVudF90eXBlLCBiaXQgMiBjb250cm9scyBpdGMgYml0Lgo+ICsJCSAqIEl0IHdhcyBkZWNp ZGVkIHRvIGhhdmUgYSBzaW5nbGUgcHJvcGVydHkgY2FsbGVkCj4gKwkJICogY29udGVudF90eXBl LCBpbnN0ZWFkIG9mIGNvbnRlbnRfdHlwZSBhbmQgaXRjLgo+ICsJCSAqLwo+ICsJCSp2YWwgPSBz dGF0ZS0+Y29udGVudF90eXBlIHwgKHN0YXRlLT5pdF9jb250ZW50IDw8IDIpOwo+ICAJfSBlbHNl IGlmIChwcm9wZXJ0eSA9PSBjb25uZWN0b3ItPnNjYWxpbmdfbW9kZV9wcm9wZXJ0eSkgewo+ICAJ CSp2YWwgPSBzdGF0ZS0+c2NhbGluZ19tb2RlOwo+ICAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBj b25uZWN0b3ItPmNvbnRlbnRfcHJvdGVjdGlvbl9wcm9wZXJ0eSkgewo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb25u ZWN0b3IuYwo+IGluZGV4IGIzY2RlODk3Y2Q4MC4uNDk5NDFkMmJkMGZlIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX2Nvbm5lY3Rvci5jCj4gQEAgLTcyMCw2ICs3MjAsMTQgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBkcm1fcHJvcF9lbnVtX2xpc3QgZHJtX2FzcGVjdF9yYXRpb19lbnVtX2xpc3RbXSA9IHsKPiAg CXsgRFJNX01PREVfUElDVFVSRV9BU1BFQ1RfMTZfOSwgIjE2OjkiIH0sCj4gIH07Cj4gIAo+ICtz dGF0aWMgY29uc3Qgc3RydWN0IGRybV9wcm9wX2VudW1fbGlzdCBkcm1fY29udGVudF90eXBlX2Vu dW1fbGlzdFtdID0gewo+ICsJeyBEUk1fTU9ERV9DT05URU5UX1RZUEVfTk9fREFUQSwgIk5vIERh dGEiIH0sCj4gKwl7IERSTV9NT0RFX0NPTlRFTlRfVFlQRV9HUkFQSElDUywgIkdyYXBoaWNzIiB9 LAo+ICsJeyBEUk1fTU9ERV9DT05URU5UX1RZUEVfUEhPVE8sICJQaG90byIgfSwKPiArCXsgRFJN X01PREVfQ09OVEVOVF9UWVBFX0NJTkVNQSwgIkNpbmVtYSIgfSwKPiArCXsgRFJNX01PREVfQ09O VEVOVF9UWVBFX0dBTUUsICJHYW1lIiB9LAo+ICt9Owo+ICsKPiAgc3RhdGljIGNvbnN0IHN0cnVj dCBkcm1fcHJvcF9lbnVtX2xpc3QgZHJtX3BhbmVsX29yaWVudGF0aW9uX2VudW1fbGlzdFtdID0g ewo+ICAJeyBEUk1fTU9ERV9QQU5FTF9PUklFTlRBVElPTl9OT1JNQUwsCSJOb3JtYWwiCX0sCj4g IAl7IERSTV9NT0RFX1BBTkVMX09SSUVOVEFUSU9OX0JPVFRPTV9VUCwJIlVwc2lkZSBEb3duIgl9 LAo+IEBAIC05OTYsNiArMTAwNCw0NSBAQCBpbnQgZHJtX21vZGVfY3JlYXRlX2R2aV9pX3Byb3Bl cnRpZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgfQo+ICBFWFBPUlRfU1lNQk9MKGRybV9t b2RlX2NyZWF0ZV9kdmlfaV9wcm9wZXJ0aWVzKTsKPiAgCj4gKwo+ICsvKioKPiArICogRE9DOiBI RE1JIGNvbm5lY3RvciBwcm9wZXJ0aWVzCj4gKyAqCj4gKyAqIGNvbnRlbnQgdHlwZSAoSERNSSBz cGVjaWZpYyk6Cj4gKyAqCUluZGljYXRlcyBjb250ZW50IHR5cGUgc2V0dGluZyB0byBiZSB1c2Vk IGluIEhETUkgaW5mb2ZyYW1lcyB0byBpbmRpY2F0ZQo+ICsgKgljb250ZW50IHR5cGUgZm9yIHRo ZSBleHRlcm5hbCBkZXZpY2UsIHNvIHRoYXQgaXQgYWRqdXN0cyBpdCdzIGRpc3BsYXkKPiArICoJ c2V0dGluZ3MgYWNjb3JkaW5nbHkuCj4gKyAqCj4gKyAqCVRoZSB2YWx1ZSBvZiB0aGlzIHByb3Bl cnR5IGNhbiBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZzoKPiArICoKPiArICoJTm8gRGF0YToKPiAr ICoJCUNvbnRlbnQgdHlwZSBpcyB1bmtub3duLCBpdCBjb250ZW50KGl0YykgYml0IGlzIGNsZWFy ZWQuCj4gKyAqCUdyYXBoaWNzOgo+ICsgKgkJQ29udGVudCB0eXBlIGlzIGdyYXBoaWNzLCBpdCBj b250ZW50KGl0YykgYml0IGlzIHNldC4KPiArICoJUGhvdG86Cj4gKyAqCQlDb250ZW50IHR5cGUg aXMgcGhvdG8sIGl0YyBiaXQgaXMgc2V0Lgo+ICsgKglDaW5lbWE6Cj4gKyAqCQlDb250ZW50IHR5 cGUgaXMgY2luZW1hLCBpdGMgYml0IGlzIHNldC4KPiArICoJR2FtZToKPiArICoJCUNvbnRlbnQg dHlwZSBpcyBnYW1lLCBpdGMgYml0IGlzIHNldC4KPiArICovCj4gKwo+ICsvKioKPiArICogZHJt X2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVudF90eXBlX3Byb3BlcnR5IC0gYXR0YWNoIGNvbnRlbnQt dHlwZSBwcm9wZXJ0eQo+ICsgKiBAY29ubmVjdG9yOiBjb25uZWN0b3IgdG8gYXR0YWNoIGNvbnRl bnQgdHlwZSBwcm9wZXJ0eSBvbi4KPiArICoKPiArICogQ2FsbGVkIGJ5IGEgZHJpdmVyIHRoZSBm aXJzdCB0aW1lIGEgSERNSSBjb25uZWN0b3IgaXMgbWFkZS4KPiArICovCj4gK2ludCBkcm1fY29u bmVjdG9yX2F0dGFjaF9jb250ZW50X3R5cGVfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3Ig KmNvbm5lY3RvcikKPiArewo+ICsJaWYgKCFkcm1fbW9kZV9jcmVhdGVfY29udGVudF90eXBlX3By b3BlcnR5KGNvbm5lY3Rvci0+ZGV2KSkKPiArCQlkcm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eSgm Y29ubmVjdG9yLT5iYXNlLAo+ICsJCQkJCSAgIGNvbm5lY3Rvci0+ZGV2LT5tb2RlX2NvbmZpZy5j b250ZW50X3R5cGVfcHJvcGVydHksCj4gKwkJCQkJICAgRFJNX01PREVfQ09OVEVOVF9UWVBFX05P X0RBVEEpOwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArRVhQT1JUX1NZTUJPTChkcm1fY29ubmVjdG9y X2F0dGFjaF9jb250ZW50X3R5cGVfcHJvcGVydHkpOwo+ICsKPiAgLyoqCj4gICAqIGRybV9jcmVh dGVfdHZfcHJvcGVydGllcyAtIGNyZWF0ZSBUViBzcGVjaWZpYyBjb25uZWN0b3IgcHJvcGVydGll cwo+ICAgKiBAZGV2OiBEUk0gZGV2aWNlCj4gQEAgLTExNTAsNyArMTE5Nyw3IEBAIEVYUE9SVF9T WU1CT0woZHJtX21vZGVfY3JlYXRlX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eSk7Cj4gICAqCj4gICAq IFJldHVybnM6Cj4gICAqIFplcm8gb24gc3VjY2VzcywgbmVnYXRpdmUgZXJybm8gb24gZmFpbHVy ZS4KPiAtICovCj4gKyAqLyAKPiAgaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX3NjYWxpbmdfbW9k ZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICAJCQkJCSAgICAg ICB1MzIgc2NhbGluZ19tb2RlX21hc2spCj4gIHsKPiBAQCAtMTI2MCw2ICsxMzA3LDMzIEBAIGlu dCBkcm1fbW9kZV9jcmVhdGVfYXNwZWN0X3JhdGlvX3Byb3BlcnR5KHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpCj4gIH0KPiAgRVhQT1JUX1NZTUJPTChkcm1fbW9kZV9jcmVhdGVfYXNwZWN0X3JhdGlv X3Byb3BlcnR5KTsKPiAgCj4gKy8qKgo+ICsgKiBkcm1fbW9kZV9jcmVhdGVfY29udGVudF90eXBl X3Byb3BlcnR5IC0gY3JlYXRlIGNvbnRlbnQgdHlwZSBwcm9wZXJ0eQo+ICsgKiBAZGV2OiBEUk0g ZGV2aWNlCj4gKyAqCj4gKyAqIENhbGxlZCBieSBhIGRyaXZlciB0aGUgZmlyc3QgdGltZSBpdCdz IG5lZWRlZCwgbXVzdCBiZSBhdHRhY2hlZCB0byBkZXNpcmVkCj4gKyAqIGNvbm5lY3RvcnMuCj4g KyAqCj4gKyAqIFJldHVybnM6Cj4gKyAqIFplcm8gb24gc3VjY2VzcywgbmVnYXRpdmUgZXJybm8g b24gZmFpbHVyZS4KPiArICovCj4gK2ludCBkcm1fbW9kZV9jcmVhdGVfY29udGVudF90eXBlX3By b3BlcnR5KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gK3sKPiArCWlmIChkZXYtPm1vZGVfY29u ZmlnLmNvbnRlbnRfdHlwZV9wcm9wZXJ0eSkKPiArCQlyZXR1cm4gMDsKPiArCj4gKwlkZXYtPm1v ZGVfY29uZmlnLmNvbnRlbnRfdHlwZV9wcm9wZXJ0eSA9Cj4gKwkJZHJtX3Byb3BlcnR5X2NyZWF0 ZV9lbnVtKGRldiwgMCwgImNvbnRlbnQgdHlwZSIsCj4gKwkJCQkJIGRybV9jb250ZW50X3R5cGVf ZW51bV9saXN0LAo+ICsJCQkJCSBBUlJBWV9TSVpFKGRybV9jb250ZW50X3R5cGVfZW51bV9saXN0 KSk7Cj4gKwo+ICsJaWYgKGRldi0+bW9kZV9jb25maWcuY29udGVudF90eXBlX3Byb3BlcnR5ID09 IE5VTEwpCj4gKwkJcmV0dXJuIC1FTk9NRU07Cj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArRVhQ T1JUX1NZTUJPTChkcm1fbW9kZV9jcmVhdGVfY29udGVudF90eXBlX3Byb3BlcnR5KTsKPiArCj4g IC8qKgo+ICAgKiBkcm1fbW9kZV9jcmVhdGVfc3VnZ2VzdGVkX29mZnNldF9wcm9wZXJ0aWVzIC0g Y3JlYXRlIHN1Z2dlc3RzIG9mZnNldCBwcm9wZXJ0aWVzCj4gICAqIEBkZXY6IERSTSBkZXZpY2UK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2VkaWQuYwo+IGluZGV4IDEzNDA2OWYzNjQ4Mi4uYjFiN2Y5NjgzZTM0IDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2RybV9lZGlkLmMKPiBAQCAtNDg2Nyw2ICs0ODY3LDggQEAgZHJtX2hkbWlfYXZpX2luZm9mcmFt ZV9mcm9tX2Rpc3BsYXlfbW9kZShzdHJ1Y3QgaGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFtZSwKPiAg CX0KPiAgCj4gIAlmcmFtZS0+cGljdHVyZV9hc3BlY3QgPSBIRE1JX1BJQ1RVUkVfQVNQRUNUX05P TkU7Cj4gKwlmcmFtZS0+Y29udGVudF90eXBlID0gSERNSV9DT05URU5UX1RZUEVfR1JBUEhJQ1M7 Cj4gKwlmcmFtZS0+aXRjID0gMDsKPiAgCj4gIAkvKgo+ICAJICogUG9wdWxhdGUgcGljdHVyZSBh c3BlY3QgcmF0aW8gZnJvbSBlaXRoZXIKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2Nv bm5lY3Rvci5oIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCj4gaW5kZXggNjc1Y2MzZjhj Zjg1Li4xZmVkYWI3NTBmMDkgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rv ci5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCj4gQEAgLTQxOCw2ICs0MTgs MjIgQEAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgewo+ICAJICovCj4gIAllbnVtIGhkbWlf cGljdHVyZV9hc3BlY3QgcGljdHVyZV9hc3BlY3RfcmF0aW87Cj4gIAo+ICsJLyoqCj4gKwkgKiBA Y29udGVudF90eXBlOiBDb25uZWN0b3IgcHJvcGVydHkgdG8gY29udHJvbCB0aGUKPiArCSAqIEhE TUkgaW5mb2ZyYW1lIGNvbnRlbnQgdHlwZSBzZXR0aW5nLgo+ICsJICogVGhlICVEUk1fTU9ERV9D T05URU5UX1RZUEVfXCogdmFsdWVzIGxvd2VzdCAyIGJpdHMgbXVjaAo+ICsJICogbWF0Y2ggdGhl IHZhbHVlcyBmb3IgJmVudW0gaGRtaV9jb250ZW50X3R5cGUKPiArCSAqLwo+ICsJZW51bSBoZG1p X2NvbnRlbnRfdHlwZSBjb250ZW50X3R5cGU7Cj4gKwo+ICsJLyoqCj4gKwkgKiBAaXRfY29udGVu dDogQ29ubmVjdG9yIHByb3BlcnR5IHRvIGNvbnRyb2wgdGhlCj4gKwkgKiBIRE1JIGluZm9mcmFt ZSBpdCBjb250ZW50IHNldHRpbmcodXNlZCB3aXRoIGNvbnRlbnQgdHlwZSkuCj4gKwkgKiBUaGUg JURSTV9NT0RFX0NPTlRFTlRfVFlQRV9cKiB2YWx1ZXMgYml0IDIKPiArCSAqIG1hdGNoIHRoZSB2 YWx1ZXMgb2YgaXRfY29udGVudAo+ICsJICovCj4gKwlib29sIGl0X2NvbnRlbnQ7Cj4gKwo+ICAJ LyoqCj4gIAkgKiBAc2NhbGluZ19tb2RlOiBDb25uZWN0b3IgcHJvcGVydHkgdG8gY29udHJvbCB0 aGUKPiAgCSAqIHVwc2NhbGluZywgbW9zdGx5IHVzZWQgZm9yIGJ1aWx0LWluIHBhbmVscy4KPiBA QCAtMTA4OSwxMSArMTEwNSwxMyBAQCBpbnQgZHJtX21vZGVfY3JlYXRlX3R2X3Byb3BlcnRpZXMo c3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCQkJCSAgdW5zaWduZWQgaW50IG51bV9tb2RlcywK PiAgCQkJCSAgY29uc3QgY2hhciAqIGNvbnN0IG1vZGVzW10pOwo+ICBpbnQgZHJtX21vZGVfY3Jl YXRlX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAraW50 IGRybV9jb25uZWN0b3JfYXR0YWNoX2NvbnRlbnRfdHlwZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqZGV2KTsKPiAgaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX3NjYWxpbmdfbW9kZV9w cm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICAJCQkJCSAgICAgICB1 MzIgc2NhbGluZ19tb2RlX21hc2spOwo+ICBpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVu dF9wcm90ZWN0aW9uX3Byb3BlcnR5KAo+ICAJCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3IpOwo+ICBpbnQgZHJtX21vZGVfY3JlYXRlX2FzcGVjdF9yYXRpb19wcm9wZXJ0eShzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KTsKPiAraW50IGRybV9tb2RlX2NyZWF0ZV9jb250ZW50X3R5cGVfcHJv cGVydHkoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gIGludCBkcm1fbW9kZV9jcmVhdGVfc3Vn Z2VzdGVkX29mZnNldF9wcm9wZXJ0aWVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+ICAKPiAg aW50IGRybV9tb2RlX2Nvbm5lY3Rvcl9zZXRfcGF0aF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yLAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25m aWcuaCBiL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oCj4gaW5kZXggMzNiM2E5NmQ2NmQw Li5mYjQ1ODM5MTc5ZGQgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmln LmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaAo+IEBAIC03MjYsNiArNzI2 LDExIEBAIHN0cnVjdCBkcm1fbW9kZV9jb25maWcgewo+ICAJICogSERNSSBpbmZvZnJhbWUgYXNw ZWN0IHJhdGlvIHNldHRpbmcuCj4gIAkgKi8KPiAgCXN0cnVjdCBkcm1fcHJvcGVydHkgKmFzcGVj dF9yYXRpb19wcm9wZXJ0eTsKPiArCS8qKgo+ICsJICogQGNvbnRlbnRfdHlwZV9wcm9wZXJ0eTog T3B0aW9uYWwgY29ubmVjdG9yIHByb3BlcnR5IHRvIGNvbnRyb2wgdGhlCj4gKwkgKiBIRE1JIGlu Zm9mcmFtZSBjb250ZW50IHR5cGUgc2V0dGluZy4KPiArCSAqLwo+ICsJc3RydWN0IGRybV9wcm9w ZXJ0eSAqY29udGVudF90eXBlX3Byb3BlcnR5Owo+ICAJLyoqCj4gIAkgKiBAZGVnYW1tYV9sdXRf cHJvcGVydHk6IE9wdGlvbmFsIENSVEMgcHJvcGVydHkgdG8gc2V0IHRoZSBMVVQgdXNlZCB0bwo+ ICAJICogY29udmVydCB0aGUgZnJhbWVidWZmZXIncyBjb2xvcnMgdG8gbGluZWFyIGdhbW1hLgo+ IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmggYi9pbmNsdWRlL3VhcGkv ZHJtL2RybV9tb2RlLmgKPiBpbmRleCA1MGJjZjQyMTRmZjkuLjNjMjM0YmZhODBiOSAxMDA2NDQK PiAtLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmgKPiArKysgYi9pbmNsdWRlL3VhcGkv ZHJtL2RybV9tb2RlLmgKPiBAQCAtOTQsNiArOTQsMTMgQEAgZXh0ZXJuICJDIiB7Cj4gICNkZWZp bmUgRFJNX01PREVfUElDVFVSRV9BU1BFQ1RfNF8zCQkxCj4gICNkZWZpbmUgRFJNX01PREVfUElD VFVSRV9BU1BFQ1RfMTZfOQkJMgo+ICAKPiArLyogSERNSSBjb250ZW50IHR5cGUgYW5kIGl0YyBi aXQgYm91bmQgdG9nZXRoZXIgZm9yIHNpbXBsaWNpdHkgKi8KPiArI2RlZmluZSBEUk1fTU9ERV9D T05URU5UX1RZUEVfTk9fREFUQQkJMAo+ICsjZGVmaW5lIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9H UkFQSElDUwkJNAo+ICsjZGVmaW5lIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9QSE9UTwkJNQo+ICsj ZGVmaW5lIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9DSU5FTUEJCTYKPiArI2RlZmluZSBEUk1fTU9E RV9DT05URU5UX1RZUEVfR0FNRQkJNwo+ICsKPiAgLyogQXNwZWN0IHJhdGlvIGZsYWcgYml0bWFz ayAoNCBiaXRzIDIyOjE5KSAqLwo+ICAjZGVmaW5lIERSTV9NT0RFX0ZMQUdfUElDX0FSX01BU0sJ CSgweDBGPDwxOSkKPiAgI2RlZmluZSAgRFJNX01PREVfRkxBR19QSUNfQVJfTk9ORSBcCgotLSAK SmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNlIFRlY2hub2xvZ3kgQ2VudGVyCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5n IGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=