From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Herrmann Subject: Re: [PATCH 2/2] drm: make unplugged flag specific to udl driver Date: Wed, 10 Feb 2016 13:24:53 +0100 Message-ID: References: <1454709464-2536-1-git-send-email-hshi@chromium.org> <1455051943-8291-1-git-send-email-hshi@chromium.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f65.google.com (mail-wm0-f65.google.com [74.125.82.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 38D306E6B8 for ; Wed, 10 Feb 2016 04:24:55 -0800 (PST) Received: by mail-wm0-f65.google.com with SMTP id c200so3873018wme.0 for ; Wed, 10 Feb 2016 04:24:55 -0800 (PST) In-Reply-To: <1455051943-8291-1-git-send-email-hshi@chromium.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Haixia Shi Cc: "dri-devel@lists.freedesktop.org" List-Id: dri-devel@lists.freedesktop.org SGkKCk9uIFR1ZSwgRmViIDksIDIwMTYgYXQgMTA6MDUgUE0sIEhhaXhpYSBTaGkgPGhzaGlAY2hy b21pdW0ub3JnPiB3cm90ZToKPiBSZW1vdmUgdGhlIGdlbmVyYWwgZHJtX2RldmljZV9pc191bnBs dWdnZWQoKSBjaGVja3MsIGFuZCBtb3ZlIHRoZSB1bnBsdWdnZWQKPiBmbGFnIGhhbmRsaW5nIGxv Z2ljIGludG8gZHJtL3VkbC4gSW4gZ2VuZXJhbCB3ZSB3YW50IHRvIGtlZXAgZHJpdmVyLXNwZWNp ZmljCj4gbG9naWMgb3V0IG9mIGNvbW1vbiBkcm0gY29kZS4KPgo+IFNpZ25lZC1vZmYtYnk6IEhh aXhpYSBTaGkgPGhzaGlAY2hyb21pdW0ub3JnPgo+IFJldmlld2VkLWJ5OiBTdMOpcGhhbmUgTWFy Y2hlc2luIDxtYXJjaGV1QGNocm9taXVtLm9yZz4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2Ry bV9kcnYuYyAgICAgICAgICAgfCAgNiAtLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fZm9wcy5j ICAgICAgICAgIHwgIDIgLS0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYyAgICAgICAgICAg fCAgMyAtLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2lvY3RsLmMgICAgICAgICB8ICAzIC0tCj4g IGRyaXZlcnMvZ3B1L2RybS9kcm1fdm0uYyAgICAgICAgICAgIHwgIDMgLS0KPiAgZHJpdmVycy9n cHUvZHJtL3VkbC91ZGxfY29ubmVjdG9yLmMgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vdWRs L3VkbF9kcnYuYyAgICAgICB8ICA3ICsrKy0tCj4gIGRyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2Ry di5oICAgICAgIHwgIDYgKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9mYi5jICAgICAg ICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2dlbS5jICAgICAgIHwgIDUgKysr Cj4gIGRyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX21haW4uYyAgICAgIHwgNjEgKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBpbmNsdWRlL2RybS9kcm1QLmggICAgICAgICAg ICAgICAgICB8IDE0IC0tLS0tLS0tLQo+ICAxMiBmaWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25z KCspLCAzNiBkZWxldGlvbnMoLSkKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJt X2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kcnYuYwo+IGluZGV4IDE2N2M4ZDMuLmY5M2Vl MTIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcnYuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fZHJ2LmMKPiBAQCAtMzc2LDkgKzM3Niw2IEBAIHN0cnVjdCBkcm1fbWlu b3IgKmRybV9taW5vcl9hY3F1aXJlKHVuc2lnbmVkIGludCBtaW5vcl9pZCkKPgo+ICAgICAgICAg aWYgKCFtaW5vcikgewo+ICAgICAgICAgICAgICAgICByZXR1cm4gRVJSX1BUUigtRU5PREVWKTsK PiAtICAgICAgIH0gZWxzZSBpZiAoZHJtX2RldmljZV9pc191bnBsdWdnZWQobWlub3ItPmRldikp IHsKPiAtICAgICAgICAgICAgICAgZHJtX2Rldl91bnJlZihtaW5vci0+ZGV2KTsKPiAtICAgICAg ICAgICAgICAgcmV0dXJuIEVSUl9QVFIoLUVOT0RFVik7Cj4gICAgICAgICB9Cj4KPiAgICAgICAg IHJldHVybiBtaW5vcjsKPiBAQCAtNDY0LDkgKzQ2MSw2IEBAIHZvaWQgZHJtX3VucGx1Z19kZXYo c3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgICAgICAgIGRybV9taW5vcl91bnJlZ2lzdGVyKGRl diwgRFJNX01JTk9SX0NPTlRST0wpOwo+Cj4gICAgICAgICBtdXRleF9sb2NrKCZkcm1fZ2xvYmFs X211dGV4KTsKPiAtCj4gLSAgICAgICBkcm1fZGV2aWNlX3NldF91bnBsdWdnZWQoZGV2KTsKPiAt Cj4gICAgICAgICBpZiAoZGV2LT5vcGVuX2NvdW50ID09IDApIHsKPiAgICAgICAgICAgICAgICAg ZHJtX3B1dF9kZXYoZGV2KTsKPiAgICAgICAgIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2RybV9mb3BzLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZvcHMuYwo+IGluZGV4IDFlYTg3 OTAuLmI0MzMyZDQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9mb3BzLmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZvcHMuYwo+IEBAIC00OTcsOCArNDk3LDYgQEAgaW50 IGRybV9yZWxlYXNlKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBmaWxlICpmaWxwKQo+Cj4g ICAgICAgICBpZiAoIS0tZGV2LT5vcGVuX2NvdW50KSB7Cj4gICAgICAgICAgICAgICAgIHJldGNv ZGUgPSBkcm1fbGFzdGNsb3NlKGRldik7Cj4gLSAgICAgICAgICAgICAgIGlmIChkcm1fZGV2aWNl X2lzX3VucGx1Z2dlZChkZXYpKQo+IC0gICAgICAgICAgICAgICAgICAgICAgIGRybV9wdXRfZGV2 KGRldik7Cj4gICAgICAgICB9Cj4gICAgICAgICBtdXRleF91bmxvY2soJmRybV9nbG9iYWxfbXV0 ZXgpOwo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtLmMgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2dlbS5jCj4gaW5kZXggMmU4Yzc3ZS4uYzYyMmUzMiAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2dlbS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9n ZW0uYwo+IEBAIC05MDAsOSArOTAwLDYgQEAgaW50IGRybV9nZW1fbW1hcChzdHJ1Y3QgZmlsZSAq ZmlscCwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEpCj4gICAgICAgICBzdHJ1Y3QgZHJtX3Zt YV9vZmZzZXRfbm9kZSAqbm9kZTsKPiAgICAgICAgIGludCByZXQ7Cj4KPiAtICAgICAgIGlmIChk cm1fZGV2aWNlX2lzX3VucGx1Z2dlZChkZXYpKQo+IC0gICAgICAgICAgICAgICByZXR1cm4gLUVO T0RFVjsKPiAtCj4gICAgICAgICBkcm1fdm1hX29mZnNldF9sb2NrX2xvb2t1cChkZXYtPnZtYV9v ZmZzZXRfbWFuYWdlcik7Cj4gICAgICAgICBub2RlID0gZHJtX3ZtYV9vZmZzZXRfZXhhY3RfbG9v a3VwX2xvY2tlZChkZXYtPnZtYV9vZmZzZXRfbWFuYWdlciwKPiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZtYS0+dm1fcGdvZmYsCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9j dGwuYwo+IGluZGV4IDhjZTJhMGMuLmY5NTkwNzQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2RybV9pb2N0bC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9pb2N0bC5jCj4gQEAg LTY5NSw5ICs2OTUsNiBAQCBsb25nIGRybV9pb2N0bChzdHJ1Y3QgZmlsZSAqZmlscCwKPgo+ICAg ICAgICAgZGV2ID0gZmlsZV9wcml2LT5taW5vci0+ZGV2Owo+Cj4gLSAgICAgICBpZiAoZHJtX2Rl dmljZV9pc191bnBsdWdnZWQoZGV2KSkKPiAtICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9ERVY7 Cj4gLQo+ICAgICAgICAgaXNfZHJpdmVyX2lvY3RsID0gbnIgPj0gRFJNX0NPTU1BTkRfQkFTRSAm JiBuciA8IERSTV9DT01NQU5EX0VORDsKPgo+ICAgICAgICAgaWYgKGlzX2RyaXZlcl9pb2N0bCkg ewo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3ZtLmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX3ZtLmMKPiBpbmRleCBmOTBiZDVmLi4zYTY4YmU0IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fdm0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fdm0uYwo+IEBA IC02NTcsOSArNjU3LDYgQEAgaW50IGRybV9sZWdhY3lfbW1hcChzdHJ1Y3QgZmlsZSAqZmlscCwg c3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEpCj4gICAgICAgICBzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2ID0gcHJpdi0+bWlub3ItPmRldjsKPiAgICAgICAgIGludCByZXQ7Cj4KPiAtICAgICAgIGlm IChkcm1fZGV2aWNlX2lzX3VucGx1Z2dlZChkZXYpKQo+IC0gICAgICAgICAgICAgICByZXR1cm4g LUVOT0RFVjsKPiAtCj4gICAgICAgICBtdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4g ICAgICAgICByZXQgPSBkcm1fbW1hcF9sb2NrZWQoZmlscCwgdm1hKTsKPiAgICAgICAgIG11dGV4 X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vdWRsL3VkbF9jb25uZWN0b3IuYyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2Nvbm5lY3Rv ci5jCj4gaW5kZXggNDcwOWI1NC4uYjE2OGYyYyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vdWRsL3VkbF9jb25uZWN0b3IuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2Nv bm5lY3Rvci5jCj4gQEAgLTk2LDcgKzk2LDcgQEAgc3RhdGljIGludCB1ZGxfbW9kZV92YWxpZChz dHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICBzdGF0aWMgZW51bSBkcm1fY29ubmVj dG9yX3N0YXR1cwo+ICB1ZGxfZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is IGJvb2wgZm9yY2UpCj4gIHsKPiAtICAgICAgIGlmIChkcm1fZGV2aWNlX2lzX3VucGx1Z2dlZChj b25uZWN0b3ItPmRldikpCj4gKyAgICAgICBpZiAodWRsX2RldmljZV9pc191bnBsdWdnZWQoY29u bmVjdG9yLT5kZXYpKQo+ICAgICAgICAgICAgICAgICByZXR1cm4gY29ubmVjdG9yX3N0YXR1c19k aXNjb25uZWN0ZWQ7Cj4gICAgICAgICByZXR1cm4gY29ubmVjdG9yX3N0YXR1c19jb25uZWN0ZWQ7 Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZHJ2LmMgYi9kcml2 ZXJzL2dwdS9kcm0vdWRsL3VkbF9kcnYuYwo+IGluZGV4IGQ1NzI4ZWMuLmY1YzJhOTcgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZHJ2LmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vdWRsL3VkbF9kcnYuYwo+IEBAIC0yNCwxMiArMjQsMTIgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCB2bV9vcGVyYXRpb25zX3N0cnVjdCB1ZGxfZ2VtX3ZtX29wcyA9IHsKPgo+ICBzdGF0aWMg Y29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyB1ZGxfZHJpdmVyX2ZvcHMgPSB7Cj4gICAgICAg ICAub3duZXIgPSBUSElTX01PRFVMRSwKPiAtICAgICAgIC5vcGVuID0gZHJtX29wZW4sCj4gKyAg ICAgICAub3BlbiA9IHVkbF9kcm1fb3BlbiwKPiAgICAgICAgIC5tbWFwID0gdWRsX2RybV9nZW1f bW1hcCwKPiAgICAgICAgIC5wb2xsID0gZHJtX3BvbGwsCj4gICAgICAgICAucmVhZCA9IGRybV9y ZWFkLAo+IC0gICAgICAgLnVubG9ja2VkX2lvY3RsID0gZHJtX2lvY3RsLAo+IC0gICAgICAgLnJl bGVhc2UgPSBkcm1fcmVsZWFzZSwKPiArICAgICAgIC51bmxvY2tlZF9pb2N0bCA9IHVkbF9kcm1f aW9jdGwsCj4gKyAgICAgICAucmVsZWFzZSA9IHVkbF9kcm1fcmVsZWFzZSwKPiAgI2lmZGVmIENP TkZJR19DT01QQVQKPiAgICAgICAgIC5jb21wYXRfaW9jdGwgPSBkcm1fY29tcGF0X2lvY3RsLAo+ ICAjZW5kaWYKPiBAQCAtOTcsNiArOTcsNyBAQCBzdGF0aWMgdm9pZCB1ZGxfdXNiX2Rpc2Nvbm5l Y3Qoc3RydWN0IHVzYl9pbnRlcmZhY2UgKmludGVyZmFjZSkKPiAgICAgICAgIGRybV9jb25uZWN0 b3JfdW5wbHVnX2FsbChkZXYpOwo+ICAgICAgICAgdWRsX2ZiZGV2X3VucGx1ZyhkZXYpOwo+ICAg ICAgICAgdWRsX2Ryb3BfdXNiKGRldik7Cj4gKyAgICAgICB1ZGxfZGV2aWNlX3NldF91bnBsdWdn ZWQoZGV2KTsKPiAgICAgICAgIGRybV91bnBsdWdfZGV2KGRldik7Cj4gIH0KPgo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS91ZGwv dWRsX2Rydi5oCj4gaW5kZXggNGEwNjRlZi4uNzVhYTkxYyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vdWRsL3VkbF9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2Ry di5oCj4gQEAgLTY1LDYgKzY1LDcgQEAgc3RydWN0IHVkbF9kZXZpY2Ugewo+ICAgICAgICAgYXRv bWljX3QgYnl0ZXNfaWRlbnRpY2FsOyAvKiBzYXZlZCBlZmZvcnQgd2l0aCBiYWNrYnVmZmVyIGNv bXBhcmlzb24gKi8KPiAgICAgICAgIGF0b21pY190IGJ5dGVzX3NlbnQ7IC8qIHRvIHVzYiwgYWZ0 ZXIgY29tcHJlc3Npb24gaW5jbHVkaW5nIG92ZXJoZWFkICovCj4gICAgICAgICBhdG9taWNfdCBj cHVfa2N5Y2xlc191c2VkOyAvKiB0cmFuc3BpcmVkIGR1cmluZyBwaXhlbCBwcm9jZXNzaW5nICov Cj4gKyAgICAgICBhdG9taWNfdCB1bnBsdWdnZWQ7IC8qIGRldmljZSBoYXMgYmVlbiB1bnBsdWdn ZWQgb3IgZ29uZSBhd2F5ICovCj4gIH07Cj4KPiAgc3RydWN0IHVkbF9nZW1fb2JqZWN0IHsKPiBA QCAtMTMzLDYgKzEzNCw5IEBAIGludCB1ZGxfZ2VtX2dldF9wYWdlcyhzdHJ1Y3QgdWRsX2dlbV9v YmplY3QgKm9iaik7Cj4gIHZvaWQgdWRsX2dlbV9wdXRfcGFnZXMoc3RydWN0IHVkbF9nZW1fb2Jq ZWN0ICpvYmopOwo+ICBpbnQgdWRsX2dlbV92bWFwKHN0cnVjdCB1ZGxfZ2VtX29iamVjdCAqb2Jq KTsKPiAgdm9pZCB1ZGxfZ2VtX3Z1bm1hcChzdHJ1Y3QgdWRsX2dlbV9vYmplY3QgKm9iaik7Cj4g K2ludCB1ZGxfZHJtX29wZW4oc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbHAp Owo+ICtpbnQgdWRsX2RybV9yZWxlYXNlKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBmaWxl ICpmaWxwKTsKPiAraW50IHVkbF9kcm1faW9jdGwoc3RydWN0IGZpbGUgKmZpbHAsIHVuc2lnbmVk IGludCBjbWQsIHVuc2lnbmVkIGxvbmcgYXJnKTsKPiAgaW50IHVkbF9kcm1fZ2VtX21tYXAoc3Ry dWN0IGZpbGUgKmZpbHAsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hKTsKPiAgaW50IHVkbF9n ZW1fZmF1bHQoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHN0cnVjdCB2bV9mYXVsdCAqdm1m KTsKPgo+IEBAIC0xNDAsNiArMTQ0LDggQEAgaW50IHVkbF9oYW5kbGVfZGFtYWdlKHN0cnVjdCB1 ZGxfZnJhbWVidWZmZXIgKmZiLCBpbnQgeCwgaW50IHksCj4gICAgICAgICAgICAgICAgICAgICAg IGludCB3aWR0aCwgaW50IGhlaWdodCk7Cj4KPiAgaW50IHVkbF9kcm9wX3VzYihzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KTsKPiArdm9pZCB1ZGxfZGV2aWNlX3NldF91bnBsdWdnZWQoc3RydWN0IGRy bV9kZXZpY2UgKmRldik7Cj4gK2ludCB1ZGxfZGV2aWNlX2lzX3VucGx1Z2dlZChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KTsKPgo+ICAjZGVmaW5lIENNRF9XUklURV9SQVc4ICAgIlx4QUZceDYwIiAv Kio8IDggYml0IHJhdyB3cml0ZSBjb21tYW5kLiAqLwo+ICAjZGVmaW5lIENNRF9XUklURV9STDgg ICAgIlx4QUZceDYxIiAvKio8IDggYml0IHJ1biBsZW5ndGggY29tbWFuZC4gKi8KPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfZmIuYyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwv dWRsX2ZiLmMKPiBpbmRleCAyMDA0MTlkLi5kZjFkNTNlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS91ZGwvdWRsX2ZiLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9mYi5j Cj4gQEAgLTMyNSw3ICszMjUsNyBAQCBzdGF0aWMgaW50IHVkbF9mYl9vcGVuKHN0cnVjdCBmYl9p bmZvICppbmZvLCBpbnQgdXNlcikKPiAgICAgICAgIHN0cnVjdCB1ZGxfZGV2aWNlICp1ZGwgPSBk ZXYtPmRldl9wcml2YXRlOwo+Cj4gICAgICAgICAvKiBJZiB0aGUgVVNCIGRldmljZSBpcyBnb25l LCB3ZSBkb24ndCBhY2NlcHQgbmV3IG9wZW5zICovCj4gLSAgICAgICBpZiAoZHJtX2RldmljZV9p c191bnBsdWdnZWQodWRsLT5kZGV2KSkKPiArICAgICAgIGlmICh1ZGxfZGV2aWNlX2lzX3VucGx1 Z2dlZCh1ZGwtPmRkZXYpKQo+ICAgICAgICAgICAgICAgICByZXR1cm4gLUVOT0RFVjsKPgo+ICAg ICAgICAgdWZiZGV2LT5mYl9jb3VudCsrOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v dWRsL3VkbF9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2dlbS5jCj4gaW5kZXggMmEw YTc4NC4uMzNjMzAyZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9nZW0u Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX2dlbS5jCj4gQEAgLTg2LDggKzg2LDEz IEBAIGludCB1ZGxfZHVtYl9jcmVhdGUoc3RydWN0IGRybV9maWxlICpmaWxlLAo+Cj4gIGludCB1 ZGxfZHJtX2dlbV9tbWFwKHN0cnVjdCBmaWxlICpmaWxwLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3Qg KnZtYSkKPiAgewo+ICsgICAgICAgc3RydWN0IGRybV9maWxlICpwcml2ID0gZmlscC0+cHJpdmF0 ZV9kYXRhOwo+ICsgICAgICAgc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IHByaXYtPm1pbm9yLT5k ZXY7Cj4gICAgICAgICBpbnQgcmV0Owo+Cj4gKyAgICAgICBpZiAodWRsX2RldmljZV9pc191bnBs dWdnZWQoZGV2KSkKPiArICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9ERVY7Cj4gKwo+ICAgICAg ICAgcmV0ID0gZHJtX2dlbV9tbWFwKGZpbHAsIHZtYSk7Cj4gICAgICAgICBpZiAocmV0KQo+ICAg ICAgICAgICAgICAgICByZXR1cm4gcmV0Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v dWRsL3VkbF9tYWluLmMgYi9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9tYWluLmMKPiBpbmRleCAz M2RiZmIyLi4yYmEzZWUzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX21h aW4uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRsX21haW4uYwo+IEBAIC0zNTAsMyAr MzUwLDY0IEBAIGludCB1ZGxfZHJpdmVyX3VubG9hZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ ICAgICAgICAga2ZyZWUodWRsKTsKPiAgICAgICAgIHJldHVybiAwOwo+ICB9Cj4gKwo+ICtpbnQg dWRsX2RybV9vcGVuKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBmaWxlICpmaWxwKQo+ICt7 Cj4gKyAgICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdjsKPiArICAgICAgIHN0cnVjdCBk cm1fbWlub3IgKm1pbm9yOwo+ICsKPiArICAgICAgIGludCByZXQgPSBkcm1fb3Blbihpbm9kZSwg ZmlscCk7Cj4gKyAgICAgICBpZiAocmV0KQo+ICsgICAgICAgICAgICAgICByZXR1cm4gcmV0Owo+ ICsKPiArICAgICAgIGZpbGVfcHJpdiA9IGZpbHAtPnByaXZhdGVfZGF0YTsKPiArICAgICAgIG1p bm9yID0gZmlsZV9wcml2LT5taW5vcjsKPiArICAgICAgIGlmICh1ZGxfZGV2aWNlX2lzX3VucGx1 Z2dlZChtaW5vci0+ZGV2KSkgewo+ICsgICAgICAgICAgICAgICBkcm1fZGV2X3VucmVmKG1pbm9y LT5kZXYpOwo+ICsgICAgICAgICAgICAgICByZXR1cm4gLUVOT0RFVjsKPiArICAgICAgIH0KClRo aXMgZG9lc24ndCBtYWtlIHNlbnNlIHRvIG1lLiBZb3UncmUgY2FsbGVkIGhlcmUgd2l0aCBnbG9i YWwtbXV0ZXgKaGVsZCwgc28geW91IGNhbiBqdXN0IGNoZWNrIHVkbF9kZXZpY2VfaXNfdW5wbHVn Z2VkKCkgYmVmb3JlIGNhbGxpbmcKaW50byBkcm1fb3BlbigpLgoKPiArCj4gKyAgICAgICByZXR1 cm4gMDsKPiArfQo+ICsKPiAraW50IHVkbF9kcm1fcmVsZWFzZShzdHJ1Y3QgaW5vZGUgKmlub2Rl LCBzdHJ1Y3QgZmlsZSAqZmlscCkKPiArewo+ICsgICAgICAgc3RydWN0IGRybV9maWxlICpmaWxl X3ByaXYgPSBmaWxwLT5wcml2YXRlX2RhdGE7Cj4gKyAgICAgICBzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2ID0gZmlsZV9wcml2LT5taW5vci0+ZGV2Owo+ICsKPiArICAgICAgIGludCByZXQgPSBkcm1f cmVsZWFzZShpbm9kZSwgZmlscCk7Cj4gKyAgICAgICBpZiAoIWRldi0+b3Blbl9jb3VudCAmJiB1 ZGxfZGV2aWNlX2lzX3VucGx1Z2dlZChkZXYpKQo+ICsgICAgICAgICAgICAgICBkcm1fcHV0X2Rl dihkZXYpOwoKVGhpcyBzaG91bGQgcmF0aGVyIGJlOgoKICAgICAgICBkcm1fcmVsZWFzZShpbm9k ZSwgZmlscCk7CiAgICAgICAgbXV0ZXhfbG9jaygmZHJtX2dsb2JhbF9tdXRleCk7CiAgICAgICAg aWYgKCFkZXYtPm9wZW5fY291bnQgJiYgdWRsX2RldmljZV9pc191bnBsdWdnZWQoZGV2KSkKICAg ICAgICAgICAgICAgIGRybV9wdXRfZGV2KGRldik7CiAgICAgICAgbXV0ZXhfdW5sb2NrKCZkcm1f Z2xvYmFsX211dGV4KTsKCiAgICAgICAgcmV0dXJuIDA7CgpUaGVyZSBpcyBubyByZWFzb24gdG8g bG9vayBhdCB0aGUgcmV0dXJuIGNvZGUgb2YgZHJtX3JlbGVhc2UoKSwgZXZlci4KCj4gKwo+ICsg ICAgICAgcmV0dXJuIHJldDsKPiArfQo+ICsKPiAraW50IHVkbF9kcm1faW9jdGwoc3RydWN0IGZp bGUgKmZpbHAsIHVuc2lnbmVkIGludCBjbWQsIHVuc2lnbmVkIGxvbmcgYXJnKQo+ICt7Cj4gKyAg ICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdiA9IGZpbHAtPnByaXZhdGVfZGF0YTsKPiAr ICAgICAgIHN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBmaWxlX3ByaXYtPm1pbm9yLT5kZXY7Cj4g KyAgICAgICB1bnNpZ25lZCBpbnQgbnIgPSBEUk1fSU9DVExfTlIoY21kKTsKPiArCj4gKyAgICAg ICBpZiAodWRsX2RldmljZV9pc191bnBsdWdnZWQoZGV2KSAmJgo+ICsgICAgICAgICAgICAgICBu ciAhPSBEUk1fSU9DVExfTlIoRFJNX0lPQ1RMX01PREVfU0VUQ1JUQykgJiYKPiArICAgICAgICAg ICAgICAgbnIgIT0gRFJNX0lPQ1RMX05SKERSTV9JT0NUTF9NT0RFX1JNRkIpICYmCj4gKyAgICAg ICAgICAgICAgIG5yICE9IERSTV9JT0NUTF9OUihEUk1fSU9DVExfTU9ERV9ERVNUUk9ZX0RVTUIp KQo+ICsgICAgICAgICAgICAgICByZXR1cm4gLUVOT0RFVjsKCldoeT8KCkp1c3QgZG86CgogICAg ICAgIGlmICh1ZGxfZGV2aWNlX2lzX3VucGx1Z2dlZChkZXYpKQogICAgICAgICAgICAgICAgcmV0 dXJuIC1FTk9ERVY7CgpXaHkgdGhpcyBjb21wbGV4IGxvZ2ljIGhlcmU/CgpUaGFua3MKRGF2aWQK Cj4gKwo+ICsgICAgICAgcmV0dXJuIGRybV9pb2N0bChmaWxwLCBjbWQsIGFyZyk7Cj4gK30KPiAr Cj4gK3ZvaWQgdWRsX2RldmljZV9zZXRfdW5wbHVnZ2VkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp Cj4gK3sKPiArICAgICAgIHN0cnVjdCB1ZGxfZGV2aWNlICp1ZGwgPSBkZXYtPmRldl9wcml2YXRl Owo+ICsgICAgICAgc21wX3dtYigpOwo+ICsgICAgICAgYXRvbWljX3NldCgmdWRsLT51bnBsdWdn ZWQsIDEpOwo+ICt9Cj4gKwo+ICtpbnQgdWRsX2RldmljZV9pc191bnBsdWdnZWQoc3RydWN0IGRy bV9kZXZpY2UgKmRldikKPiArewo+ICsgICAgICAgc3RydWN0IHVkbF9kZXZpY2UgKnVkbCA9IGRl di0+ZGV2X3ByaXZhdGU7Cj4gKyAgICAgICBpbnQgcmV0ID0gYXRvbWljX3JlYWQoJnVkbC0+dW5w bHVnZ2VkKTsKPiArICAgICAgIHNtcF9ybWIoKTsKPiArICAgICAgIHJldHVybiByZXQ7Cj4gK30K PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtUC5oIGIvaW5jbHVkZS9kcm0vZHJtUC5oCj4g aW5kZXggZDcxNjJjZi4uNDBjNjA5OSAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2RybS9kcm1QLmgK PiArKysgYi9pbmNsdWRlL2RybS9kcm1QLmgKPiBAQCAtNzQ4LDcgKzc0OCw2IEBAIHN0cnVjdCBk cm1fZGV2aWNlIHsKPiAgICAgICAgIHN0cnVjdCBkcm1fbWlub3IgKmNvbnRyb2w7ICAgICAgICAg ICAgICAvKio8IENvbnRyb2wgbm9kZSAqLwo+ICAgICAgICAgc3RydWN0IGRybV9taW5vciAqcHJp bWFyeTsgICAgICAgICAgICAgIC8qKjwgUHJpbWFyeSBub2RlICovCj4gICAgICAgICBzdHJ1Y3Qg ZHJtX21pbm9yICpyZW5kZXI7ICAgICAgICAgICAgICAgLyoqPCBSZW5kZXIgbm9kZSAqLwo+IC0g ICAgICAgYXRvbWljX3QgdW5wbHVnZ2VkOyAgICAgICAgICAgICAgICAgICAgIC8qKjwgRmxhZyB3 aGV0aGVyIGRldiBpcyBkZWFkICovCj4gICAgICAgICBzdHJ1Y3QgaW5vZGUgKmFub25faW5vZGU7 ICAgICAgICAgICAgICAgLyoqPCBpbm9kZSBmb3IgcHJpdmF0ZSBhZGRyZXNzLXNwYWNlICovCj4g ICAgICAgICBjaGFyICp1bmlxdWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB1bmlx dWUgbmFtZSBvZiB0aGUgZGV2aWNlICovCj4gICAgICAgICAvKkB9ICovCj4gQEAgLTg3OSwxOSAr ODc4LDYgQEAgc3RhdGljIF9faW5saW5lX18gaW50IGRybV9jb3JlX2NoZWNrX2ZlYXR1cmUoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKPiAgICAgICAgIHJldHVybiAoKGRldi0+ZHJpdmVyLT5kcml2 ZXJfZmVhdHVyZXMgJiBmZWF0dXJlKSA/IDEgOiAwKTsKPiAgfQo+Cj4gLXN0YXRpYyBpbmxpbmUg dm9pZCBkcm1fZGV2aWNlX3NldF91bnBsdWdnZWQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAt ewo+IC0gICAgICAgc21wX3dtYigpOwo+IC0gICAgICAgYXRvbWljX3NldCgmZGV2LT51bnBsdWdn ZWQsIDEpOwo+IC19Cj4gLQo+IC1zdGF0aWMgaW5saW5lIGludCBkcm1fZGV2aWNlX2lzX3VucGx1 Z2dlZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+IC17Cj4gLSAgICAgICBpbnQgcmV0ID0gYXRv bWljX3JlYWQoJmRldi0+dW5wbHVnZ2VkKTsKPiAtICAgICAgIHNtcF9ybWIoKTsKPiAtICAgICAg IHJldHVybiByZXQ7Cj4gLX0KPiAtCj4gIHN0YXRpYyBpbmxpbmUgYm9vbCBkcm1faXNfcmVuZGVy X2NsaWVudChjb25zdCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdikKPiAgewo+ICAgICAgICAg cmV0dXJuIGZpbGVfcHJpdi0+bWlub3ItPnR5cGUgPT0gRFJNX01JTk9SX1JFTkRFUjsKPiAtLQo+ IDIuNy4wLnJjMy4yMDcuZzBhYzUzNDQKPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWwK