From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH] drm/i915/sdvo: Tidy up commentary Date: Wed, 14 Feb 2018 12:20:47 +0200 Message-ID: <87y3jv6feo.fsf@intel.com> References: <20180214090905.4747-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id C9AC189361 for ; Wed, 14 Feb 2018 10:20:55 +0000 (UTC) In-Reply-To: <20180214090905.4747-1-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAxNCBGZWIgMjAxOCwgQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28u dWs+IHdyb3RlOgo+IERyb3AgdGhlIGtlcm5lbGRvYyBtYXJrdXAgZnJvbSB0aGUgbm9uLWtlcm5l bGRvYyBjb21tZW50cyBhbmQgY29udmVydAo+IHRoZSBtdWx0aS1saW5lIGNvbW1lbnRzIHRvIHRo ZSBjYW5vbmljYWwgZm9ybWF0Lgo+Cj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5j OjIyMzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnaW50ZWxfc2R2bycg bm90IGRlc2NyaWJlZCBpbiAnaW50ZWxfc2R2b193cml0ZV9zZHZveCcKPiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9zZHZvLmM6MjIzOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3Ig bWVtYmVyICd2YWwnIG5vdCBkZXNjcmliZWQgaW4gJ2ludGVsX3Nkdm9fd3JpdGVfc2R2b3gnCj4g ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jOjY1Mzogd2FybmluZzogRnVuY3Rpb24g cGFyYW1ldGVyIG9yIG1lbWJlciAnaW50ZWxfc2R2bycgbm90IGRlc2NyaWJlZCBpbiAnaW50ZWxf c2R2b19nZXRfdHJhaW5lZF9pbnB1dHMnCj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2 by5jOjY1Mzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnaW5wdXRfMScg bm90IGRlc2NyaWJlZCBpbiAnaW50ZWxfc2R2b19nZXRfdHJhaW5lZF9pbnB1dHMnCj4gZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jOjY1Mzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1l dGVyIG9yIG1lbWJlciAnaW5wdXRfMicgbm90IGRlc2NyaWJlZCBpbiAnaW50ZWxfc2R2b19nZXRf dHJhaW5lZF9pbnB1dHMnCj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jOjIzMTE6 IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2Rldl9wcml2JyBub3QgZGVz Y3JpYmVkIGluICdpbnRlbF9zZHZvX3NlbGVjdF9kZGNfYnVzJwo+IGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3Nkdm8uYzoyMzExOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVt YmVyICdzZHZvJyBub3QgZGVzY3JpYmVkIGluICdpbnRlbF9zZHZvX3NlbGVjdF9kZGNfYnVzJwo+ Cj4gU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+ CgpSZXZpZXdlZC1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KCgo+IC0t LQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zZHZvLmMgfCA4MiArKysrKysrKysrKysr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KPiAgMSBmaWxlIGNoYW5nZWQsIDUzIGluc2VydGlv bnMoKyksIDI5IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3Nkdm8uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nkdm8uYwo+IGlu ZGV4IDBiZjk3ZWQ1ZmZhYy4uMGMxNGQxYzA0Y2JkIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3Nkdm8uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3Nkdm8uYwo+IEBAIC0yMTQsNyArMjE0LDcgQEAgc3RhdGljIGJvb2wKPiAgaW50ZWxfc2R2b19j cmVhdGVfZW5oYW5jZV9wcm9wZXJ0eShzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2bywKPiAg CQkJCSAgIHN0cnVjdCBpbnRlbF9zZHZvX2Nvbm5lY3RvciAqaW50ZWxfc2R2b19jb25uZWN0b3Ip Owo+ICAKPiAtLyoqCj4gKy8qCj4gICAqIFdyaXRlcyB0aGUgU0RWT0Igb3IgU0RWT0Mgd2l0aCB0 aGUgZ2l2ZW4gdmFsdWUsIGJ1dCBhbHdheXMgd3JpdGVzIGJvdGgKPiAgICogU0RWT0IgYW5kIFNE Vk9DIHRvIHdvcmsgYXJvdW5kIGFwcGFyZW50IGhhcmR3YXJlIGlzc3VlcyAoYWNjb3JkaW5nIHRv Cj4gICAqIGNvbW1lbnRzIGluIHRoZSBCSU9TKS4KPiBAQCAtMjUwLDEwICsyNTAsMTAgQEAgc3Rh dGljIHZvaWQgaW50ZWxfc2R2b193cml0ZV9zZHZveChzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxf c2R2bywgdTMyIHZhbCkKPiAgCSAqIHdyaXRpbmcgdGhlbSBvbmx5IG9uY2UgZG9lc24ndCBhcHBl YXIgdG8gJ3N0aWNrJy4KPiAgCSAqIFRoZSBCSU9TIGRvZXMgdGhpcyB0b28uIFlheSwgbWFnaWMK PiAgCSAqLwo+IC0JZm9yIChpID0gMDsgaSA8IDI7IGkrKykKPiAtCXsKPiArCWZvciAoaSA9IDA7 IGkgPCAyOyBpKyspIHsKPiAgCQlJOTE1X1dSSVRFKEdFTjNfU0RWT0IsIGJ2YWwpOwo+ICAJCVBP U1RJTkdfUkVBRChHRU4zX1NEVk9CKTsKPiArCj4gIAkJSTkxNV9XUklURShHRU4zX1NEVk9DLCBj dmFsKTsKPiAgCQlQT1NUSU5HX1JFQUQoR0VOM19TRFZPQyk7Cj4gIAl9Cj4gQEAgLTY0Myw3ICs2 NDMsNyBAQCBzdGF0aWMgYm9vbCBpbnRlbF9zZHZvX3NldF90YXJnZXRfaW5wdXQoc3RydWN0IGlu dGVsX3Nkdm8gKmludGVsX3Nkdm8pCj4gIAkJCQkgICAgJnRhcmdldHMsIHNpemVvZih0YXJnZXRz KSk7Cj4gIH0KPiAgCj4gLS8qKgo+ICsvKgo+ICAgKiBSZXR1cm4gd2hldGhlciBlYWNoIGlucHV0 IGlzIHRyYWluZWQuCj4gICAqCj4gICAqIFRoaXMgZnVuY3Rpb24gaXMgbWFraW5nIGFuIGFzc3Vt cHRpb24gYWJvdXQgdGhlIGxheW91dCBvZiB0aGUgcmVzcG9uc2UsCj4gQEAgLTEwNjEsOCArMTA2 MSwxMCBAQCBpbnRlbF9zZHZvX3NldF9vdXRwdXRfdGltaW5nc19mcm9tX21vZGUoc3RydWN0IGlu dGVsX3Nkdm8gKmludGVsX3Nkdm8sCj4gIAlyZXR1cm4gdHJ1ZTsKPiAgfQo+ICAKPiAtLyogQXNr cyB0aGUgc2R2byBjb250cm9sbGVyIGZvciB0aGUgcHJlZmVycmVkIGlucHV0IG1vZGUgZ2l2ZW4g dGhlIG91dHB1dCBtb2RlLgo+IC0gKiBVbmZvcnR1bmF0ZWx5IHdlIGhhdmUgdG8gc2V0IHVwIHRo ZSBmdWxsIG91dHB1dCBtb2RlIHRvIGRvIHRoYXQuICovCj4gKy8qCj4gKyAqIEFza3MgdGhlIHNk dm8gY29udHJvbGxlciBmb3IgdGhlIHByZWZlcnJlZCBpbnB1dCBtb2RlIGdpdmVuIHRoZSBvdXRw dXQgbW9kZS4KPiArICogVW5mb3J0dW5hdGVseSB3ZSBoYXZlIHRvIHNldCB1cCB0aGUgZnVsbCBv dXRwdXQgbW9kZSB0byBkbyB0aGF0Lgo+ICsgKi8KPiAgc3RhdGljIGJvb2wKPiAgaW50ZWxfc2R2 b19nZXRfcHJlZmVycmVkX2lucHV0X21vZGUoc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8s Cj4gIAkJCQkgICAgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUsCj4gQEAgLTEw OTUsOCArMTA5NywxMCBAQCBzdGF0aWMgdm9pZCBpOXh4X2FkanVzdF9zZHZvX3R2X2Nsb2NrKHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKPiAgCXVuc2lnbmVkIGRvdGNsb2Nr ID0gcGlwZV9jb25maWctPnBvcnRfY2xvY2s7Cj4gIAlzdHJ1Y3QgZHBsbCAqY2xvY2sgPSAmcGlw ZV9jb25maWctPmRwbGw7Cj4gIAo+IC0JLyogU0RWTyBUViBoYXMgZml4ZWQgUExMIHZhbHVlcyBk ZXBlbmQgb24gaXRzIGNsb2NrIHJhbmdlLAo+IC0JICAgdGhpcyBtaXJyb3JzIHZiaW9zIHNldHRp bmcuICovCj4gKwkvKgo+ICsJICogU0RWTyBUViBoYXMgZml4ZWQgUExMIHZhbHVlcyBkZXBlbmQg b24gaXRzIGNsb2NrIHJhbmdlLAo+ICsJICogdGhpcyBtaXJyb3JzIHZiaW9zIHNldHRpbmcuCj4g KwkgKi8KPiAgCWlmIChkb3RjbG9jayA+PSAxMDAwMDAgJiYgZG90Y2xvY2sgPCAxNDA1MDApIHsK PiAgCQljbG9jay0+cDEgPSAyOwo+ICAJCWNsb2NrLT5wMiA9IDEwOwo+IEBAIC0xMTMyLDcgKzEx MzYsOCBAQCBzdGF0aWMgYm9vbCBpbnRlbF9zZHZvX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyLAo+ICAJaWYgKEhBU19QQ0hfU1BMSVQodG9faTkxNShlbmNvZGVy LT5iYXNlLmRldikpKQo+ICAJCXBpcGVfY29uZmlnLT5oYXNfcGNoX2VuY29kZXIgPSB0cnVlOwo+ ICAKPiAtCS8qIFdlIG5lZWQgdG8gY29uc3RydWN0IHByZWZlcnJlZCBpbnB1dCB0aW1pbmdzIGJh c2VkIG9uIG91cgo+ICsJLyoKPiArCSAqIFdlIG5lZWQgdG8gY29uc3RydWN0IHByZWZlcnJlZCBp bnB1dCB0aW1pbmdzIGJhc2VkIG9uIG91cgo+ICAJICogb3V0cHV0IHRpbWluZ3MuICBUbyBkbyB0 aGF0LCB3ZSBoYXZlIHRvIHNldCB0aGUgb3V0cHV0Cj4gIAkgKiB0aW1pbmdzLCBldmVuIHRob3Vn aCB0aGlzIGlzbid0IHJlYWxseSB0aGUgcmlnaHQgcGxhY2UgaW4KPiAgCSAqIHRoZSBzZXF1ZW5j ZSB0byBkbyBpdC4gT2ggd2VsbC4KPiBAQCAtMTE1NSw3ICsxMTYwLDggQEAgc3RhdGljIGJvb2wg aW50ZWxfc2R2b19jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwK PiAgCQkJCQkJCSAgIGFkanVzdGVkX21vZGUpOwo+ICAJfQo+ICAKPiAtCS8qIE1ha2UgdGhlIENS VEMgY29kZSBmYWN0b3IgaW4gdGhlIFNEVk8gcGl4ZWwgbXVsdGlwbGllci4gIFRoZQo+ICsJLyoK PiArCSAqIE1ha2UgdGhlIENSVEMgY29kZSBmYWN0b3IgaW4gdGhlIFNEVk8gcGl4ZWwgbXVsdGlw bGllci4gIFRoZQo+ICAJICogU0RWTyBkZXZpY2Ugd2lsbCBmYWN0b3Igb3V0IHRoZSBtdWx0aXBs aWVyIGR1cmluZyBtb2RlX3NldC4KPiAgCSAqLwo+ICAJcGlwZV9jb25maWctPnBpeGVsX211bHRp cGxpZXIgPQo+IEBAIC0xMTY5LDkgKzExNzUsMTIgQEAgc3RhdGljIGJvb2wgaW50ZWxfc2R2b19j b21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQlwaXBlX2Nv bmZpZy0+aGFzX2F1ZGlvID0gdHJ1ZTsKPiAgCj4gIAlpZiAoaW50ZWxfc2R2b19zdGF0ZS0+YmFz ZS5icm9hZGNhc3RfcmdiID09IElOVEVMX0JST0FEQ0FTVF9SR0JfQVVUTykgewo+IC0JCS8qIFNl ZSBDRUEtODYxLUUgLSA1LjEgRGVmYXVsdCBFbmNvZGluZyBQYXJhbWV0ZXJzICovCj4gLQkJLyog RklYTUU6IFRoaXMgYml0IGlzIG9ubHkgdmFsaWQgd2hlbiB1c2luZyBUTURTIGVuY29kaW5nIGFu ZCA4Cj4gLQkJICogYml0IHBlciBjb2xvciBtb2RlLiAqLwo+ICsJCS8qCj4gKwkJICogU2VlIENF QS04NjEtRSAtIDUuMSBEZWZhdWx0IEVuY29kaW5nIFBhcmFtZXRlcnMKPiArCQkgKgo+ICsJCSAq IEZJWE1FOiBUaGlzIGJpdCBpcyBvbmx5IHZhbGlkIHdoZW4gdXNpbmcgVE1EUyBlbmNvZGluZyBh bmQgOAo+ICsJCSAqIGJpdCBwZXIgY29sb3IgbW9kZS4KPiArCQkgKi8KPiAgCQlpZiAocGlwZV9j b25maWctPmhhc19oZG1pX3NpbmsgJiYKPiAgCQkgICAgZHJtX21hdGNoX2NlYV9tb2RlKGFkanVz dGVkX21vZGUpID4gMSkKPiAgCQkJcGlwZV9jb25maWctPmxpbWl0ZWRfY29sb3JfcmFuZ2UgPSB0 cnVlOwo+IEBAIC0xMjcyLDcgKzEyODEsOCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9zZHZvX3ByZV9l bmFibGUoc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIsCj4gIAo+ICAJaW50ZWxf c2R2b191cGRhdGVfcHJvcHMoaW50ZWxfc2R2bywgc2R2b19zdGF0ZSk7Cj4gIAo+IC0JLyogRmly c3QsIHNldCB0aGUgaW5wdXQgbWFwcGluZyBmb3IgdGhlIGZpcnN0IGlucHV0IHRvIG91ciBjb250 cm9sbGVkCj4gKwkvKgo+ICsJICogRmlyc3QsIHNldCB0aGUgaW5wdXQgbWFwcGluZyBmb3IgdGhl IGZpcnN0IGlucHV0IHRvIG91ciBjb250cm9sbGVkCj4gIAkgKiBvdXRwdXQuIFRoaXMgaXMgb25s eSBjb3JyZWN0IGlmIHdlJ3JlIGEgc2luZ2xlLWlucHV0IGRldmljZSwgaW4KPiAgCSAqIHdoaWNo IGNhc2UgdGhlIGZpcnN0IGlucHV0IGlzIHRoZSBvdXRwdXQgZnJvbSB0aGUgYXBwcm9wcmlhdGUg U0RWTwo+ICAJICogY2hhbm5lbCBvbiB0aGUgbW90aGVyYm9hcmQuICBJbiBhIHR3by1pbnB1dCBk ZXZpY2UsIHRoZSBmaXJzdCBpbnB1dAo+IEBAIC0xNDM1LDggKzE0NDUsMTAgQEAgc3RhdGljIHZv aWQgaW50ZWxfc2R2b19nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ ICAKPiAgCXJldCA9IGludGVsX3Nkdm9fZ2V0X2lucHV0X3RpbWluZyhpbnRlbF9zZHZvLCAmZHRk KTsKPiAgCWlmICghcmV0KSB7Cj4gLQkJLyogU29tZSBzZHZvIGVuY29kZXJzIGFyZSBub3Qgc3Bl YyBjb21wbGlhbnQgYW5kIGRvbid0Cj4gLQkJICogaW1wbGVtZW50IHRoZSBtYW5kYXRvcnkgZ2V0 X3RpbWluZ3MgZnVuY3Rpb24uICovCj4gKwkJLyoKPiArCQkgKiBTb21lIHNkdm8gZW5jb2RlcnMg YXJlIG5vdCBzcGVjIGNvbXBsaWFudCBhbmQgZG9uJ3QKPiArCQkgKiBpbXBsZW1lbnQgdGhlIG1h bmRhdG9yeSBnZXRfdGltaW5ncyBmdW5jdGlvbi4KPiArCQkgKi8KPiAgCQlEUk1fREVCVUdfRFJJ VkVSKCJmYWlsZWQgdG8gcmV0cmlldmUgU0RWTyBEVERcbiIpOwo+ICAJCXBpcGVfY29uZmlnLT5x dWlya3MgfD0gUElQRV9DT05GSUdfUVVJUktfTU9ERV9TWU5DX0ZMQUdTOwo+ICAJfSBlbHNlIHsK PiBAQCAtMTU4NSw3ICsxNTk3LDkgQEAgc3RhdGljIHZvaWQgaW50ZWxfZW5hYmxlX3Nkdm8oc3Ry dWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJaW50ZWxfd2FpdF9mb3JfdmJsYW5rKGRl dl9wcml2LCBpbnRlbF9jcnRjLT5waXBlKTsKPiAgCj4gIAlzdWNjZXNzID0gaW50ZWxfc2R2b19n ZXRfdHJhaW5lZF9pbnB1dHMoaW50ZWxfc2R2bywgJmlucHV0MSwgJmlucHV0Mik7Cj4gLQkvKiBX YXJuIGlmIHRoZSBkZXZpY2UgcmVwb3J0ZWQgZmFpbHVyZSB0byBzeW5jLgo+ICsJLyoKPiArCSAq IFdhcm4gaWYgdGhlIGRldmljZSByZXBvcnRlZCBmYWlsdXJlIHRvIHN5bmMuCj4gKwkgKgo+ICAJ ICogQSBsb3Qgb2YgU0RWTyBkZXZpY2VzIGZhaWwgdG8gbm90aWZ5IG9mIHN5bmMsIGJ1dCBpdCdz Cj4gIAkgKiBhIGdpdmVuIGl0IHRoZSBzdGF0dXMgaXMgYSBzdWNjZXNzLCB3ZSBzdWNjZWVkZWQu Cj4gIAkgKi8KPiBAQCAtMTY3Miw4ICsxNjg2LDEwIEBAIHN0YXRpYyB1aW50MTZfdCBpbnRlbF9z ZHZvX2dldF9ob3RwbHVnX3N1cHBvcnQoc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8pCj4g IAlpZiAoIUk5MTVfSEFTX0hPVFBMVUcoZGV2X3ByaXYpKQo+ICAJCXJldHVybiAwOwo+ICAKPiAt CS8qIEhXIEVycmF0dW06IFNEVk8gSG90cGx1ZyBpcyBicm9rZW4gb24gYWxsIGk5NDVHIGNoaXBz LCB0aGVyZSdzIG5vaXNlCj4gLQkgKiBvbiB0aGUgbGluZS4gKi8KPiArCS8qCj4gKwkgKiBIVyBF cnJhdHVtOiBTRFZPIEhvdHBsdWcgaXMgYnJva2VuIG9uIGFsbCBpOTQ1RyBjaGlwcywgdGhlcmUn cyBub2lzZQo+ICsJICogb24gdGhlIGxpbmUuCj4gKwkgKi8KPiAgCWlmIChJU19JOTQ1RyhkZXZf cHJpdikgfHwgSVNfSTk0NUdNKGRldl9wcml2KSkKPiAgCQlyZXR1cm4gMDsKPiAgCj4gQEAgLTE5 NTcsNyArMTk3Myw4IEBAIHN0YXRpYyB2b2lkIGludGVsX3Nkdm9fZ2V0X3R2X21vZGVzKHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4gIAlEUk1fREVCVUdfS01TKCJbQ09OTkVDVE9S OiVkOiVzXVxuIiwKPiAgCQkgICAgICBjb25uZWN0b3ItPmJhc2UuaWQsIGNvbm5lY3Rvci0+bmFt ZSk7Cj4gIAo+IC0JLyogUmVhZCB0aGUgbGlzdCBvZiBzdXBwb3J0ZWQgaW5wdXQgcmVzb2x1dGlv bnMgZm9yIHRoZSBzZWxlY3RlZCBUVgo+ICsJLyoKPiArCSAqIFJlYWQgdGhlIGxpc3Qgb2Ygc3Vw cG9ydGVkIGlucHV0IHJlc29sdXRpb25zIGZvciB0aGUgc2VsZWN0ZWQgVFYKPiAgCSAqIGZvcm1h dC4KPiAgCSAqLwo+ICAJZm9ybWF0X21hcCA9IDEgPDwgY29ubl9zdGF0ZS0+dHYubW9kZTsKPiBA QCAtMjI2OCw3ICsyMjg1LDggQEAgaW50ZWxfc2R2b19ndWVzc19kZGNfYnVzKHN0cnVjdCBpbnRl bF9zZHZvICpzZHZvKQo+ICAJdWludDE2X3QgbWFzayA9IDA7Cj4gIAl1bnNpZ25lZCBpbnQgbnVt X2JpdHM7Cj4gIAo+IC0JLyogTWFrZSBhIG1hc2sgb2Ygb3V0cHV0cyBsZXNzIHRoYW4gb3IgZXF1 YWwgdG8gb3VyIG93biBwcmlvcml0eSBpbiB0aGUKPiArCS8qCj4gKwkgKiBNYWtlIGEgbWFzayBv ZiBvdXRwdXRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byBvdXIgb3duIHByaW9yaXR5IGluIHRoZQo+ ICAJICogbGlzdC4KPiAgCSAqLwo+ICAJc3dpdGNoIChzZHZvLT5jb250cm9sbGVkX291dHB1dCkg ewo+IEBAIC0yMjk4LDcgKzIzMTYsNyBAQCBpbnRlbF9zZHZvX2d1ZXNzX2RkY19idXMoc3RydWN0 IGludGVsX3Nkdm8gKnNkdm8pCj4gIAlzZHZvLT5kZGNfYnVzID0gMSA8PCBudW1fYml0czsKPiAg fQo+ICAKPiAtLyoqCj4gKy8qCj4gICAqIENob29zZSB0aGUgYXBwcm9wcmlhdGUgRERDIGJ1cyBm b3IgY29udHJvbCBidXMgc3dpdGNoIGNvbW1hbmQgZm9yIHRoaXMKPiAgICogU0RWTyBvdXRwdXQg YmFzZWQgb24gdGhlIGNvbnRyb2xsZWQgb3V0cHV0Lgo+ICAgKgo+IEBAIC0yMzQyLDkgKzIzNjAs MTEgQEAgaW50ZWxfc2R2b19zZWxlY3RfaTJjX2J1cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCj4gIAo+ICAJc2R2by0+aTJjID0gaW50ZWxfZ21idXNfZ2V0X2FkYXB0ZXIoZGV2 X3ByaXYsIHBpbik7Cj4gIAo+IC0JLyogV2l0aCBnbWJ1cyB3ZSBzaG91bGQgYmUgYWJsZSB0byBk cml2ZSBzZHZvIGkyYyBhdCAyTUh6LCBidXQgc29tZWhvdwo+ICsJLyoKPiArCSAqIFdpdGggZ21i dXMgd2Ugc2hvdWxkIGJlIGFibGUgdG8gZHJpdmUgc2R2byBpMmMgYXQgMk1IeiwgYnV0IHNvbWVo b3cKPiAgCSAqIG91ciBjb2RlIHRvdGFsbHkgZmFpbHMgb25jZSB3ZSBzdGFydCB1c2luZyBnbWJ1 cy4gSGVuY2UgZmFsbCBiYWNrIHRvCj4gLQkgKiBiaXQgYmFuZ2luZyBmb3Igbm93LiAqLwo+ICsJ ICogYml0IGJhbmdpbmcgZm9yIG5vdy4KPiArCSAqLwo+ICAJaW50ZWxfZ21idXNfZm9yY2VfYml0 KHNkdm8tPmkyYywgdHJ1ZSk7Cj4gIH0KPiAgCj4gQEAgLTIzNzksNyArMjM5OSw4IEBAIGludGVs X3Nkdm9fZ2V0X3NsYXZlX2FkZHIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ ICAJaWYgKG15X21hcHBpbmctPnNsYXZlX2FkZHIpCj4gIAkJcmV0dXJuIG15X21hcHBpbmctPnNs YXZlX2FkZHI7Cj4gIAo+IC0JLyogSWYgdGhlIEJJT1Mgb25seSBkZXNjcmliZWQgYSBkaWZmZXJl bnQgU0RWTyBkZXZpY2UsIHVzZSB0aGUKPiArCS8qCj4gKwkgKiBJZiB0aGUgQklPUyBvbmx5IGRl c2NyaWJlZCBhIGRpZmZlcmVudCBTRFZPIGRldmljZSwgdXNlIHRoZQo+ICAJICogYWRkcmVzcyB0 aGF0IGl0IGlzbid0IHVzaW5nLgo+ICAJICovCj4gIAlpZiAob3RoZXJfbWFwcGluZy0+c2xhdmVf YWRkcikgewo+IEBAIC0yMzg5LDcgKzI0MTAsOCBAQCBpbnRlbF9zZHZvX2dldF9zbGF2ZV9hZGRy KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCQkJcmV0dXJuIDB4NzA7Cj4g IAl9Cj4gIAo+IC0JLyogTm8gU0RWTyBkZXZpY2UgaW5mbyBpcyBmb3VuZCBmb3IgYW5vdGhlciBE Vk8gcG9ydCwKPiArCS8qCj4gKwkgKiBObyBTRFZPIGRldmljZSBpbmZvIGlzIGZvdW5kIGZvciBh bm90aGVyIERWTyBwb3J0LAo+ICAJICogc28gdXNlIG1hcHBpbmcgYXNzdW1wdGlvbiB3ZSBoYWQg YmVmb3JlIEJJT1MgcGFyc2luZy4KPiAgCSAqLwo+ICAJaWYgKHNkdm8tPnBvcnQgPT0gUE9SVF9C KQo+IEBAIC0yNDkwLDcgKzI1MTIsOCBAQCBpbnRlbF9zZHZvX2R2aV9pbml0KHN0cnVjdCBpbnRl bF9zZHZvICppbnRlbF9zZHZvLCBpbnQgZGV2aWNlKQo+ICAJaWYgKGludGVsX3Nkdm9fZ2V0X2hv dHBsdWdfc3VwcG9ydChpbnRlbF9zZHZvKSAmCj4gIAkJaW50ZWxfc2R2b19jb25uZWN0b3ItPm91 dHB1dF9mbGFnKSB7Cj4gIAkJaW50ZWxfc2R2by0+aG90cGx1Z19hY3RpdmUgfD0gaW50ZWxfc2R2 b19jb25uZWN0b3ItPm91dHB1dF9mbGFnOwo+IC0JCS8qIFNvbWUgU0RWTyBkZXZpY2VzIGhhdmUg b25lLXNob3QgaG90cGx1ZyBpbnRlcnJ1cHRzLgo+ICsJCS8qCj4gKwkJICogU29tZSBTRFZPIGRl dmljZXMgaGF2ZSBvbmUtc2hvdCBob3RwbHVnIGludGVycnVwdHMuCj4gIAkJICogRW5zdXJlIHRo YXQgdGhleSBnZXQgcmUtZW5hYmxlZCB3aGVuIGFuIGludGVycnVwdCBoYXBwZW5zLgo+ICAJCSAq Lwo+ICAJCWludGVsX2VuY29kZXItPmhvdF9wbHVnID0gaW50ZWxfc2R2b19lbmFibGVfaG90cGx1 ZzsKPiBAQCAtMjc4OSw3ICsyODEyLDcgQEAgaW50ZWxfc2R2b19jcmVhdGVfZW5oYW5jZV9wcm9w ZXJ0eV90dihzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2bywKPiAgCQl0b19pbnRlbF9zZHZv X2Nvbm5lY3Rvcl9zdGF0ZShjb25uX3N0YXRlKTsKPiAgCXVpbnQxNl90IHJlc3BvbnNlLCBkYXRh X3ZhbHVlWzJdOwo+ICAKPiAtCS8qIHdoZW4gaG9yaXpvbnRhbCBvdmVyc2NhbiBpcyBzdXBwb3J0 ZWQsIEFkZCB0aGUgbGVmdC9yaWdodCAgcHJvcGVydHkgKi8KPiArCS8qIHdoZW4gaG9yaXpvbnRh bCBvdmVyc2NhbiBpcyBzdXBwb3J0ZWQsIEFkZCB0aGUgbGVmdC9yaWdodCBwcm9wZXJ0eSAqLwo+ ICAJaWYgKGVuaGFuY2VtZW50cy5vdmVyc2Nhbl9oKSB7Cj4gIAkJaWYgKCFpbnRlbF9zZHZvX2dl dF92YWx1ZShpbnRlbF9zZHZvLAo+ICAJCQkJCSAgU0RWT19DTURfR0VUX01BWF9PVkVSU0NBTl9I LAo+IEBAIC0zMDc0LDcgKzMwOTcsOCBAQCBib29sIGludGVsX3Nkdm9faW5pdChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAkJZ290byBlcnJfb3V0cHV0Owo+ICAJfQo+ICAK PiAtCS8qIE9ubHkgZW5hYmxlIHRoZSBob3RwbHVnIGlycSBpZiB3ZSBuZWVkIGl0LCB0byB3b3Jr IGFyb3VuZCBub2lzeQo+ICsJLyoKPiArCSAqIE9ubHkgZW5hYmxlIHRoZSBob3RwbHVnIGlycSBp ZiB3ZSBuZWVkIGl0LCB0byB3b3JrIGFyb3VuZCBub2lzeQo+ICAJICogaG90cGx1ZyBsaW5lcy4K PiAgCSAqLwo+ICAJaWYgKGludGVsX3Nkdm8tPmhvdHBsdWdfYWN0aXZlKSB7CgotLSAKSmFuaSBO aWt1bGEsIEludGVsIE9wZW4gU291cmNlIFRlY2hub2xvZ3kgQ2VudGVyCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QK SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=