From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.3 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3B61CC10F00 for ; Fri, 6 Mar 2020 08:03:05 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 115312073D for ; Fri, 6 Mar 2020 08:03:05 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 115312073D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=rock-chips.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 6C6516EC6A; Fri, 6 Mar 2020 08:03:02 +0000 (UTC) X-Greylist: delayed 488 seconds by postgrey-1.36 at gabe; Thu, 05 Mar 2020 09:14:05 UTC Received: from lucky1.263xmail.com (lucky1.263xmail.com [211.157.147.134]) by gabe.freedesktop.org (Postfix) with ESMTPS id 24D786E171 for ; Thu, 5 Mar 2020 09:14:05 +0000 (UTC) Received: from localhost (unknown [192.168.167.13]) by lucky1.263xmail.com (Postfix) with ESMTP id B75046E056; Thu, 5 Mar 2020 17:03:47 +0800 (CST) X-MAIL-GRAY: 1 X-MAIL-DELIVERY: 0 X-ADDR-CHECKED4: 1 X-ANTISPAM-LEVEL: 2 X-SKE-CHECKED: 1 X-ABS-CHECKED: 1 Received: from [172.16.12.218] (unknown [58.22.7.114]) by smtp.263.net (postfix) whith ESMTP id P3521T140169560696576S1583399027447008_; Thu, 05 Mar 2020 17:03:48 +0800 (CST) X-IP-DOMAINF: 1 X-UNIQUE-TAG: X-RL-SENDER: andy.yan@rock-chips.com X-SENDER: yxj@rock-chips.com X-LOGIN-NAME: andy.yan@rock-chips.com X-FST-TO: laurent.pinchart@ideasonboard.com X-SENDER-IP: 58.22.7.114 X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 X-System-Flag: 0 Subject: =?UTF-8?Q?Re=3a_=5bPATCH=5d_drm/bridge=3a_analogix=5fdp=3a_Split_bi?= =?UTF-8?B?bmQoKSBpbnRvIHByb2JlKCkgYW5kIHJlYWwgYmluZCgp44CQ6K+35rOo5oSP77yM?= =?UTF-8?B?6YKu5Lu255SxbGludXgtcm9ja2NoaXAtYm91bmNlcythbmR5Lnlhbj1yb2NrLWNo?= =?UTF-8?B?aXBzLmNvbUBsaXN0cy5pbmZyYWRlYWQub3Jn5Luj5Y+R44CR?= To: Andrzej Hajda , Marek Szyprowski , dri-devel@lists.freedesktop.org, linux-samsung-soc@vger.kernel.org, linux-rockchip@lists.infradead.org References: <20200302142615.14947-1-m.szyprowski@samsung.com> <30f64c8f-2a12-46c2-e5eb-505bbb2088ed@samsung.com> From: Andy Yan Message-ID: <331b5d65-f619-ff84-d4e7-55d2257a90c5@rock-chips.com> Date: Thu, 5 Mar 2020 17:03:46 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 MIME-Version: 1.0 In-Reply-To: <30f64c8f-2a12-46c2-e5eb-505bbb2088ed@samsung.com> Content-Language: en-US X-Mailman-Approved-At: Fri, 06 Mar 2020 08:03:01 +0000 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Jernej Skrabec , Neil Armstrong , Jingoo Han , Jonas Karlman , Seung-Woo Kim , Sandy Huang , Bartlomiej Zolnierkiewicz , Laurent Pinchart Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" CkhpOgoKSSB0ZXN0ZWQgaXQgb24gYSByazMzOTkgYm9hcmQsIGJ1dCB0aGUgZURQIHdhcyBicm9r ZW4gYWZ0ZXIgdGhpcyBwYXRjaCAKYXBwbGllZDoKCgpbwqDCoMKgIDAuODkxODczXSByZWdpc3Rl cmVkIHRhc2tzdGF0cyB2ZXJzaW9uIDEKW8KgwqDCoCAwLjg5MjI0M10gTG9hZGluZyBjb21waWxl ZC1pbiBYLjUwOSBjZXJ0aWZpY2F0ZXMKW8KgwqDCoCAwLjkyOTE0N10gcm9ja2NoaXAtZHAgZmY5 NzAwMDAuZWRwOiBubyBEUCBwaHkgY29uZmlndXJlZApbwqDCoMKgIDAuOTMxNjc2XSByYW5kb206 IGZhc3QgaW5pdCBkb25lClvCoMKgwqAgMC45MzI1OTRdIHJvY2tjaGlwLWRybSBkaXNwbGF5LXN1 YnN5c3RlbTogYm91bmQgZmY5MDAwMDAudm9wIChvcHMgCnZvcF9jb21wb25lbnRfb3BzKQpbwqDC oMKgIDAuOTM0MTE3XSByb2NrY2hpcC1kcm0gZGlzcGxheS1zdWJzeXN0ZW06IGJvdW5kIGZmOTcw MDAwLmVkcCAob3BzIApyb2NrY2hpcF9kcF9jb21wb25lbnRfb3BzKQpbwqDCoMKgIDAuOTM0ODc4 XSBbZHJtXSBTdXBwb3J0cyB2YmxhbmsgdGltZXN0YW1wIGNhY2hpbmcgUmV2IDIgKDIxLjEwLjIw MTMpLgpbwqDCoMKgIDAuOTM1NDU5XSBbZHJtXSBObyBkcml2ZXIgc3VwcG9ydCBmb3IgdmJsYW5r IHRpbWVzdGFtcCBxdWVyeS4KW8KgwqDCoCAwLjk1NjcwOF0gbW1jMDogbmV3IEhTNDAwIE1NQyBj YXJkIGF0IGFkZHJlc3MgMDAwMQpbwqDCoMKgIDAuOTU4MjYxXSBtbWNibGswOiBtbWMwOjAwMDEg QVdQRDNSIDE0LjYgR2lCClvCoMKgwqAgMC45NTg5NTJdIG1tY2JsazBib290MDogbW1jMDowMDAx IEFXUEQzUiBwYXJ0aXRpb24gMSA0LjAwIE1pQgpbwqDCoMKgIDAuOTU5ODA0XSBtbWNibGswYm9v dDE6IG1tYzA6MDAwMSBBV1BEM1IgcGFydGl0aW9uIDIgNC4wMCBNaUIKW8KgwqDCoCAwLjk2MDU0 MF0gbW1jYmxrMHJwbWI6IG1tYzA6MDAwMSBBV1BEM1IgcGFydGl0aW9uIDMgNC4wMCBNaUIsIApj aGFyZGV2ICgyNDI6MCkKW8KgwqDCoCAwLjk2NTQyOF0gcm9ja2NoaXAtZHAgZmY5NzAwMDAuZWRw OiBBVVggQ0ggZXJyb3IgaGFwcGVuZWQ6IDB4NyAoMSkKW8KgwqDCoCAwLjk2NjIyOF0gcm9ja2No aXAtZHAgZmY5NzAwMDAuZWRwOiBBVVggQ0ggZXJyb3IgaGFwcGVuZWQ6IDB4NyAoMSkKW8KgwqDC oCAwLjk2NzAyNV0gcm9ja2NoaXAtZHAgZmY5NzAwMDAuZWRwOiBBVVggQ0ggZXJyb3IgaGFwcGVu ZWQ6IDB4NyAoMSkKW8KgwqDCoCAwLjk2NzEwNF3CoCBtbWNibGswOiBwMSBwMiBwMyBwNCBwNQpb wqDCoMKgIDAuOTY3ODIzXSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBo YXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTY4NjIwXSByb2NrY2hpcC1kcCBmZjk3MDAwMC5l ZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTY5NDE3XSByb2Nr Y2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDC oMKgIDAuOTcwMjE2XSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBw ZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTcxMDEyXSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6 IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTcxODExXSByb2NrY2hp cC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKg IDAuOTcyNjA4XSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5l ZDogMHg3ICgxKQpbwqDCoMKgIDAuOTczNDA0XSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFV WCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTc0MjAxXSByb2NrY2hpcC1k cCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAu OTc0OTk4XSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDog MHg3ICgxKQpbwqDCoMKgIDAuOTc1Nzk5XSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBD SCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTc2NTk2XSByb2NrY2hpcC1kcCBm Zjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTc3 MzkzXSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3 ICgxKQpbwqDCoMKgIDAuOTc4MTg5XSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBl cnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTc4OTg2XSByb2NrY2hpcC1kcCBmZjk3 MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgxKQpbwqDCoMKgIDAuOTc5Nzg2 XSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJvciBoYXBwZW5lZDogMHg3ICgx KQpbwqDCoMKgIDAuOTgwNTg0XSByb2NrY2hpcC1kcCBmZjk3MDAwMC5lZHA6IEFVWCBDSCBlcnJv ciBoYXBwZW5lZDogMHg3ICgxKQoKCkJlZm9yZSB0aGlzIHBhdGNoIDoKCgpbwqDCoMKgIDAuODc3 NzA3XSA5cG5ldDogSW5zdGFsbGluZyA5UDIwMDAgc3VwcG9ydApbwqDCoMKgIDAuODc4MTU2XSBL ZXkgdHlwZSBkbnNfcmVzb2x2ZXIgcmVnaXN0ZXJlZApbwqDCoMKgIDAuODc5MTg4XSByZWdpc3Rl cmVkIHRhc2tzdGF0cyB2ZXJzaW9uIDEKW8KgwqDCoCAwLjg3OTU1OF0gTG9hZGluZyBjb21waWxl ZC1pbiBYLjUwOSBjZXJ0aWZpY2F0ZXMKW8KgwqDCoCAwLjkxODIyN10gcm9ja2NoaXAtZHJtIGRp c3BsYXktc3Vic3lzdGVtOiBib3VuZCBmZjkwMDAwMC52b3AgKG9wcyAKdm9wX2NvbXBvbmVudF9v cHMpClvCoMKgwqAgMC45MTg5NjVdIHJvY2tjaGlwLWRwIGZmOTcwMDAwLmVkcDogbm8gRFAgcGh5 IGNvbmZpZ3VyZWQKW8KgwqDCoCAwLjkyMTAwM10gcm9ja2NoaXAtZHJtIGRpc3BsYXktc3Vic3lz dGVtOiBib3VuZCBmZjk3MDAwMC5lZHAgKG9wcyAKcm9ja2NoaXBfZHBfY29tcG9uZW50X29wcykK W8KgwqDCoCAwLjkyMTc2Nl0gW2RybV0gU3VwcG9ydHMgdmJsYW5rIHRpbWVzdGFtcCBjYWNoaW5n IFJldiAyICgyMS4xMC4yMDEzKS4KW8KgwqDCoCAwLjkyMjM0N10gW2RybV0gTm8gZHJpdmVyIHN1 cHBvcnQgZm9yIHZibGFuayB0aW1lc3RhbXAgcXVlcnkuClvCoMKgwqAgMC45MjI2MjBdIHJhbmRv bTogZmFzdCBpbml0IGRvbmUKW8KgwqDCoCAwLjk0NDc3Ml0gbW1jMDogbmV3IEhTNDAwIE1NQyBj YXJkIGF0IGFkZHJlc3MgMDAwMQpbwqDCoMKgIDAuOTQ2MzMwXSBtbWNibGswOiBtbWMwOjAwMDEg QVdQRDNSIDE0LjYgR2lCClvCoMKgwqAgMC45NDcwMjJdIG1tY2JsazBib290MDogbW1jMDowMDAx IEFXUEQzUiBwYXJ0aXRpb24gMSA0LjAwIE1pQgpbwqDCoMKgIDAuOTQ3ODM1XSBtbWNibGswYm9v dDE6IG1tYzA6MDAwMSBBV1BEM1IgcGFydGl0aW9uIDIgNC4wMCBNaUIKW8KgwqDCoCAwLjk0ODcw Nl0gbW1jYmxrMHJwbWI6IG1tYzA6MDAwMSBBV1BEM1IgcGFydGl0aW9uIDMgNC4wMCBNaUIsIApj aGFyZGV2ICgyNDI6MCkKW8KgwqDCoCAwLjk0ODkyOF0gW2RybV0gdm9wX2NydGNfYXRvbWljX2Vu YWJsZQpbwqDCoMKgIDAuOTU0NjE0XcKgIG1tY2JsazA6IHAxIHAyIHAzIHA0IHA1ClvCoMKgwqAg MS4wNjEwNzFdIENvbnNvbGU6IHN3aXRjaGluZyB0byBjb2xvdXIgZnJhbWUgYnVmZmVyIGRldmlj ZSAxOTJ4MTI4ClvCoMKgwqAgMS4wOTU4MTldIHJvY2tjaGlwLWRybSBkaXNwbGF5LXN1YnN5c3Rl bTogZmIwOiByb2NrY2hpcGRybWZiIGZyYW1lIApidWZmZXIgZGV2aWNlClvCoMKgwqAgMS4wOTgw OTBdIFtkcm1dIEluaXRpYWxpemVkIHJvY2tjaGlwIDEuMC4wIDIwMTQwODE4IGZvciAKZGlzcGxh eS1zdWJzeXN0ZW0gb24gbWlub3IgMApbwqDCoMKgIDEuMTAwMzQyXSBoY3Rvc3lzOiB1bmFibGUg dG8gb3BlbiBydGMgZGV2aWNlIChydGMwKQo3NSwxwqDCoMKgwqDCoMKgwqDCoMKgIEJvdAoKT24g My8zLzIwIDg6MzggUE0sIEFuZHJ6ZWogSGFqZGEgd3JvdGU6Cj4gT24gMDIuMDMuMjAyMCAxNToy NiwgTWFyZWsgU3p5cHJvd3NraSB3cm90ZToKPj4gQW5hbG9naXhfZHAgZHJpdmVyIGFjcXVpcmVz IGFsbCBpdHMgcmVzb3VyY2VzIGluIC0+YmluZCgpIGNhbGxiYWNrLCB3aGF0Cj4+IGlzIGEgYml0 IGFnYWluc3QgdGhlIGRyaXZlciBjb21wb25lbnQgYmFzZWQgYXBwcm9hY2gsIHdoZXJlIGRyaXZl cgo+PiBpbml0aWFsaXphdGlvbiBpcyBzcGxpdCBpbnRvIHByb2JlKCksIHdoZXJlIGFsbCByZXNv dXJjZXMgYXJlIGdhdGhlcmVkLCBhbmQKPj4gYmluZCgpLCB3aGVyZSBvYmplY3RzIGFyZSBjcmVh dGVkIGFuZCBjb21wb3VuZCBkcml2ZXIgaXMgaW5pdGlhbGl6ZWQuCj4+IEV4dHJhY3QgcmVzb3Vy Y2UgcmVsYXRlZCBvcGVyYXRpb25zIHRvIGFuYWxvZ2l4X2RwX3Byb2JlKCkgYW5kCj4+IGFuYWxv Z2l4X2RwX3JlbW92ZSgpIGFuZCBjYWxsIHRoZW0gYmVmb3JlL2FmdGVyIHJlZ2lzdHJhdGlvbiBv ZiB0aGUgZGV2aWNlCj4+IGNvbXBvbmVudHMgZnJvbSB0aGUgbWFpbiBFeHlub3MgYW5kIFJvY2tj aGlwIERQIGRyaXZlcnMuCj4+Cj4+IFRoaXMgZml4ZXMgbXVsdGlwbGUgdHJpZXMgb2YgRFJNIGNv bXBvdW5kIGRyaXZlciBiaW5kKCkgd2hlbiBleGFtcGxlIHdoZW4KPj4gRFAgUEhZIGRyaXZlciBp cyBub3QgeWV0IGxvYWRlZC9wcm9iZWQoKToKPj4KPj4gW2RybV0gRXh5bm9zIERSTTogdXNpbmcg MTQ0MDAwMDAuZmltZCBkZXZpY2UgZm9yIERNQSBtYXBwaW5nIG9wZXJhdGlvbnMKPj4gZXh5bm9z LWRybSBleHlub3MtZHJtOiBib3VuZCAxNDQwMDAwMC5maW1kIChvcHMgZmltZF9jb21wb25lbnRf b3BzIFtleHlub3Nkcm1dKQo+PiBleHlub3MtZHJtIGV4eW5vcy1kcm06IGJvdW5kIDE0NDUwMDAw Lm1peGVyIChvcHMgbWl4ZXJfY29tcG9uZW50X29wcyBbZXh5bm9zZHJtXSkKPj4gZXh5bm9zLWRw IDE0NWIwMDAwLmRwLWNvbnRyb2xsZXI6IG5vIERQIHBoeSBjb25maWd1cmVkCj4+IGV4eW5vcy1k cm0gZXh5bm9zLWRybTogZmFpbGVkIHRvIGJpbmQgMTQ1YjAwMDAuZHAtY29udHJvbGxlciAob3Bz IGV4eW5vc19kcF9vcHMgW2V4eW5vc2RybV0pOiAtNTE3Cj4+IGV4eW5vcy1kcm0gZXh5bm9zLWRy bTogbWFzdGVyIGJpbmQgZmFpbGVkOiAtNTE3Cj4+IC4uLgo+PiBbZHJtXSBFeHlub3MgRFJNOiB1 c2luZyAxNDQwMDAwMC5maW1kIGRldmljZSBmb3IgRE1BIG1hcHBpbmcgb3BlcmF0aW9ucwo+PiBl eHlub3MtZHJtIGV4eW5vcy1kcm06IGJvdW5kIDE0NDAwMDAwLmZpbWQgKG9wcyBoZG1pX2VuYWJs ZSBbZXh5bm9zZHJtXSkKPj4gZXh5bm9zLWRybSBleHlub3MtZHJtOiBib3VuZCAxNDQ1MDAwMC5t aXhlciAob3BzIGhkbWlfZW5hYmxlIFtleHlub3Nkcm1dKQo+PiBleHlub3MtZHJtIGV4eW5vcy1k cm06IGJvdW5kIDE0NWIwMDAwLmRwLWNvbnRyb2xsZXIgKG9wcyBoZG1pX2VuYWJsZSBbZXh5bm9z ZHJtXSkKPj4gZXh5bm9zLWRybSBleHlub3MtZHJtOiBib3VuZCAxNDUzMDAwMC5oZG1pIChvcHMg aGRtaV9lbmFibGUgW2V4eW5vc2RybV0pCj4+IFtkcm1dIFN1cHBvcnRzIHZibGFuayB0aW1lc3Rh bXAgY2FjaGluZyBSZXYgMiAoMjEuMTAuMjAxMykuCj4+IENvbnNvbGU6IHN3aXRjaGluZyB0byBj b2xvdXIgZnJhbWUgYnVmZmVyIGRldmljZSAxNzB4NDgKPj4gZXh5bm9zLWRybSBleHlub3MtZHJt OiBmYjA6IGV4eW5vc2RybWZiIGZyYW1lIGJ1ZmZlciBkZXZpY2UKPj4gW2RybV0gSW5pdGlhbGl6 ZWQgZXh5bm9zIDEuMS4wIDIwMTgwMzMwIGZvciBleHlub3MtZHJtIG9uIG1pbm9yIDEKPj4gLi4u Cj4+Cj4+IFNpZ25lZC1vZmYtYnk6IE1hcmVrIFN6eXByb3dza2kgPG0uc3p5cHJvd3NraUBzYW1z dW5nLmNvbT4KPgo+IEkgaG9wZSBzb21lb25lIHdpdGggcm9ja2NoaXAgd2lsbCB0ZXN0IHRoZSBw YXRjaC4KPgo+IEkgYW0gbGl0dGxlIGJpdCB3b3JyaWVkIGFib3V0IHBvd2VyL3Jlc291cmNlIG1h bmFnZW1lbnQ6Cj4KPiAxLiBkcC0+Y2xvY2sgZW5hYmxlZCBpbiBwcm9iZS4KPgo+IDIuIHBtX3J1 bnRpbWUgZW5hYmxlZCBpbiBiaW5kLgo+Cj4gQm90aCBzZWVtcyB0byBtZSB0b28gZWFybHksIGJ1 dCBpdCBjb3VsZCBiZSBodyBpc3N1ZSBhbmQgc2hvdWxkIGJlCj4gYWRkcmVzc2VkIGluIHNlcGFy YXRlIHBhdGNoZXMgaWYgcG9zc2libGUuCj4KPgo+IEFzIEkgdW5kZXJzdGFuZCB0aGUgcGF0Y2gg dHJpZXMgdG8gc3BsaXQgdGhpbmdzIHdpdGhvdXQgY2hhbmdpbmcgb3JkZXIKPiBvZiBjYWxscywg c28gZm9yIG1lIGl0IGlzIE9LOgo+Cj4KPiBSZXZpZXdlZC1ieTogQW5kcnplaiBIYWpkYSA8YS5o YWpkYUBzYW1zdW5nLmNvbT4KPgo+ICDCoC0tCj4KPiBSZWdhcmRzCj4gQW5kcnplago+Cj4+IC0t LQo+PiAgIC4uLi9kcm0vYnJpZGdlL2FuYWxvZ2l4L2FuYWxvZ2l4X2RwX2NvcmUuYyAgICB8IDMz ICsrKysrKysrKysrKy0tLS0tLS0KPj4gICBkcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19k cC5jICAgICAgICAgICAgfCAxNSArKysrKystLS0KPj4gICAuLi4vZ3B1L2RybS9yb2NrY2hpcC9h bmFsb2dpeF9kcC1yb2NrY2hpcC5jICAgfCAxNSArKysrKy0tLS0KPj4gICBpbmNsdWRlL2RybS9i cmlkZ2UvYW5hbG9naXhfZHAuaCAgICAgICAgICAgICAgfCAgNSArLS0KPj4gICA0IGZpbGVzIGNo YW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hbmFsb2dpeC9hbmFsb2dpeF9kcF9jb3JlLmMgYi9k cml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4L2FuYWxvZ2l4X2RwX2NvcmUuYwo+PiBpbmRl eCBkZmI1OWE1ZmVmZWEuLmE4OWEwM2I2NmJmMiAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2JyaWRnZS9hbmFsb2dpeC9hbmFsb2dpeF9kcF9jb3JlLmMKPj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2JyaWRnZS9hbmFsb2dpeC9hbmFsb2dpeF9kcF9jb3JlLmMKPj4gQEAgLTE2NDYsOCAr MTY0Niw3IEBAIHN0YXRpYyBzc2l6ZV90IGFuYWxvZ2l4X2RwYXV4X3RyYW5zZmVyKHN0cnVjdCBk cm1fZHBfYXV4ICphdXgsCj4+ICAgfQo+PiAgIAo+PiAgIHN0cnVjdCBhbmFsb2dpeF9kcF9kZXZp Y2UgKgo+PiAtYW5hbG9naXhfZHBfYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1f ZGV2aWNlICpkcm1fZGV2LAo+PiAtCQkgc3RydWN0IGFuYWxvZ2l4X2RwX3BsYXRfZGF0YSAqcGxh dF9kYXRhKQo+PiArYW5hbG9naXhfZHBfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3Qg YW5hbG9naXhfZHBfcGxhdF9kYXRhICpwbGF0X2RhdGEpCj4+ICAgewo+PiAgIAlzdHJ1Y3QgcGxh dGZvcm1fZGV2aWNlICpwZGV2ID0gdG9fcGxhdGZvcm1fZGV2aWNlKGRldik7Cj4+ICAgCXN0cnVj dCBhbmFsb2dpeF9kcF9kZXZpY2UgKmRwOwo+PiBAQCAtMTc1MCwyMiArMTc0OSwzMCBAQCBhbmFs b2dpeF9kcF9iaW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRybV9kZXZpY2UgKmRybV9k ZXYsCj4+ICAgCQkJCQlpcnFfZmxhZ3MsICJhbmFsb2dpeC1kcCIsIGRwKTsKPj4gICAJaWYgKHJl dCkgewo+PiAgIAkJZGV2X2VycigmcGRldi0+ZGV2LCAiZmFpbGVkIHRvIHJlcXVlc3QgaXJxXG4i KTsKPj4gLQkJZ290byBlcnJfZGlzYWJsZV9wbV9ydW50aW1lOwo+PiArCQlyZXR1cm4gRVJSX1BU UihyZXQpOwo+PiAgIAl9Cj4+ICAgCWRpc2FibGVfaXJxKGRwLT5pcnEpOwo+PiAgIAo+PiArCXJl dHVybiBkcDsKPj4gK30KPj4gK0VYUE9SVF9TWU1CT0xfR1BMKGFuYWxvZ2l4X2RwX3Byb2JlKTsK Pj4gKwo+PiAraW50IGFuYWxvZ2l4X2RwX2JpbmQoc3RydWN0IGFuYWxvZ2l4X2RwX2RldmljZSAq ZHAsIHN0cnVjdCBkcm1fZGV2aWNlICpkcm1fZGV2KQo+PiArewo+PiArCWludCByZXQ7Cj4+ICsK Pj4gICAJZHAtPmRybV9kZXYgPSBkcm1fZGV2Owo+PiAgIAlkcC0+ZW5jb2RlciA9IGRwLT5wbGF0 X2RhdGEtPmVuY29kZXI7Cj4+ICAgCj4+ICAgCWRwLT5hdXgubmFtZSA9ICJEUC1BVVgiOwo+PiAg IAlkcC0+YXV4LnRyYW5zZmVyID0gYW5hbG9naXhfZHBhdXhfdHJhbnNmZXI7Cj4+IC0JZHAtPmF1 eC5kZXYgPSAmcGRldi0+ZGV2Owo+PiArCWRwLT5hdXguZGV2ID0gZHAtPmRldjsKPj4gICAKPj4g ICAJcmV0ID0gZHJtX2RwX2F1eF9yZWdpc3RlcigmZHAtPmF1eCk7Cj4+ICAgCWlmIChyZXQpCj4+ IC0JCXJldHVybiBFUlJfUFRSKHJldCk7Cj4+ICsJCXJldHVybiByZXQ7Cj4+ICAgCj4+IC0JcG1f cnVudGltZV9lbmFibGUoZGV2KTsKPj4gKwlwbV9ydW50aW1lX2VuYWJsZShkcC0+ZGV2KTsKPj4g ICAKPj4gICAJcmV0ID0gYW5hbG9naXhfZHBfY3JlYXRlX2JyaWRnZShkcm1fZGV2LCBkcCk7Cj4+ ICAgCWlmIChyZXQpIHsKPj4gQEAgLTE3NzMsMTMgKzE3ODAsMTIgQEAgYW5hbG9naXhfZHBfYmlu ZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZGV2aWNlICpkcm1fZGV2LAo+PiAgIAkJ Z290byBlcnJfZGlzYWJsZV9wbV9ydW50aW1lOwo+PiAgIAl9Cj4+ICAgCj4+IC0JcmV0dXJuIGRw Owo+PiArCXJldHVybiAwOwo+PiAgIAo+PiAgIGVycl9kaXNhYmxlX3BtX3J1bnRpbWU6Cj4+ICsJ cG1fcnVudGltZV9kaXNhYmxlKGRwLT5kZXYpOwo+PiAgIAo+PiAtCXBtX3J1bnRpbWVfZGlzYWJs ZShkZXYpOwo+PiAtCj4+IC0JcmV0dXJuIEVSUl9QVFIocmV0KTsKPj4gKwlyZXR1cm4gcmV0Owo+ PiAgIH0KPj4gICBFWFBPUlRfU1lNQk9MX0dQTChhbmFsb2dpeF9kcF9iaW5kKTsKPj4gICAKPj4g QEAgLTE3OTYsMTAgKzE4MDIsMTUgQEAgdm9pZCBhbmFsb2dpeF9kcF91bmJpbmQoc3RydWN0IGFu YWxvZ2l4X2RwX2RldmljZSAqZHApCj4+ICAgCj4+ICAgCWRybV9kcF9hdXhfdW5yZWdpc3Rlcigm ZHAtPmF1eCk7Cj4+ICAgCXBtX3J1bnRpbWVfZGlzYWJsZShkcC0+ZGV2KTsKPj4gLQljbGtfZGlz YWJsZV91bnByZXBhcmUoZHAtPmNsb2NrKTsKPj4gICB9Cj4+ICAgRVhQT1JUX1NZTUJPTF9HUEwo YW5hbG9naXhfZHBfdW5iaW5kKTsKPj4gICAKPj4gK3ZvaWQgYW5hbG9naXhfZHBfcmVtb3ZlKHN0 cnVjdCBhbmFsb2dpeF9kcF9kZXZpY2UgKmRwKQo+PiArewo+PiArCWNsa19kaXNhYmxlX3VucHJl cGFyZShkcC0+Y2xvY2spOwo+PiArfQo+PiArRVhQT1JUX1NZTUJPTF9HUEwoYW5hbG9naXhfZHBf cmVtb3ZlKTsKPj4gKwo+PiAgICNpZmRlZiBDT05GSUdfUE0KPj4gICBpbnQgYW5hbG9naXhfZHBf c3VzcGVuZChzdHJ1Y3QgYW5hbG9naXhfZHBfZGV2aWNlICpkcCkKPj4gICB7Cj4+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcC5jIGIvZHJpdmVycy9ncHUvZHJt L2V4eW5vcy9leHlub3NfZHAuYwo+PiBpbmRleCA0Nzg1ODg1YzBmNGYuLjU1OGI3OGU4Y2MzMiAx MDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHAuYwo+PiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcC5jCj4+IEBAIC0xODQsMTMgKzE4NCwx MSBAQCBzdGF0aWMgaW50IGV4eW5vc19kcF9iaW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0 IGRldmljZSAqbWFzdGVyLCB2b2lkICpkYXRhKQo+PiAgIAo+PiAgIAlkcC0+cGxhdF9kYXRhLmVu Y29kZXIgPSBlbmNvZGVyOwo+PiAgIAo+PiAtCWRwLT5hZHAgPSBhbmFsb2dpeF9kcF9iaW5kKGRl diwgZHAtPmRybV9kZXYsICZkcC0+cGxhdF9kYXRhKTsKPj4gLQlpZiAoSVNfRVJSKGRwLT5hZHAp KSB7Cj4+ICsJcmV0ID0gYW5hbG9naXhfZHBfYmluZChkcC0+YWRwLCBkcC0+ZHJtX2Rldik7Cj4+ ICsJaWYgKHJldCkKPj4gICAJCWRwLT5lbmNvZGVyLmZ1bmNzLT5kZXN0cm95KCZkcC0+ZW5jb2Rl cik7Cj4+IC0JCXJldHVybiBQVFJfRVJSKGRwLT5hZHApOwo+PiAtCX0KPj4gICAKPj4gLQlyZXR1 cm4gMDsKPj4gKwlyZXR1cm4gcmV0Owo+PiAgIH0KPj4gICAKPj4gICBzdGF0aWMgdm9pZCBleHlu b3NfZHBfdW5iaW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAqbWFzdGVyLAo+ PiBAQCAtMjUwLDEyICsyNDgsMTkgQEAgc3RhdGljIGludCBleHlub3NfZHBfcHJvYmUoc3RydWN0 IHBsYXRmb3JtX2RldmljZSAqcGRldikKPj4gICAJZHAtPnB0bl9icmlkZ2UgPSBicmlkZ2U7Cj4+ ICAgCj4+ICAgb3V0Ogo+PiArCWRwLT5hZHAgPSBhbmFsb2dpeF9kcF9wcm9iZShkZXYsICZkcC0+ cGxhdF9kYXRhKTsKPj4gKwlpZiAoSVNfRVJSKGRwLT5hZHApKQo+PiArCQlyZXR1cm4gUFRSX0VS UihkcC0+YWRwKTsKPj4gKwo+PiAgIAlyZXR1cm4gY29tcG9uZW50X2FkZCgmcGRldi0+ZGV2LCAm ZXh5bm9zX2RwX29wcyk7Cj4+ICAgfQo+PiAgIAo+PiAgIHN0YXRpYyBpbnQgZXh5bm9zX2RwX3Jl bW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+PiAgIHsKPj4gKwlzdHJ1Y3QgZXh5 bm9zX2RwX2RldmljZSAqZHAgPSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YShwZGV2KTsKPj4gKwo+PiAg IAljb21wb25lbnRfZGVsKCZwZGV2LT5kZXYsICZleHlub3NfZHBfb3BzKTsKPj4gKwlhbmFsb2dp eF9kcF9yZW1vdmUoZHAtPmFkcCk7Cj4+ICAgCj4+ICAgCXJldHVybiAwOwo+PiAgIH0KPj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9hbmFsb2dpeF9kcC1yb2NrY2hpcC5j IGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL2FuYWxvZ2l4X2RwLXJvY2tjaGlwLmMKPj4gaW5k ZXggZjM4ZjVlMTEzYzZiLi5iODVjZjI1ODI4NjQgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9yb2NrY2hpcC9hbmFsb2dpeF9kcC1yb2NrY2hpcC5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9yb2NrY2hpcC9hbmFsb2dpeF9kcC1yb2NrY2hpcC5jCj4+IEBAIC0zNDksMTEgKzM0OSw5 IEBAIHN0YXRpYyBpbnQgcm9ja2NoaXBfZHBfYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVj dCBkZXZpY2UgKm1hc3RlciwKPj4gICAJZHAtPnBsYXRfZGF0YS5wb3dlcl9vZmYgPSByb2NrY2hp cF9kcF9wb3dlcmRvd247Cj4+ICAgCWRwLT5wbGF0X2RhdGEuZ2V0X21vZGVzID0gcm9ja2NoaXBf ZHBfZ2V0X21vZGVzOwo+PiAgIAo+PiAtCWRwLT5hZHAgPSBhbmFsb2dpeF9kcF9iaW5kKGRldiwg ZHAtPmRybV9kZXYsICZkcC0+cGxhdF9kYXRhKTsKPj4gLQlpZiAoSVNfRVJSKGRwLT5hZHApKSB7 Cj4+IC0JCXJldCA9IFBUUl9FUlIoZHAtPmFkcCk7Cj4+ICsJcmV0ID0gYW5hbG9naXhfZHBfYmlu ZChkcC0+YWRwLCBkcm1fZGV2KTsKPj4gKwlpZiAocmV0KQo+PiAgIAkJZ290byBlcnJfY2xlYW51 cF9lbmNvZGVyOwo+PiAtCX0KPj4gICAKPj4gICAJcmV0dXJuIDA7Cj4+ICAgZXJyX2NsZWFudXBf ZW5jb2RlcjoKPj4gQEAgLTM2OCw4ICszNjYsNiBAQCBzdGF0aWMgdm9pZCByb2NrY2hpcF9kcF91 bmJpbmQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZGV2aWNlICptYXN0ZXIsCj4+ICAgCj4+ ICAgCWFuYWxvZ2l4X2RwX3VuYmluZChkcC0+YWRwKTsKPj4gICAJZHAtPmVuY29kZXIuZnVuY3Mt PmRlc3Ryb3koJmRwLT5lbmNvZGVyKTsKPj4gLQo+PiAtCWRwLT5hZHAgPSBFUlJfUFRSKC1FTk9E RVYpOwo+PiAgIH0KPj4gICAKPj4gICBzdGF0aWMgY29uc3Qgc3RydWN0IGNvbXBvbmVudF9vcHMg cm9ja2NoaXBfZHBfY29tcG9uZW50X29wcyA9IHsKPj4gQEAgLTQwMiwxMiArMzk4LDE5IEBAIHN0 YXRpYyBpbnQgcm9ja2NoaXBfZHBfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikK Pj4gICAKPj4gICAJcGxhdGZvcm1fc2V0X2RydmRhdGEocGRldiwgZHApOwo+PiAgIAo+PiArCWRw LT5hZHAgPSBhbmFsb2dpeF9kcF9wcm9iZShkZXYsICZkcC0+cGxhdF9kYXRhKTsKPj4gKwlpZiAo SVNfRVJSKGRwLT5hZHApKQo+PiArCQlyZXR1cm4gUFRSX0VSUihkcC0+YWRwKTsKPj4gKwo+PiAg IAlyZXR1cm4gY29tcG9uZW50X2FkZChkZXYsICZyb2NrY2hpcF9kcF9jb21wb25lbnRfb3BzKTsK Pj4gICB9Cj4+ICAgCj4+ICAgc3RhdGljIGludCByb2NrY2hpcF9kcF9yZW1vdmUoc3RydWN0IHBs YXRmb3JtX2RldmljZSAqcGRldikKPj4gICB7Cj4+ICsJc3RydWN0IHJvY2tjaGlwX2RwX2Rldmlj ZSAqZHAgPSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YShwZGV2KTsKPj4gKwo+PiAgIAljb21wb25lbnRf ZGVsKCZwZGV2LT5kZXYsICZyb2NrY2hpcF9kcF9jb21wb25lbnRfb3BzKTsKPj4gKwlhbmFsb2dp eF9kcF9yZW1vdmUoZHAtPmFkcCk7Cj4+ICAgCj4+ICAgCXJldHVybiAwOwo+PiAgIH0KPj4gZGlm ZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2JyaWRnZS9hbmFsb2dpeF9kcC5oIGIvaW5jbHVkZS9kcm0v YnJpZGdlL2FuYWxvZ2l4X2RwLmgKPj4gaW5kZXggN2FhMmY5M2RhNDljLi5iMGRjYzA3MzM0YTEg MTAwNjQ0Cj4+IC0tLSBhL2luY2x1ZGUvZHJtL2JyaWRnZS9hbmFsb2dpeF9kcC5oCj4+ICsrKyBi L2luY2x1ZGUvZHJtL2JyaWRnZS9hbmFsb2dpeF9kcC5oCj4+IEBAIC00Miw5ICs0MiwxMCBAQCBp bnQgYW5hbG9naXhfZHBfcmVzdW1lKHN0cnVjdCBhbmFsb2dpeF9kcF9kZXZpY2UgKmRwKTsKPj4g ICBpbnQgYW5hbG9naXhfZHBfc3VzcGVuZChzdHJ1Y3QgYW5hbG9naXhfZHBfZGV2aWNlICpkcCk7 Cj4+ICAgCj4+ICAgc3RydWN0IGFuYWxvZ2l4X2RwX2RldmljZSAqCj4+IC1hbmFsb2dpeF9kcF9i aW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRybV9kZXZpY2UgKmRybV9kZXYsCj4+IC0J CSBzdHJ1Y3QgYW5hbG9naXhfZHBfcGxhdF9kYXRhICpwbGF0X2RhdGEpOwo+PiArYW5hbG9naXhf ZHBfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgYW5hbG9naXhfZHBfcGxhdF9kYXRh ICpwbGF0X2RhdGEpOwo+PiAraW50IGFuYWxvZ2l4X2RwX2JpbmQoc3RydWN0IGFuYWxvZ2l4X2Rw X2RldmljZSAqZHAsIHN0cnVjdCBkcm1fZGV2aWNlICpkcm1fZGV2KTsKPj4gICB2b2lkIGFuYWxv Z2l4X2RwX3VuYmluZChzdHJ1Y3QgYW5hbG9naXhfZHBfZGV2aWNlICpkcCk7Cj4+ICt2b2lkIGFu YWxvZ2l4X2RwX3JlbW92ZShzdHJ1Y3QgYW5hbG9naXhfZHBfZGV2aWNlICpkcCk7Cj4+ICAgCj4+ ICAgaW50IGFuYWxvZ2l4X2RwX3N0YXJ0X2NyYyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yKTsKPj4gICBpbnQgYW5hbG9naXhfZHBfc3RvcF9jcmMoc3RydWN0IGRybV9jb25uZWN0b3Ig KmNvbm5lY3Rvcik7Cj4KPgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCj4gTGludXgtcm9ja2NoaXAgbWFpbGluZyBsaXN0Cj4gTGludXgtcm9ja2NoaXBA bGlzdHMuaW5mcmFkZWFkLm9yZwo+IGh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4v bGlzdGluZm8vbGludXgtcm9ja2NoaXAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWwK