From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yannick FERTRE Subject: Re: [PATCH v9 03/11] drm: bridge: dw_mipi_dsi: add dsi v1.01 support Date: Wed, 10 Jun 2020 12:20:16 +0000 Message-ID: <2d763625-94af-a85c-e869-95d98190d403@st.com> References: <20200609174959.955926-1-adrian.ratiu@collabora.com> <20200609174959.955926-4-adrian.ratiu@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20200609174959.955926-4-adrian.ratiu-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> Content-Language: en-US Content-ID: <89ED3D07B6174443A4191E789FE7772C-qxv4g6HH51o@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+glpar-linux-rockchip=m.gmane-mx.org-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org To: Adrian Ratiu , "linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org" , "devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org" , Laurent Pinchart Cc: Jernej Skrabec , Heiko Stuebner , Adrian Pop , Jonas Karlman , Philippe CORNU , "dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" , "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Andrzej Hajda , "linux-imx-3arQi8VN3Tc@public.gmane.org" , "kernel-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org" , "linux-stm32-XDFAJ8BFU24N7RejjzZ/Li2xQDfSxrLKVpNB7YpNyf8@public.gmane.org" , Arnaud Ferraris List-Id: linux-rockchip.vger.kernel.org SGkgQWRyaWFuLA0KDQp0aGFua3MgZm9yIHRoZSBwYWNoOiB0ZXN0ZWQgb24gc3RtMzJtcDEuDQoN ClRlc3RlZC1ieTogWWFubmljayBGZXJ0csOpIDx5YW5uaWNrLmZlcnRyZUBzdC5jb20+DQoNCk9u IDYvOS8yMCA3OjQ5IFBNLCBBZHJpYW4gUmF0aXUgd3JvdGU6DQo+IFRoZSBTeW5vcHNpcyBNSVBJ IERTSSB2MS4wMSBob3N0IGNvbnRyb2xsZXIgaXMgcXVpdGUgd2lkZWx5IHVzZWQNCj4gb24gcGxh dGZvcm1zIGxpa2UgaS5teDYgYW5kIGlzIG5vdCB2ZXJ5IGRpZmZlcmVudCBmcm9tIHRoZSBvdGhl cg0KPiB2ZXJzaW9ucyBsaWtlIHRoZSAxLjMxLzEuMzAgdXNlZCBvbiByb2NrY2hpcC9zdG0uIFRo ZSBwcm90b2NvbHMNCj4gYXBwZWFyIHRvIGJlIHRoZSBzYW1lLCBvbmx5IHRoZSByZWdpc3RlciBs YXlvdXQgaXMgZGlmZmVyZW50IGFuZA0KPiB0aGUgbmV3ZXIgdmVyc2lvbnMgaGF2ZSBuZXcgZmVh dHVyZXMgc3ltYm9saXplZCBieSBuZXcgcmVnaXN0ZXJzDQo+IHNvIGFkZGluZyBzdXBwb3J0IGZv ciBpdCBpcyBqdXN0IGEgbWF0dGVyIG9mIGRlZmluaW5nIHRoZSBuZXcNCj4gbGF5b3V0IGFuZCBh ZGRpbmcgYSBjb3VwbGUgb2YgZHNpIHZlcnNpb24gY2hlY2tzLg0KPg0KPiBUZXN0ZWQtYnk6IEFk cmlhbiBQb3AgPHBvcC5hZHJpYW42MUBnbWFpbC5jb20+DQo+IFRlc3RlZC1ieTogQXJuYXVkIEZl cnJhcmlzIDxhcm5hdWQuZmVycmFyaXNAY29sbGFib3JhLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTog QWRyaWFuIFJhdGl1IDxhZHJpYW4ucmF0aXVAY29sbGFib3JhLmNvbT4NCj4gLS0tDQo+IENoYW5n ZXMgc2luY2Ugdjc6DQo+ICAgIC0gTWlub3IgY29tbWl0IG1zZyByZXdvcmRpbmcgZm9yIGNvbnNp c3RlbmN5DQo+DQo+IENoYW5nZXMgc2luY2UgdjU6DQo+ICAgIC0gRml4ZWQgY2ZnX3BoeV9zdGF0 dXMgcmFuZ2UgZnJvbSBbMCwwXSB0byBbMCwyXQ0KPg0KPiBOZXcgaW4gdjUuDQo+IC0tLQ0KPiAg IGRyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctbWlwaS1kc2kuYyB8IDEyNSArKysr KysrKysrKysrKysrKy0NCj4gICAxIGZpbGUgY2hhbmdlZCwgMTE5IGluc2VydGlvbnMoKyksIDYg ZGVsZXRpb25zKC0pDQo+DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5 bm9wc3lzL2R3LW1pcGktZHNpLmMgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3 LW1pcGktZHNpLmMNCj4gaW5kZXggZjQ1M2RmNGViNTA3Mi4uMTZmZDg3MDU1ZTdiNyAxMDA2NDQN Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zeW5vcHN5cy9kdy1taXBpLWRzaS5jDQo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctbWlwaS1kc2kuYw0KPiBA QCAtMzIsNiArMzIsNyBAQA0KPiAgIA0KPiAgICNkZWZpbmUgSFdWRVJfMTMxCQkJMHgzMTMzMzEw MAkvKiBJUCB2ZXJzaW9uIDEuMzEgKi8NCj4gICAjZGVmaW5lIEhXVkVSXzEzMAkJCTB4MzEzMzMw MDAJLyogSVAgdmVyc2lvbiAxLjMwICovDQo+ICsjZGVmaW5lIEhXVkVSXzEwMQkJCTB4MzEzMDMw MDAJLyogSVAgdmVyc2lvbiAxLjAxICovDQo+ICAgDQo+ICAgI2RlZmluZSBEU0lfVkVSU0lPTgkJ CTB4MDANCj4gICAjZGVmaW5lIFZFUlNJT04JCQkJR0VOTUFTSygzMSwgOCkNCj4gQEAgLTEwMCw2 ICsxMDEsMjUgQEANCj4gICAjZGVmaW5lIERTSV9FRFBJX0NNRF9TSVpFCQkweDY0DQo+ICAgDQo+ ICAgI2RlZmluZSBEU0lfQ01EX01PREVfQ0ZHCQkweDY4DQo+ICsNCj4gKyNkZWZpbmUgRFNJX0RQ SV9DRkcJCQkweDBjDQo+ICsjZGVmaW5lIERTSV9UTVJfTElORV9DRkcJCTB4MjgNCj4gKyNkZWZp bmUgRFNJX1ZUSU1JTkdfQ0ZHCQkJMHgyYw0KPiArI2RlZmluZSBEU0lfUEhZX1RNUl9DRkdfVjEw MQkJMHgzMA0KPiArI2RlZmluZSBEU0lfUEhZX0lGX0NGR19WMTAxCQkweDU4DQo+ICsjZGVmaW5l IERTSV9QSFlfSUZfQ1RSTAkJCTB4NWMNCj4gKyNkZWZpbmUgRFNJX1BIWV9SU1RaX1YxMDEJCTB4 NTQNCj4gKyNkZWZpbmUgRFNJX1BIWV9TVEFUVVNfVjEwMQkJMHg2MA0KPiArI2RlZmluZSBEU0lf UEhZX1RTVF9DVFJMMF9WMTAxCQkweDY0DQo+ICsjZGVmaW5lIERTSV9HRU5fSERSX1YxMDEJCTB4 MzQNCj4gKyNkZWZpbmUgRFNJX0dFTl9QTERfREFUQV9WMTAxCQkweDM4DQo+ICsjZGVmaW5lIERT SV9DTURfTU9ERV9DRkdfVjEwMQkJMHgyNA0KPiArI2RlZmluZSBEU0lfQ01EX1BLVF9TVEFUVVNf VjEwMQkJMHgzYw0KPiArI2RlZmluZSBEU0lfVklEX1BLVF9DRkcJCQkweDIwDQo+ICsjZGVmaW5l IERTSV9WSURfTU9ERV9DRkdfVjEwMQkJMHgxYw0KPiArI2RlZmluZSBEU0lfVE9fQ05UX0NGR19W MTAxCQkweDQwDQo+ICsjZGVmaW5lIERTSV9QQ0tIRExfQ0ZHX1YxMDEJCTB4MTgNCj4gKw0KPiAg ICNkZWZpbmUgTUFYX1JEX1BLVF9TSVpFX0xQCQlCSVQoMjQpDQo+ICAgI2RlZmluZSBEQ1NfTFdf VFhfTFAJCQlCSVQoMTkpDQo+ICAgI2RlZmluZSBEQ1NfU1JfMFBfVFhfTFAJCQlCSVQoMTgpDQo+ IEBAIC0xMjcsNiArMTQ3LDMzIEBADQo+ICAgCQkJCQkgR0VOX1NXXzFQX1RYX0xQIHwgXA0KPiAg IAkJCQkJIEdFTl9TV18wUF9UWF9MUCkNCj4gICANCj4gKyNkZWZpbmUgRU5fVEVBUl9GWF9WMTAx CQkJQklUKDE0KQ0KPiArI2RlZmluZSBEQ1NfTFdfVFhfTFBfVjEwMQkJQklUKDEyKQ0KPiArI2Rl ZmluZSBHRU5fTFdfVFhfTFBfVjEwMQkJQklUKDExKQ0KPiArI2RlZmluZSBNQVhfUkRfUEtUX1NJ WkVfTFBfVjEwMQkJQklUKDEwKQ0KPiArI2RlZmluZSBEQ1NfU1dfMlBfVFhfTFBfVjEwMQkJQklU KDkpDQo+ICsjZGVmaW5lIERDU19TV18xUF9UWF9MUF9WMTAxCQlCSVQoOCkNCj4gKyNkZWZpbmUg RENTX1NXXzBQX1RYX0xQX1YxMDEJCUJJVCg3KQ0KPiArI2RlZmluZSBHRU5fU1JfMlBfVFhfTFBf VjEwMQkJQklUKDYpDQo+ICsjZGVmaW5lIEdFTl9TUl8xUF9UWF9MUF9WMTAxCQlCSVQoNSkNCj4g KyNkZWZpbmUgR0VOX1NSXzBQX1RYX0xQX1YxMDEJCUJJVCg0KQ0KPiArI2RlZmluZSBHRU5fU1df MlBfVFhfTFBfVjEwMQkJQklUKDMpDQo+ICsjZGVmaW5lIEdFTl9TV18xUF9UWF9MUF9WMTAxCQlC SVQoMikNCj4gKyNkZWZpbmUgR0VOX1NXXzBQX1RYX0xQX1YxMDEJCUJJVCgxKQ0KPiArDQo+ICsj ZGVmaW5lIENNRF9NT0RFX0FMTF9MUF9WMTAxCQkoRENTX0xXX1RYX0xQX1YxMDEgfCBcDQo+ICsJ CQkJCSBHRU5fTFdfVFhfTFBfVjEwMSB8IFwNCj4gKwkJCQkJIE1BWF9SRF9QS1RfU0laRV9MUF9W MTAxIHwgXA0KPiArCQkJCQkgRENTX1NXXzJQX1RYX0xQX1YxMDEgfCBcDQo+ICsJCQkJCSBEQ1Nf U1dfMVBfVFhfTFBfVjEwMSB8IFwNCj4gKwkJCQkJIERDU19TV18wUF9UWF9MUF9WMTAxIHwgXA0K PiArCQkJCQkgR0VOX1NSXzJQX1RYX0xQX1YxMDEgfCBcDQo+ICsJCQkJCSBHRU5fU1JfMVBfVFhf TFBfVjEwMSB8IFwNCj4gKwkJCQkJIEdFTl9TUl8wUF9UWF9MUF9WMTAxIHwgXA0KPiArCQkJCQkg R0VOX1NXXzJQX1RYX0xQX1YxMDEgfCBcDQo+ICsJCQkJCSBHRU5fU1dfMVBfVFhfTFBfVjEwMSB8 IFwNCj4gKwkJCQkJIEdFTl9TV18wUF9UWF9MUF9WMTAxKQ0KPiArDQo+ICAgI2RlZmluZSBEU0lf R0VOX0hEUgkJCTB4NmMNCj4gICAjZGVmaW5lIERTSV9HRU5fUExEX0RBVEEJCTB4NzANCj4gICAN Cj4gQEAgLTE2NSw2ICsyMTIsMTEgQEANCj4gICAjZGVmaW5lIERTSV9JTlRfTVNLMAkJCTB4YzQN Cj4gICAjZGVmaW5lIERTSV9JTlRfTVNLMQkJCTB4YzgNCj4gICANCj4gKyNkZWZpbmUgRFNJX0VS Uk9SX1NUMF9WMTAxCQkweDQ0DQo+ICsjZGVmaW5lIERTSV9FUlJPUl9TVDFfVjEwMQkJMHg0OA0K PiArI2RlZmluZSBEU0lfRVJST1JfTVNLMF9WMTAxCQkweDRjDQo+ICsjZGVmaW5lIERTSV9FUlJP Ul9NU0sxX1YxMDEJCTB4NTANCj4gKw0KPiAgICNkZWZpbmUgRFNJX1BIWV9UTVJfUkRfQ0ZHCQkw eGY0DQo+ICAgDQo+ICAgI2RlZmluZSBQSFlfU1RBVFVTX1RJTUVPVVRfVVMJCTEwMDAwDQo+IEBA IC0zNTksNiArNDExLDQ5IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHdfbWlwaV9kc2lfdmFyaWFu dCBkd19taXBpX2RzaV92MTMwX3YxMzFfbGF5b3V0ID0gew0KPiAgIAkuY2ZnX2dlbl9wYXlsb2Fk ID0JCVJFR19GSUVMRChEU0lfR0VOX1BMRF9EQVRBLCAwLCAzMSksDQo+ICAgfTsNCj4gICANCj4g K3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHdfbWlwaV9kc2lfdmFyaWFudCBkd19taXBpX2RzaV92MTAx X2xheW91dCA9IHsNCj4gKwkuY2ZnX2RwaV92aWQgPQkJCVJFR19GSUVMRChEU0lfRFBJX0NGRywg MCwgMSksDQo+ICsJLmNmZ19kcGlfY29sb3JfY29kaW5nID0JCVJFR19GSUVMRChEU0lfRFBJX0NG RywgMiwgNCksDQo+ICsJLmNmZ19kcGlfMThsb29zZWx5X2VuID0JCVJFR19GSUVMRChEU0lfRFBJ X0NGRywgMTAsIDEwKSwNCj4gKwkuY2ZnX2RwaV92c3luY19hY3RpdmVfbG93ID0JUkVHX0ZJRUxE KERTSV9EUElfQ0ZHLCA2LCA2KSwNCj4gKwkuY2ZnX2RwaV9oc3luY19hY3RpdmVfbG93ID0JUkVH X0ZJRUxEKERTSV9EUElfQ0ZHLCA3LCA3KSwNCj4gKwkuY2ZnX2NtZF9tb2RlX2VuID0JCVJFR19G SUVMRChEU0lfQ01EX01PREVfQ0ZHX1YxMDEsIDAsIDApLA0KPiArCS5jZmdfY21kX21vZGVfYWxs X2xwX2VuID0JUkVHX0ZJRUxEKERTSV9DTURfTU9ERV9DRkdfVjEwMSwgMSwgMTIpLA0KPiArCS5j ZmdfY21kX21vZGVfYWNrX3Jxc3RfZW4gPQlSRUdfRklFTEQoRFNJX0NNRF9NT0RFX0NGR19WMTAx LCAxMywgMTMpLA0KPiArCS5jZmdfY21kX3BrdF9zdGF0dXMgPQkJUkVHX0ZJRUxEKERTSV9DTURf UEtUX1NUQVRVU19WMTAxLCAwLCAxNCksDQo+ICsJLmNmZ192aWRfbW9kZV9lbiA9CQlSRUdfRklF TEQoRFNJX1ZJRF9NT0RFX0NGR19WMTAxLCAwLCAwKSwNCj4gKwkuY2ZnX3ZpZF9tb2RlX3R5cGUg PQkJUkVHX0ZJRUxEKERTSV9WSURfTU9ERV9DRkdfVjEwMSwgMSwgMiksDQo+ICsJLmNmZ192aWRf bW9kZV9sb3dfcG93ZXIgPQlSRUdfRklFTEQoRFNJX1ZJRF9NT0RFX0NGR19WMTAxLCAzLCA4KSwN Cj4gKwkuY2ZnX3ZpZF9wa3Rfc2l6ZSA9CQlSRUdfRklFTEQoRFNJX1ZJRF9QS1RfQ0ZHLCAwLCAx MCksDQo+ICsJLmNmZ192aWRfaHNhX3RpbWUgPQkJUkVHX0ZJRUxEKERTSV9UTVJfTElORV9DRkcs IDAsIDgpLA0KPiArCS5jZmdfdmlkX2hicF90aW1lID0JCVJFR19GSUVMRChEU0lfVE1SX0xJTkVf Q0ZHLCA5LCAxNyksDQo+ICsJLmNmZ192aWRfaGxpbmVfdGltZSA9CQlSRUdfRklFTEQoRFNJX1RN Ul9MSU5FX0NGRywgMTgsIDMxKSwNCj4gKwkuY2ZnX3ZpZF92c2FfdGltZSA9CQlSRUdfRklFTEQo RFNJX1ZUSU1JTkdfQ0ZHLCAwLCAzKSwNCj4gKwkuY2ZnX3ZpZF92YnBfdGltZSA9CQlSRUdfRklF TEQoRFNJX1ZUSU1JTkdfQ0ZHLCA0LCA5KSwNCj4gKwkuY2ZnX3ZpZF92ZnBfdGltZSA9CQlSRUdf RklFTEQoRFNJX1ZUSU1JTkdfQ0ZHLCAxMCwgMTUpLA0KPiArCS5jZmdfdmlkX3ZhY3RpdmVfdGlt ZSA9CQlSRUdfRklFTEQoRFNJX1ZUSU1JTkdfQ0ZHLCAxNiwgMjYpLA0KPiArCS5jZmdfcGh5X3R4 cmVxdWVzdGNsa2hzID0JUkVHX0ZJRUxEKERTSV9QSFlfSUZfQ1RSTCwgMCwgMCksDQo+ICsJLmNm Z19waHlfYnRhX3RpbWUgPQkJUkVHX0ZJRUxEKERTSV9QSFlfVE1SX0NGR19WMTAxLCAwLCAxMSks DQo+ICsJLmNmZ19waHlfbHAyaHNfdGltZSA9CQlSRUdfRklFTEQoRFNJX1BIWV9UTVJfQ0ZHX1Yx MDEsIDEyLCAxOSksDQo+ICsJLmNmZ19waHlfaHMybHBfdGltZSA9CQlSRUdfRklFTEQoRFNJX1BI WV9UTVJfQ0ZHX1YxMDEsIDIwLCAyNyksDQo+ICsJLmNmZ19waHlfdGVzdGNsciA9CQlSRUdfRklF TEQoRFNJX1BIWV9UU1RfQ1RSTDBfVjEwMSwgMCwgMCksDQo+ICsJLmNmZ19waHlfdW5zaHV0ZG93 bnogPQkJUkVHX0ZJRUxEKERTSV9QSFlfUlNUWl9WMTAxLCAwLCAwKSwNCj4gKwkuY2ZnX3BoeV91 bnJzdHogPQkJUkVHX0ZJRUxEKERTSV9QSFlfUlNUWl9WMTAxLCAxLCAxKSwNCj4gKwkuY2ZnX3Bo eV9lbmFibGVjbGsgPQkJUkVHX0ZJRUxEKERTSV9QSFlfUlNUWl9WMTAxLCAyLCAyKSwNCj4gKwku Y2ZnX3BoeV9ubGFuZXMgPQkJUkVHX0ZJRUxEKERTSV9QSFlfSUZfQ0ZHX1YxMDEsIDAsIDEpLA0K PiArCS5jZmdfcGh5X3N0b3Bfd2FpdF90aW1lID0JUkVHX0ZJRUxEKERTSV9QSFlfSUZfQ0ZHX1Yx MDEsIDIsIDkpLA0KPiArCS5jZmdfcGh5X3N0YXR1cyA9CQlSRUdfRklFTEQoRFNJX1BIWV9TVEFU VVNfVjEwMSwgMCwgMiksDQo+ICsJLmNmZ19wY2toZGxfY2ZnID0JCVJFR19GSUVMRChEU0lfUENL SERMX0NGR19WMTAxLCAwLCA0KSwNCj4gKwkuY2ZnX2hzdHhfdGltZW91dF9jb3VudGVyID0JUkVH X0ZJRUxEKERTSV9UT19DTlRfQ0ZHX1YxMDEsIDAsIDE1KSwNCj4gKwkuY2ZnX2xwcnhfdGltZW91 dF9jb3VudGVyID0JUkVHX0ZJRUxEKERTSV9UT19DTlRfQ0ZHX1YxMDEsIDE2LCAzMSksDQo+ICsJ LmNmZ19pbnRfc3RhdDAgPQkJUkVHX0ZJRUxEKERTSV9FUlJPUl9TVDBfVjEwMSwgMCwgMjApLA0K PiArCS5jZmdfaW50X3N0YXQxID0JCVJFR19GSUVMRChEU0lfRVJST1JfU1QxX1YxMDEsIDAsIDE3 KSwNCj4gKwkuY2ZnX2ludF9tYXNrMCA9CQlSRUdfRklFTEQoRFNJX0VSUk9SX01TSzBfVjEwMSwg MCwgMjApLA0KPiArCS5jZmdfaW50X21hc2sxID0JCVJFR19GSUVMRChEU0lfRVJST1JfTVNLMV9W MTAxLCAwLCAxNyksDQo+ICsJLmNmZ19nZW5faGRyID0JCQlSRUdfRklFTEQoRFNJX0dFTl9IRFJf VjEwMSwgMCwgMzEpLA0KPiArCS5jZmdfZ2VuX3BheWxvYWQgPQkJUkVHX0ZJRUxEKERTSV9HRU5f UExEX0RBVEFfVjEwMSwgMCwgMzEpLA0KPiArfTsNCj4gKw0KPiAgIC8qDQo+ICAgICogQ2hlY2sg aWYgZWl0aGVyIGEgbGluayB0byBhIG1hc3RlciBvciBzbGF2ZSBpcyBwcmVzZW50DQo+ICAgICov DQo+IEBAIC00NjYsNiArNTYxLDkgQEAgc3RhdGljIHZvaWQgZHdfbWlwaV9tZXNzYWdlX2NvbmZp ZyhzdHJ1Y3QgZHdfbWlwaV9kc2kgKmRzaSwNCj4gICAJY2FzZSBIV1ZFUl8xMzE6DQo+ICAgCQlj bWRfbW9kZV9scCA9IENNRF9NT0RFX0FMTF9MUDsNCj4gICAJCWJyZWFrOw0KPiArCWNhc2UgSFdW RVJfMTAxOg0KPiArCQljbWRfbW9kZV9scCA9IENNRF9NT0RFX0FMTF9MUF9WMTAxOw0KPiArCQli cmVhazsNCj4gICAJfQ0KPiAgIA0KPiAgIAlpZiAobXNnLT5mbGFncyAmIE1JUElfRFNJX01TR19S RVFfQUNLKQ0KPiBAQCAtNjQ0LDcgKzc0Miw3IEBAIHN0YXRpYyB2b2lkIGR3X21pcGlfZHNpX3Zp ZGVvX21vZGVfY29uZmlnKHN0cnVjdCBkd19taXBpX2RzaSAqZHNpKQ0KPiAgIAkJCQkgICBWSURf TU9ERV9UWVBFX05PTl9CVVJTVF9TWU5DX0VWRU5UUyk7DQo+ICAgDQo+ICAgI2lmZGVmIENPTkZJ R19ERUJVR19GUw0KPiAtCWlmIChkc2ktPnZwZykgew0KPiArCWlmIChkc2ktPmh3X3ZlcnNpb24g PiBIV1ZFUl8xMDEgJiYgZHNpLT52cGcpIHsNCj4gICAJCXJlZ21hcF9maWVsZF93cml0ZShkc2kt PmZpZWxkX3ZpZF9tb2RlX3ZwZ19lbiwgMSk7DQo+ICAgCQlyZWdtYXBfZmllbGRfd3JpdGUoZHNp LT5maWVsZF92aWRfbW9kZV92cGdfaG9yaXosDQo+ICAgCQkJCSAgIGRzaS0+dnBnX2hvcml6b250 YWwgPyAxIDogMCk7DQo+IEBAIC02NjIsOSArNzYwLDE1IEBAIHN0YXRpYyB2b2lkIGR3X21pcGlf ZHNpX3NldF9tb2RlKHN0cnVjdCBkd19taXBpX2RzaSAqZHNpLA0KPiAgIA0KPiAgIAkJZHdfbWlw aV9kc2lfdmlkZW9fbW9kZV9jb25maWcoZHNpKTsNCj4gICANCj4gKwkJaWYgKGRzaS0+aHdfdmVy c2lvbiA9PSBIV1ZFUl8xMDEpDQo+ICsJCQlyZWdtYXBfZmllbGRfd3JpdGUoZHNpLT5maWVsZF92 aWRfbW9kZV9lbiwgMSk7DQo+ICsNCj4gICAJCXJlZ21hcF9maWVsZF93cml0ZShkc2ktPmZpZWxk X3BoeV90eHJlcXVlc3RjbGtocywgMSk7DQo+ICAgCX0gZWxzZSB7DQo+ICAgCQlyZWdtYXBfZmll bGRfd3JpdGUoZHNpLT5maWVsZF9jbWRfbW9kZV9lbiwgMSk7DQo+ICsNCj4gKwkJaWYgKGRzaS0+ aHdfdmVyc2lvbiA9PSBIV1ZFUl8xMDEpDQo+ICsJCQlyZWdtYXBfZmllbGRfd3JpdGUoZHNpLT5m aWVsZF92aWRfbW9kZV9lbiwgMCk7DQo+ICAgCX0NCj4gICANCj4gICAJcmVnbWFwX3dyaXRlKGRz aS0+cmVncywgRFNJX1BXUl9VUCwgUE9XRVJVUCk7DQo+IEBAIC04NTYsOSArOTYwLDEzIEBAIHN0 YXRpYyB2b2lkIGR3X21pcGlfZHNpX2RwaHlfdGltaW5nX2NvbmZpZyhzdHJ1Y3QgZHdfbWlwaV9k c2kgKmRzaSkNCj4gICAJcmVnbWFwX2ZpZWxkX3dyaXRlKGRzaS0+ZmllbGRfcGh5X2xwMmhzX3Rp bWUsIHRpbWluZy5kYXRhX2xwMmhzKTsNCj4gICAJcmVnbWFwX2ZpZWxkX3dyaXRlKGRzaS0+Zmll bGRfcGh5X2hzMmxwX3RpbWUsIHRpbWluZy5kYXRhX2hzMmxwKTsNCj4gICANCj4gLQlyZWdtYXBf ZmllbGRfd3JpdGUoZHNpLT5maWVsZF9waHlfbWF4X3JkX3RpbWUsIDEwMDAwKTsNCj4gLQlyZWdt YXBfZmllbGRfd3JpdGUoZHNpLT5maWVsZF9waHlfY2xraHMybHBfdGltZSwgdGltaW5nLmNsa19o czJscCk7DQo+IC0JcmVnbWFwX2ZpZWxkX3dyaXRlKGRzaS0+ZmllbGRfcGh5X2Nsa2xwMmhzX3Rp bWUsIHRpbWluZy5jbGtfbHAyaHMpOw0KPiArCWlmIChkc2ktPmh3X3ZlcnNpb24gPiBIV1ZFUl8x MDEpIHsNCj4gKwkJcmVnbWFwX2ZpZWxkX3dyaXRlKGRzaS0+ZmllbGRfcGh5X21heF9yZF90aW1l LCAxMDAwMCk7DQo+ICsJCXJlZ21hcF9maWVsZF93cml0ZShkc2ktPmZpZWxkX3BoeV9jbGtoczJs cF90aW1lLA0KPiArCQkJCSAgIHRpbWluZy5jbGtfaHMybHApOw0KPiArCQlyZWdtYXBfZmllbGRf d3JpdGUoZHNpLT5maWVsZF9waHlfY2xrbHAyaHNfdGltZSwNCj4gKwkJCQkgICB0aW1pbmcuY2xr X2xwMmhzKTsNCj4gKwl9DQo+ICAgfQ0KPiAgIA0KPiAgIHN0YXRpYyB2b2lkIGR3X21pcGlfZHNp X2RwaHlfaW50ZXJmYWNlX2NvbmZpZyhzdHJ1Y3QgZHdfbWlwaV9kc2kgKmRzaSkNCj4gQEAgLTg3 OSw3ICs5ODcsOCBAQCBzdGF0aWMgdm9pZCBkd19taXBpX2RzaV9kcGh5X2luaXQoc3RydWN0IGR3 X21pcGlfZHNpICpkc2kpDQo+ICAgCXJlZ21hcF9maWVsZF93cml0ZShkc2ktPmZpZWxkX3BoeV91 bnJzdHosIDApOw0KPiAgIAlyZWdtYXBfZmllbGRfd3JpdGUoZHNpLT5maWVsZF9waHlfdW5zaHV0 ZG93bnosIDApOw0KPiAgIA0KPiAtCXJlZ21hcF9maWVsZF93cml0ZShkc2ktPmZpZWxkX3BoeV9m b3JjZXBsbCwgMCk7DQo+ICsJaWYgKGRzaS0+aHdfdmVyc2lvbiA+IEhXVkVSXzEwMSkNCj4gKwkJ cmVnbWFwX2ZpZWxkX3dyaXRlKGRzaS0+ZmllbGRfcGh5X2ZvcmNlcGxsLCAwKTsNCj4gICANCj4g ICAJcmVnbWFwX2ZpZWxkX3dyaXRlKGRzaS0+ZmllbGRfcGh5X3Rlc3RjbHIsIDApOw0KPiAgIAly ZWdtYXBfZmllbGRfd3JpdGUoZHNpLT5maWVsZF9waHlfdGVzdGNsciwgMSk7DQo+IEBAIC04OTUs NyArMTAwNCw4IEBAIHN0YXRpYyB2b2lkIGR3X21pcGlfZHNpX2RwaHlfZW5hYmxlKHN0cnVjdCBk d19taXBpX2RzaSAqZHNpKQ0KPiAgIAlyZWdtYXBfZmllbGRfd3JpdGUoZHNpLT5maWVsZF9waHlf dW5yc3R6LCAxKTsNCj4gICAJcmVnbWFwX2ZpZWxkX3dyaXRlKGRzaS0+ZmllbGRfcGh5X3Vuc2h1 dGRvd256LCAxKTsNCj4gICANCj4gLQlyZWdtYXBfZmllbGRfd3JpdGUoZHNpLT5maWVsZF9waHlf Zm9yY2VwbGwsIDEpOw0KPiArCWlmIChkc2ktPmh3X3ZlcnNpb24gPiBIV1ZFUl8xMDEpDQo+ICsJ CXJlZ21hcF9maWVsZF93cml0ZShkc2ktPmZpZWxkX3BoeV9mb3JjZXBsbCwgMSk7DQo+ICAgDQo+ ICAgCXJldCA9IHJlZ21hcF9maWVsZF9yZWFkX3BvbGxfdGltZW91dChkc2ktPmZpZWxkX3BoeV9z dGF0dXMsDQo+ICAgCQkJCQkgICAgIHZhbCwgdmFsICYgUEhZX0xPQ0ssDQo+IEBAIC0xMTMyLDYg KzEyNDIsOSBAQCBzdGF0aWMgaW50IGR3X21pcGlfZHNpX3JlZ21hcF9maWVsZHNfaW5pdChzdHJ1 Y3QgZHdfbWlwaV9kc2kgKmRzaSkNCj4gICAJY2FzZSBIV1ZFUl8xMzE6DQo+ICAgCQl2YXJpYW50 ID0gJmR3X21pcGlfZHNpX3YxMzBfdjEzMV9sYXlvdXQ7DQo+ICAgCQlicmVhazsNCj4gKwljYXNl IEhXVkVSXzEwMToNCj4gKwkJdmFyaWFudCA9ICZkd19taXBpX2RzaV92MTAxX2xheW91dDsNCj4g KwkJYnJlYWs7DQo+ICAgCWRlZmF1bHQ6DQo+ICAgCQlEUk1fRVJST1IoIlVucmVjb2duaXplZCBE U0kgaG9zdCBjb250cm9sbGVyIEhXIHJldmlzaW9uXG4iKTsNCj4gICAJCXJldHVybiAtRU5PREVW Ow0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTGludXgt cm9ja2NoaXAgbWFpbGluZyBsaXN0CkxpbnV4LXJvY2tjaGlwQGxpc3RzLmluZnJhZGVhZC5vcmcK aHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1yb2NrY2hp cAo=