Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp3582063yba; Tue, 23 Apr 2019 06:22:59 -0700 (PDT) X-Google-Smtp-Source: APXvYqzx1hXAKSJvCGESlpDyPLJUE3NlGKSY7mqYnjexAi37oqeP40jNAhnRO0YxDurza7I1PFWf X-Received: by 2002:a62:e501:: with SMTP id n1mr26741819pff.17.1556025779474; Tue, 23 Apr 2019 06:22:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556025779; cv=none; d=google.com; s=arc-20160816; b=BiSH0r/b2IK5Ynh0hrpvIYSYGDWJiFbU2YFsnBCxzN9+9PAlyR4CTEHrD+URyguv03 Ei1iKtVoUvk4xzFVhT+lOE2Wnbm43qwG6VOJyJeGurdOJCORkyUoCdD9TIkIxxysye1l Zm7RzPGD1Tf9uN5tm2K1c+xJRHxep78ktkzu5bnd34zf/FiHgqcKzpnt6TnI0bm2aodF mnV4I3rd/sMYQ3l8nfh5RosxQBSOQUajPJ60smipGu1gs3fZpP+yuQFjoPM/ptcqsRbI optG/TMpID8/J91JoBHm+F+Rm2grXjsm+K0N9R4BLuHXGCc37vnLKthJ4zh0Fo5hgrHY vrxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature; bh=F6qWHCxLk19i08fJN0J/2h9lYJr0W1UeRc5pu39TcyY=; b=XEHn7NJvePsIYp9PjbOguEm5E5QSlV9oJtW/tm7uMQ9LEh3Ggb0JT2S5n1uDt5XcEq yUilIQwPKm3XXXelbzbIwMSelgv8PdUs5GP6IZ5YDiBPpClCdoL8EznwJ3FMPm7o1U3M O7cadu3fdj8tyOcfBwjoRez9+JawD37mfrNhAafaKjLpDULkdYx5YXKuESRarDH0A2fc QjTw58b/OnFDyM8nNfLwLhIohdLicaOLTWCQaBMpCYZEsBZBut7bBaIHdNguooXwlWtZ NMIqbfi9HmaHFwlT4HNtX7KW+Fg5KPBsZuqLjGBkH28bkHA5e6rkYMqutcQR/CGsNGPa f5+Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@microchiptechnology.onmicrosoft.com header.s=selector1-microchiptechnology-onmicrosoft-com header.b=aipArNB1; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d33si10004425pla.345.2019.04.23.06.22.43; Tue, 23 Apr 2019 06:22:59 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@microchiptechnology.onmicrosoft.com header.s=selector1-microchiptechnology-onmicrosoft-com header.b=aipArNB1; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727869AbfDWNTn (ORCPT + 99 others); Tue, 23 Apr 2019 09:19:43 -0400 Received: from esa6.microchip.iphmx.com ([216.71.154.253]:26361 "EHLO esa6.microchip.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727751AbfDWNTm (ORCPT ); Tue, 23 Apr 2019 09:19:42 -0400 X-IronPort-AV: E=Sophos;i="5.60,385,1549954800"; d="scan'208";a="27959335" Received: from smtpout.microchip.com (HELO email.microchip.com) ([198.175.253.82]) by esa6.microchip.iphmx.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 23 Apr 2019 06:19:41 -0700 Received: from NAM02-BL2-obe.outbound.protection.outlook.com (10.10.215.89) by email.microchip.com (10.10.76.105) with Microsoft SMTP Server (TLS) id 14.3.352.0; Tue, 23 Apr 2019 06:19:40 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microchiptechnology.onmicrosoft.com; s=selector1-microchiptechnology-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F6qWHCxLk19i08fJN0J/2h9lYJr0W1UeRc5pu39TcyY=; b=aipArNB1Z66lS8hE87YX89DNv15HwnmetYzaJbbnkqai3w6oS+QBSEkogqLgT7X0NBo+lWucZmuYHoQHX2ioc4ksIygwV0eEsBKO2ymV2HAT4WxOBRF+RjXQKaNRbL3X7b/tMYcIQnUqehI2GPGcNcHFCPVY19ULwyuPqEP+FgE= Received: from DM5PR11MB1242.namprd11.prod.outlook.com (10.168.108.8) by DM5PR11MB1497.namprd11.prod.outlook.com (10.172.38.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1813.14; Tue, 23 Apr 2019 13:19:38 +0000 Received: from DM5PR11MB1242.namprd11.prod.outlook.com ([fe80::e0e3:1d51:9e3e:6dc]) by DM5PR11MB1242.namprd11.prod.outlook.com ([fe80::e0e3:1d51:9e3e:6dc%3]) with mapi id 15.20.1835.010; Tue, 23 Apr 2019 13:19:38 +0000 From: To: , , , CC: , , Subject: Re: [PATCH 4/7] media: atmel: atmel-isc: add support for DO_WHITE_BALANCE Thread-Topic: [PATCH 4/7] media: atmel: atmel-isc: add support for DO_WHITE_BALANCE Thread-Index: AQHU7sRrNLP5XTfBXUK9XK97Esze7qY1dWCAgAdZAACADQBXAIAAAOaA Date: Tue, 23 Apr 2019 13:19:38 +0000 Message-ID: References: <1554807715-2353-1-git-send-email-eugen.hristev@microchip.com> <1554807715-2353-5-git-send-email-eugen.hristev@microchip.com> <08d1bf29-326b-7a8c-51c4-088d0effc4b6@xs4all.nl> <5fcb8f59-6979-c355-574b-40bb13610252@microchip.com> <2c7b069e-f81c-a643-4feb-0839277752e1@xs4all.nl> In-Reply-To: <2c7b069e-f81c-a643-4feb-0839277752e1@xs4all.nl> Accept-Language: ro-RO, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: VE1PR08CA0029.eurprd08.prod.outlook.com (2603:10a6:803:104::42) To DM5PR11MB1242.namprd11.prod.outlook.com (2603:10b6:3:14::8) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Eugen.Hristev@microchip.com; x-ms-exchange-messagesentrepresentingtype: 1 x-tagtoolbar-keys: D20190423161509096 x-originating-ip: [94.177.32.154] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a3d9252a-0100-4369-d935-08d6c7ee5644 x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600141)(711020)(4605104)(2017052603328)(7193020);SRVR:DM5PR11MB1497; x-ms-traffictypediagnostic: DM5PR11MB1497: x-ms-exchange-purlcount: 1 x-microsoft-antispam-prvs: x-forefront-prvs: 0016DEFF96 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(396003)(136003)(346002)(366004)(376002)(39860400002)(51914003)(199004)(189003)(53546011)(53936002)(14454004)(305945005)(102836004)(6436002)(8676002)(478600001)(68736007)(36756003)(7736002)(81166006)(97736004)(966005)(6246003)(6306002)(6512007)(72206003)(186003)(81156014)(26005)(6486002)(386003)(31686004)(4326008)(93886005)(6506007)(31696002)(14444005)(256004)(71200400001)(2501003)(5660300002)(476003)(86362001)(11346002)(73956011)(52116002)(71190400001)(66476007)(8936002)(446003)(66556008)(229853002)(2906002)(2616005)(486006)(66066001)(76176011)(25786009)(99286004)(110136005)(54906003)(66446008)(3846002)(316002)(6116002)(64756008)(2201001)(66946007);DIR:OUT;SFP:1101;SCL:1;SRVR:DM5PR11MB1497;H:DM5PR11MB1242.namprd11.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: microchip.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: lFlT5dLPiucbPxlDMsoByFnTM9gt3YKMswr4iQVDjNAjggKvg2cnZDHUDdFawMx5jI0C2oZ6N1VExOQdXIA15Jrk3G36mRnr2GjFoGct4obsLE21DcXIbfXaduJMnonx3iCCP2/9cCt2wJn7BvRjS4Bp9vOJPgOtOMCZORsfcWRiCxeiw7VUs2fm9rMYROqJfeHtNqM820dHzIonjy2H9qzXahCfE0aWvf0+pyVfMH/lkiV8xuTNgu98ZvDTiatVKd/OaFg7PgLwECnEDeB6SFA2b9wWj69b666xg44C9RIAhTJbGoJ0t/oDh91PuLe2UCTAvNDGChoqybC5jgu8wPBxZdLqCFhVYk6eVChA2UrInAe7mBOG+prrJrDItu/PhgHDUO6bOhNNApLjx5OTIaTcKeWjm+YMBLvjwjiqVBE= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: a3d9252a-0100-4369-d935-08d6c7ee5644 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Apr 2019 13:19:38.6002 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3f4057f3-b418-4d4e-ba84-d55b4e897d88 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR11MB1497 X-OriginatorOrg: microchip.com Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org DQoNCk9uIDIzLjA0LjIwMTkgMTY6MTEsIEhhbnMgVmVya3VpbCB3cm90ZToNCj4gT24gNC8xNS8x OSA4OjQzIEFNLCBFdWdlbi5IcmlzdGV2QG1pY3JvY2hpcC5jb20gd3JvdGU6DQo+Pg0KPj4NCj4+ IE9uIDEwLjA0LjIwMTkgMTc6MjYsIEhhbnMgVmVya3VpbCB3cm90ZToNCj4+DQo+Pj4NCj4+PiBP biA0LzkvMTkgMTowNyBQTSwgRXVnZW4uSHJpc3RldkBtaWNyb2NoaXAuY29tIHdyb3RlOg0KPj4+ PiBGcm9tOiBFdWdlbiBIcmlzdGV2IDxldWdlbi5ocmlzdGV2QG1pY3JvY2hpcC5jb20+DQo+Pj4+ DQo+Pj4+IFRoaXMgYWRkcyBzdXBwb3J0IGZvciB0aGUgJ2J1dHRvbicgY29udHJvbCBET19XSElU RV9CQUxBTkNFDQo+Pj4+IFRoaXMgZmVhdHVyZSB3aWxsIGVuYWJsZSB0aGUgSVNDIHRvIGNvbXB1 dGUgdGhlIHdoaXRlIGJhbGFuY2UgY29lZmZpY2llbnRzDQo+Pj4+IGluIGEgb25lIHRpbWUgc2hv dCwgYXQgdGhlIHVzZXIgZGlzY3JldGlvbi4NCj4+Pj4gVGhpcyBjYW4gYmUgdXNlZCBpZiBhIGNv bG9yIGNoYXJ0L2dyZXkgY2hhcnQgaXMgcHJlc2VudCBpbiBmcm9udCBvZiB0aGUgY2FtZXJhLg0K Pj4+PiBUaGUgSVNDIHdpbGwgYWRqdXN0IHRoZSBjb2VmZmljaWVudHMgYW5kIGhhdmUgdGhlbSBm aXhlZCB1bnRpbCBuZXh0IGJhbGFuY2UNCj4+Pj4gb3IgdW50aWwgc2Vuc29yIG1vZGUgaXMgY2hh bmdlZC4NCj4+Pj4gVGhpcyBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIGZvciB3aGl0ZSBiYWxhbmNl IGFkanVzdG1lbnQgaW4gZGlmZmVyZW50DQo+Pj4+IGxpZ2h0aW5nIHNjZW5hcmlvcywgYW5kIHRo ZW4gdGFraW5nIHBob3RvcyB0byBzaW1pbGFyIHNjZW5lcnkuDQo+Pj4+IFRoZSBvbGQgYXV0byB3 aGl0ZSBiYWxhbmNlIHN0YXlzIGluIHBsYWNlLCB3aGVyZSB0aGUgSVNDIHdpbGwgYWRqdXN0IGV2 ZXJ5DQo+Pj4+IDQgZnJhbWVzIHRvIHRoZSBjdXJyZW50IHNjZW5lcnkgbGlnaHRpbmcsIGlmIHRo ZSBzY2VuZXJ5IGlzIGFwcHJveGltYXRlbHkNCj4+Pj4gZ3JleSBpbiBhdmVyYWdlLCBvdGhlcndp c2UgZ3JleSB3b3JsZCBhbGdvcml0aG0gZmFpbHMuDQo+Pj4+IE9uZSB0aW1lIHdoaXRlIGJhbGFu Y2UgYWRqdXN0bWVudHMgbmVlZHMgc3RyZWFtaW5nIHRvIGJlIGVuYWJsZWQsIHN1Y2ggdGhhdA0K Pj4+PiBjYXB0dXJlIGlzIGVuYWJsZWQgYW5kIHRoZSBoaXN0b2dyYW0gaGFzIGRhdGEgdG8gd29y ayB3aXRoLg0KPj4+PiBIaXN0b2dyYW0gd2l0aG91dCBjYXB0dXJlIGRvZXMgbm90IHdvcmsgaW4g dGhpcyBoYXJkd2FyZSBtb2R1bGUuDQo+Pj4+DQo+Pj4+IFRvIGRpc2FibGUgYXV0byB3aGl0ZSBi YWxhbmNlIGZlYXR1cmUgKGZpcnN0IHN0ZXApDQo+Pj4+IHY0bDItY3RsIC0tc2V0LWN0cmw9d2hp dGVfYmFsYW5jZV9hdXRvbWF0aWM9MA0KPj4+Pg0KPj4+PiBUbyBzdGFydCB0aGUgb25lIHRpbWUg d2hpdGUgYmFsYW5jZSBwcm9jZWR1cmU6DQo+Pj4+IHY0bDItY3RsIC0tc2V0LWN0cmw9ZG9fd2hp dGVfYmFsYW5jZT0xDQo+Pj4+DQo+Pj4+IFVzZXIgY29udHJvbHMgbm93IGluY2x1ZGUgdGhlIGRv X3doaXRlX2JhbGFuY2UgY3RybDoNCj4+Pj4gVXNlciBDb250cm9scw0KPj4+Pg0KPj4+PiAgICAg ICAgICAgICAgICAgICAgICAgIGJyaWdodG5lc3MgMHgwMDk4MDkwMCAoaW50KSAgICA6IG1pbj0t MTAyNCBtYXg9MTAyMyBzdGVwPTEgZGVmYXVsdD0wIHZhbHVlPTAgZmxhZ3M9c2xpZGVyDQo+Pj4+ ICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cmFzdCAweDAwOTgwOTAxIChpbnQpICAgIDog bWluPS0yMDQ4IG1heD0yMDQ3IHN0ZXA9MSBkZWZhdWx0PTI1NiB2YWx1ZT0yNTYgZmxhZ3M9c2xp ZGVyDQo+Pj4+ICAgICAgICAgICB3aGl0ZV9iYWxhbmNlX2F1dG9tYXRpYyAweDAwOTgwOTBjIChi b29sKSAgIDogZGVmYXVsdD0xIHZhbHVlPTENCj4+Pj4gICAgICAgICAgICAgICAgICBkb193aGl0 ZV9iYWxhbmNlIDB4MDA5ODA5MGQgKGJ1dHRvbikgOiBmbGFncz13cml0ZS1vbmx5LCBleGVjdXRl LW9uLXdyaXRlDQo+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYW1tYSAweDAwOTgw OTEwIChpbnQpICAgIDogbWluPTAgbWF4PTIgc3RlcD0xIGRlZmF1bHQ9MiB2YWx1ZT0yIGZsYWdz PXNsaWRlcg0KPj4+Pg0KPj4+PiBTaWduZWQtb2ZmLWJ5OiBFdWdlbiBIcmlzdGV2IDxldWdlbi5o cmlzdGV2QG1pY3JvY2hpcC5jb20+DQo+Pj4+IC0tLQ0KPj4+PiAgICBkcml2ZXJzL21lZGlhL3Bs YXRmb3JtL2F0bWVsL2F0bWVsLWlzYy5jIHwgNzQgKysrKysrKysrKysrKysrKysrKysrKysrKysr KystLS0NCj4+Pj4gICAgMSBmaWxlIGNoYW5nZWQsIDY5IGluc2VydGlvbnMoKyksIDUgZGVsZXRp b25zKC0pDQo+Pj4+DQo+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2F0 bWVsL2F0bWVsLWlzYy5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9hdG1lbC9hdG1lbC1pc2Mu Yw0KPj4+PiBpbmRleCBmNmI4YjAwZS4uZTUxNjgwNSAxMDA2NDQNCj4+Pj4gLS0tIGEvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9hdG1lbC9hdG1lbC1pc2MuYw0KPj4+PiArKysgYi9kcml2ZXJzL21l ZGlhL3BsYXRmb3JtL2F0bWVsL2F0bWVsLWlzYy5jDQo+Pj4+IEBAIC0xNjcsNiArMTY3LDkgQEAg c3RydWN0IGlzY19jdHJscyB7DQo+Pj4+ICAgIAl1MzIgYnJpZ2h0bmVzczsNCj4+Pj4gICAgCXUz MiBjb250cmFzdDsNCj4+Pj4gICAgCXU4IGdhbW1hX2luZGV4Ow0KPj4+PiArI2RlZmluZSBJU0Nf V0JfTk9ORQkwDQo+Pj4+ICsjZGVmaW5lIElTQ19XQl9BVVRPCTENCj4+Pj4gKyNkZWZpbmUgSVND X1dCX09ORVRJTUUJMg0KPj4+PiAgICAJdTggYXdiOw0KPj4+PiAgICANCj4+Pj4gICAgCS8qIG9u ZSBmb3IgZWFjaCBjb21wb25lbnQgOiBHUiwgUiwgR0IsIEIgKi8NCj4+Pj4gQEAgLTIxMCw2ICsy MTMsNyBAQCBzdHJ1Y3QgaXNjX2RldmljZSB7DQo+Pj4+ICAgIAlzdHJ1Y3QgZm10X2NvbmZpZwl0 cnlfY29uZmlnOw0KPj4+PiAgICANCj4+Pj4gICAgCXN0cnVjdCBpc2NfY3RybHMJY3RybHM7DQo+ Pj4+ICsJc3RydWN0IHY0bDJfY3RybAkqZG9fd2JfY3RybDsNCj4+Pj4gICAgCXN0cnVjdCB3b3Jr X3N0cnVjdAlhd2Jfd29yazsNCj4+Pj4gICAgDQo+Pj4+ICAgIAlzdHJ1Y3QgbXV0ZXgJCWxvY2s7 DQo+Pj4+IEBAIC04MDksNyArODEzLDcgQEAgc3RhdGljIHZvaWQgaXNjX3NldF9waXBlbGluZShz dHJ1Y3QgaXNjX2RldmljZSAqaXNjLCB1MzIgcGlwZWxpbmUpDQo+Pj4+ICAgIA0KPj4+PiAgICAJ YmF5X2NmZyA9IGlzYy0+Y29uZmlnLnNkX2Zvcm1hdC0+Y2ZhX2JheWNmZzsNCj4+Pj4gICAgDQo+ Pj4+IC0JaWYgKCFjdHJscy0+YXdiKQ0KPj4+PiArCWlmIChjdHJscy0+YXdiID09IElTQ19XQl9O T05FKQ0KPj4+PiAgICAJCWlzY19yZXNldF9hd2JfY3RybHMoaXNjKTsNCj4+Pj4gICAgDQo+Pj4+ ICAgIAlyZWdtYXBfd3JpdGUocmVnbWFwLCBJU0NfV0JfQ0ZHLCBiYXlfY2ZnKTsNCj4+Pj4gQEAg LTE5MjgsNyArMTkzMiw3IEBAIHN0YXRpYyB2b2lkIGlzY19hd2Jfd29yayhzdHJ1Y3Qgd29ya19z dHJ1Y3QgKncpDQo+Pj4+ICAgIAliYXlzZWwgPSBpc2MtPmNvbmZpZy5zZF9mb3JtYXQtPmNmYV9i YXljZmcgPDwgSVNDX0hJU19DRkdfQkFZU0VMX1NISUZUOw0KPj4+PiAgICANCj4+Pj4gICAgCS8q IGlmIG5vIG1vcmUgYXV0byB3aGl0ZSBiYWxhbmNlLCByZXNldCBjb250cm9scy4gKi8NCj4+Pj4g LQlpZiAoIWN0cmxzLT5hd2IpDQo+Pj4+ICsJaWYgKGN0cmxzLT5hd2IgPT0gSVNDX1dCX05PTkUp DQo+Pj4+ICAgIAkJaXNjX3Jlc2V0X2F3Yl9jdHJscyhpc2MpOw0KPj4+PiAgICANCj4+Pj4gICAg CXBtX3J1bnRpbWVfZ2V0X3N5bmMoaXNjLT5kZXYpOw0KPj4+PiBAQCAtMTkzNyw3ICsxOTQxLDcg QEAgc3RhdGljIHZvaWQgaXNjX2F3Yl93b3JrKHN0cnVjdCB3b3JrX3N0cnVjdCAqdykNCj4+Pj4g ICAgCSAqIG9ubHkgdXBkYXRlIGlmIHdlIGhhdmUgYWxsIHRoZSByZXF1aXJlZCBoaXN0b2dyYW1z IGFuZCBjb250cm9scw0KPj4+PiAgICAJICogaWYgYXdiIGhhcyBiZWVuIGRpc2FibGVkLCB3ZSBu ZWVkIHRvIHJlc2V0IHJlZ2lzdGVycyBhcyB3ZWxsLg0KPj4+PiAgICAJICovDQo+Pj4+IC0JaWYg KGhpc3RfaWQgPT0gSVNDX0hJU19DRkdfTU9ERV9HUiB8fCAhY3RybHMtPmF3Yikgew0KPj4+PiAr CWlmIChoaXN0X2lkID09IElTQ19ISVNfQ0ZHX01PREVfR1IgfHwgY3RybHMtPmF3YiA9PSBJU0Nf V0JfTk9ORSkgew0KPj4+PiAgICAJCS8qDQo+Pj4+ICAgIAkJICogSXQgbWF5IGhhcHBlbiB0aGF0 IERNQSBEb25lIElSUSB3aWxsIHRyaWdnZXIgd2hpbGUgd2UgYXJlDQo+Pj4+ICAgIAkJICogdXBk YXRpbmcgd2hpdGUgYmFsYW5jZSByZWdpc3RlcnMgaGVyZS4NCj4+Pj4gQEAgLTE5NDcsNiArMTk1 MSwxNiBAQCBzdGF0aWMgdm9pZCBpc2NfYXdiX3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICp3KQ0K Pj4+PiAgICAJCXNwaW5fbG9ja19pcnFzYXZlKCZpc2MtPmF3Yl9sb2NrLCBmbGFncyk7DQo+Pj4+ ICAgIAkJaXNjX3VwZGF0ZV9hd2JfY3RybHMoaXNjKTsNCj4+Pj4gICAgCQlzcGluX3VubG9ja19p cnFyZXN0b3JlKCZpc2MtPmF3Yl9sb2NrLCBmbGFncyk7DQo+Pj4+ICsNCj4+Pj4gKwkJLyoNCj4+ Pj4gKwkJICogaWYgd2UgYXJlIGRvaW5nIGp1c3QgdGhlIG9uZSB0aW1lIHdoaXRlIGJhbGFuY2Ug YWRqdXN0bWVudCwNCj4+Pj4gKwkJICogd2UgYXJlIGJhc2ljYWxseSBkb25lLg0KPj4+PiArCQkg Ki8NCj4+Pj4gKwkJaWYgKGN0cmxzLT5hd2IgPT0gSVNDX1dCX09ORVRJTUUpIHsNCj4+Pj4gKwkJ CXY0bDJfaW5mbygmaXNjLT52NGwyX2RldiwNCj4+Pj4gKwkJCQkgICJDb21wbGV0ZWQgb25lIHRp bWUgd2hpdGUtYmFsYW5jZSBhZGp1c3RtZW50LlxuIik7DQo+Pj4+ICsJCQljdHJscy0+YXdiID0g SVNDX1dCX05PTkU7DQo+Pj4+ICsJCX0NCj4+Pj4gICAgCX0NCj4+Pj4gICAgCXJlZ21hcF93cml0 ZShyZWdtYXAsIElTQ19ISVNfQ0ZHLCBoaXN0X2lkIHwgYmF5c2VsIHwgSVNDX0hJU19DRkdfUkFS KTsNCj4+Pj4gICAgCWlzY191cGRhdGVfcHJvZmlsZShpc2MpOw0KPj4+PiBAQCAtMTk3NCwxMCAr MTk4OCw1NiBAQCBzdGF0aWMgaW50IGlzY19zX2N0cmwoc3RydWN0IHY0bDJfY3RybCAqY3RybCkN Cj4+Pj4gICAgCQljdHJscy0+Z2FtbWFfaW5kZXggPSBjdHJsLT52YWw7DQo+Pj4+ICAgIAkJYnJl YWs7DQo+Pj4+ICAgIAljYXNlIFY0TDJfQ0lEX0FVVE9fV0hJVEVfQkFMQU5DRToNCj4+Pj4gLQkJ Y3RybHMtPmF3YiA9IGN0cmwtPnZhbDsNCj4+Pj4gKwkJaWYgKGN0cmwtPnZhbCA9PSAxKSB7DQo+ Pj4+ICsJCQljdHJscy0+YXdiID0gSVNDX1dCX0FVVE87DQo+Pj4+ICsJCQl2NGwyX2N0cmxfYWN0 aXZhdGUoaXNjLT5kb193Yl9jdHJsLCBmYWxzZSk7DQo+Pj4+ICsJCX0gZWxzZSB7DQo+Pj4+ICsJ CQljdHJscy0+YXdiID0gSVNDX1dCX05PTkU7DQo+Pj4+ICsJCQl2NGwyX2N0cmxfYWN0aXZhdGUo aXNjLT5kb193Yl9jdHJsLCB0cnVlKTsNCj4+Pj4gKwkJfQ0KPj4+PiArCQkvKiB3ZSBkaWQgbm90 IGNvbmZpZ3VyZSBJU0MgeWV0ICovDQo+Pj4+ICsJCWlmICghaXNjLT5jb25maWcuc2RfZm9ybWF0 KQ0KPj4+PiArCQkJYnJlYWs7DQo+Pj4+ICsNCj4+Pj4gKwkJaWYgKCFJU0NfSVNfRk9STUFUX1JB Vyhpc2MtPmNvbmZpZy5zZF9mb3JtYXQtPm1idXNfY29kZSkpIHsNCj4+Pj4gKwkJCXY0bDJfZXJy KCZpc2MtPnY0bDJfZGV2LA0KPj4+PiArCQkJCSAiV2hpdGUgYmFsYW5jZSBhZGp1c3RtZW50cyBh dmFpbGFibGUgb25seSBpZiBzZW5zb3IgaXMgaW4gUkFXIG1vZGUuXG4iKTsNCj4+Pg0KPj4+IFRo aXMgaXNuJ3QgYW4gZXJyb3IsIGluc3RlYWQgaWYgdGhlIGZvcm1hdCBpc24ndCByYXcsIHRoZW4g ZGVhY3RpdmF0ZQ0KPj4+IHRoZSBjb250cm9sIChzZWUgdjRsMl9jdHJsX2FjdGl2YXRlKCkpLiBU aGF0IHdheSB0aGUgY29udHJvbCBmcmFtZXdvcmsNCj4+PiB3aWxsIGhhbmRsZSB0aGlzLg0KPj4+ DQo+Pj4+ICsJCQlyZXR1cm4gMDsNCj4+Pj4gKwkJfQ0KPj4+PiArDQo+Pj4+ICAgIAkJaWYgKGN0 cmxzLT5oaXN0X3N0YXQgIT0gSElTVF9FTkFCTEVEKSB7DQo+Pj4+ICAgIAkJCWlzY19yZXNldF9h d2JfY3RybHMoaXNjKTsNCj4+Pj4gICAgCQl9DQo+Pj4+ICsNCj4+Pj4gKwkJaWYgKGlzYy0+Y3Ry bHMuYXdiICYmIHZiMl9pc19zdHJlYW1pbmcoJmlzYy0+dmIyX3ZpZHEpICYmDQo+Pj4+ICsJCSAg ICBJU0NfSVNfRk9STUFUX1JBVyhpc2MtPmNvbmZpZy5zZF9mb3JtYXQtPm1idXNfY29kZSkpDQo+ Pj4+ICsJCQlpc2Nfc2V0X2hpc3RvZ3JhbShpc2MsIHRydWUpOw0KPj4+PiArDQo+Pj4+ICsJCWJy ZWFrOw0KPj4+PiArCWNhc2UgVjRMMl9DSURfRE9fV0hJVEVfQkFMQU5DRToNCj4+Pj4gKwkJLyog d2UgZGlkIG5vdCBjb25maWd1cmUgSVNDIHlldCAqLw0KPj4+PiArCQlpZiAoIWlzYy0+Y29uZmln LnNkX2Zvcm1hdCkNCj4+Pj4gKwkJCWJyZWFrOw0KPj4+PiArDQo+Pj4+ICsJCWlmIChjdHJscy0+ YXdiID09IElTQ19XQl9BVVRPKSB7DQo+Pj4+ICsJCQl2NGwyX2VycigmaXNjLT52NGwyX2RldiwN Cj4+Pj4gKwkJCQkgIlRvIHVzZSBvbmUgdGltZSB3aGl0ZS1iYWxhbmNlIGFkanVzdG1lbnQsIGRp c2FibGUgYXV0byB3aGl0ZSBiYWxhbmNlIGZpcnN0LlxuIik7DQo+Pj4NCj4+PiBJJ2QgZG8gdGhp cyBkaWZmZXJlbnRseTogaWYgYXV0byB3aGl0ZWJhbGFuY2UgaXMgYWxyZWFkeSBvbiwgdGhlbiBq dXN0IGRvDQo+Pj4gbm90aGluZyBmb3IgVjRMMl9DSURfRE9fV0hJVEVfQkFMQU5DRS4NCj4+Pg0K Pj4+PiArCQkJcmV0dXJuIC1FQUdBSU47DQo+Pj4+ICsJCX0NCj4+Pj4gKwkJaWYgKCF2YjJfaXNf c3RyZWFtaW5nKCZpc2MtPnZiMl92aWRxKSkgew0KPj4+PiArCQkJdjRsMl9lcnIoJmlzYy0+djRs Ml9kZXYsDQo+Pj4+ICsJCQkJICJPbmUgdGltZSB3aGl0ZS1iYWxhbmNlIGFkanVzdG1lbnQgcmVx dWlyZXMgc3RyZWFtaW5nIHRvIGJlIGVuYWJsZWQuXG4iKTsNCj4+Pg0KPj4+IFRoaXMgdG9vIHNo b3VsZCB1c2UgdjRsMl9jdHJsX2FjdGl2YXRlKCk6IGFjdGl2YXRlIHRoZSBjb250cm9sIGluIHN0 YXJ0X3N0cmVhbWluZywNCj4+PiBkZWFjdGl2YXRlIGluIHN0b3Bfc3RyZWFtaW5nIChhbmQgd2hl biB0aGUgY29udHJvbCBpcyBjcmVhdGVkKS4NCj4+Pg0KPj4+PiArCQkJcmV0dXJuIC1FQUdBSU47 DQo+Pj4+ICsJCX0NCj4+Pj4gKw0KPj4+PiArCQlpZiAoIUlTQ19JU19GT1JNQVRfUkFXKGlzYy0+ Y29uZmlnLnNkX2Zvcm1hdC0+bWJ1c19jb2RlKSkgew0KPj4+PiArCQkJdjRsMl9lcnIoJmlzYy0+ djRsMl9kZXYsDQo+Pj4+ICsJCQkJICJXaGl0ZSBiYWxhbmNlIGFkanVzdG1lbnRzIGF2YWlsYWJs ZSBvbmx5IGlmIHNlbnNvciBpcyBpbiBSQVcgbW9kZS5cbiIpOw0KPj4+DQo+Pj4gU2FtZSBub3Rl IGFzIGFib3ZlOiB1c2UgdjRsMl9jdHJsX2FjdGl2YXRlKCkgZm9yIHRoaXMuDQo+Pg0KPj4gSGVs bG8gSGFucywNCj4+DQo+PiBJIHVzZWQgdjRsMl9jdHJsX2FjdGl2YXRlIHdpdGggZmFsc2UgcGFy YW1ldGVyLCBhbmQgdGhlIHY0bDItY3RsIC1sDQo+PiBsb29rcyBsaWtlIHRoaXM6DQo+Pg0KPj4N Cj4+ICAgICAgICAgICAgICBkb193aGl0ZV9iYWxhbmNlIChidXR0b24pIDogZmxhZ3M9aW5hY3Rp dmUsIHdyaXRlLW9ubHksDQo+PiBleGVjdXRlLW9uLXdyaXRlDQo+Pg0KPj4gQnV0IHRoZSBpbmFj dGl2ZSBmbGFnIGxvb2tzIHRvIGJlIG9ubHkgZm9yIGRpc3BsYXkgcHVycG9zZXMsIGFzIGlzc3Vp bmcgOg0KPj4NCj4+IHY0bDItY3RsIC0tc2V0LWN0cmw9ZG9fd2hpdGVfYmFsYW5jZT0xDQo+Pg0K Pj4gd2lsbCBjb250aW51ZSB0byBjYWxsIG15IGN0cmwgY2FsbGJhY2sgYXMgaWYgdGhlIGNvbnRy b2wgaXMgc3RpbGwgYWN0aXZlLg0KPj4NCj4+IEFtIEkgbWlzc2luZyBzb21ldGhpbmcgaGVyZSA/ IHY0bDJfc19jdHJsIGRvZXMgbm90IGNoZWNrIGZvciBJTkFDVElWRQ0KPj4gc3RhdHVzLg0KPiAN Cj4gTm8sIHlvdSBhcmUgY29ycmVjdC4gSSBnb3QgY29uZnVzZWQgd2l0aCBGTEFHX0dSQUJCRUQu DQo+IA0KPiBJbiBhbnkgY2FzZSwgdGhlIGlkZWEgd2FzIHJpZ2h0LCBidXQgeW91IGRvIGhhdmUg dG8gYWRkIGNvZGUgdG8gc19jdHJsDQo+IHRvIGhhbmRsZSB0aGlzIChlLmcuIGlmIHRoZSBJTkFD VElWRSBmbGFnIGlzIHNldCwgdGhlbiBqdXN0IGRvIG5vdGhpbmcpLg0KPiANCj4gVGhlIElOQUNU SVZFIGZsYWcgaXMgbWVhbnQgdG8gY29tbXVuaWNhdGUgdGhhdCB0aGUgY29udHJvbCBjYW4gc3Rp bGwgYmUNCj4gc2V0LCBidXQgaXQganVzdCBkb2Vzbid0IGRvIGFueXRoaW5nLiBxdjRsMiB3aWxs IGRpc2FibGUgdGhlIGNvbnRyb2wgaWYNCj4gdGhpcyBmbGFnIGlzIHNldC4NCj4gDQo+IE5vdGUg dGhhdCB3aGVuIHlvdSBzZXQgYW4gaW5hY3RpdmUgY29udHJvbCwgdGhlIGNvbnRyb2wgdmFsdWUg c2hvdWxkDQo+IHN0aWxsIGJlIHVwZGF0ZWQgZXZlbiBpZiBpdCBpc24ndCB1c2VkIGF0IHRoZSBt b21lbnQuIElmIHRoZSBjb25maWd1cmF0aW9uDQo+IGNoYW5nZXMgc28gdGhhdCB0aGUgY29udHJv bCBiZWNvbWVzIGFjdGl2ZSBhZ2FpbiwgdGhlbiB0aGF0IGxhc3Qgc2V0DQo+IHZhbHVlIHNob3Vs ZCBiZSB1c2VkIGJ5IHRoZSBoYXJkd2FyZS4NCj4gDQo+IFRoaXMgaXMgdGhlIHJlYXNvbiB3aHkg c19jdHJsIGlzIHN0aWxsIGNhbGxlZC4NCg0KSGVsbG8gSGFucywNCg0KVGhhbmtzIGZvciB0aGUg ZXhwbGFuYXRpb24uIEkgbm90aWNlZCB3aGF0IHlvdSBzYXksIGFuZCBzYXcgb3RoZXIgDQpkcml2 ZXJzIGp1c3QgZXhpdCB0aGUgc19jdHJsIGlmIHRoZSBmbGFnIGlzIElOQUNUSVZFLg0KVGh1cywg bXkgbGF0ZXN0IHBhdGNoIHJldmlzaW9uIGRvZXMgZXhhY3RseSB0aGF0IA0KaHR0cHM6Ly9wYXRj aHdvcmsubGludXh0di5vcmcvcGF0Y2gvNTU2ODIvDQoNClJlZ2FyZGluZyBteSBzcGVjaWZpYyBj b250cm9sIChET19XSElURV9CQUxBTkNFKSwgaXQncyBhIGJ1dHRvbiwgc28gaXQgDQpzaG91bGQg cmVhbGx5IGRvIG5vdGhpbmcgaWYgY29udHJvbCBpcyBpbmFjdGl2ZSAobm8gc3RhdGUgdG8gc2F2 ZSkuDQoNClRoYW5rcywNCkV1Z2VuDQoNCg0KPiANCj4gUmVnYXJkcywNCj4gDQo+IAlIYW5zDQo+ IA0KPj4NCj4+IFRoYW5rcw0KPj4NCj4+Pg0KPj4+PiArCQkJcmV0dXJuIC1FQUdBSU47DQo+Pj4+ ICsJCX0NCj4+Pj4gKwkJY3RybHMtPmF3YiA9IElTQ19XQl9PTkVUSU1FOw0KPj4+PiArCQlpc2Nf c2V0X2hpc3RvZ3JhbShpc2MsIHRydWUpOw0KPj4+PiArCQl2NGwyX2luZm8oJmlzYy0+djRsMl9k ZXYsICJPbmUgdGltZSB3aGl0ZS1iYWxhbmNlIHN0YXJ0ZWQuXG4iKTsNCj4+Pg0KPj4+IE1ha2Ug dGhpcyB2NGwyX2RiZy4NCj4+Pg0KPj4+PiAgICAJCWJyZWFrOw0KPj4+PiAgICAJZGVmYXVsdDoN Cj4+Pj4gICAgCQlyZXR1cm4gLUVJTlZBTDsNCj4+Pj4gQEAgLTIwMDAsNyArMjA2MCw3IEBAIHN0 YXRpYyBpbnQgaXNjX2N0cmxfaW5pdChzdHJ1Y3QgaXNjX2RldmljZSAqaXNjKQ0KPj4+PiAgICAJ Y3RybHMtPmhpc3Rfc3RhdCA9IEhJU1RfSU5JVDsNCj4+Pj4gICAgCWlzY19yZXNldF9hd2JfY3Ry bHMoaXNjKTsNCj4+Pj4gICAgDQo+Pj4+IC0JcmV0ID0gdjRsMl9jdHJsX2hhbmRsZXJfaW5pdCho ZGwsIDQpOw0KPj4+PiArCXJldCA9IHY0bDJfY3RybF9oYW5kbGVyX2luaXQoaGRsLCA1KTsNCj4+ Pj4gICAgCWlmIChyZXQgPCAwKQ0KPj4+PiAgICAJCXJldHVybiByZXQ7DQo+Pj4+ICAgIA0KPj4+ PiBAQCAtMjAxMiw2ICsyMDcyLDEwIEBAIHN0YXRpYyBpbnQgaXNjX2N0cmxfaW5pdChzdHJ1Y3Qg aXNjX2RldmljZSAqaXNjKQ0KPj4+PiAgICAJdjRsMl9jdHJsX25ld19zdGQoaGRsLCBvcHMsIFY0 TDJfQ0lEX0dBTU1BLCAwLCBHQU1NQV9NQVgsIDEsIDIpOw0KPj4+PiAgICAJdjRsMl9jdHJsX25l d19zdGQoaGRsLCBvcHMsIFY0TDJfQ0lEX0FVVE9fV0hJVEVfQkFMQU5DRSwgMCwgMSwgMSwgMSk7 DQo+Pj4+ICAgIA0KPj4+PiArCS8qIGRvX3doaXRlX2JhbGFuY2UgaXMgYSBidXR0b24sIHNvIG1p bixtYXgsc3RlcCxkZWZhdWx0IGFyZSBpZ25vcmVkICovDQo+Pj4+ICsJaXNjLT5kb193Yl9jdHJs ID0gdjRsMl9jdHJsX25ld19zdGQoaGRsLCBvcHMsIFY0TDJfQ0lEX0RPX1dISVRFX0JBTEFOQ0Us DQo+Pj4+ICsJCQkJCSAgICAwLCAwLCAwLCAwKTsNCj4+Pj4gKw0KPj4+PiAgICAJdjRsMl9jdHJs X2hhbmRsZXJfc2V0dXAoaGRsKTsNCj4+Pj4gICAgDQo+Pj4+ICAgIAlyZXR1cm4gMDsNCj4+Pj4N Cj4+Pg0KPj4+IFJlZ2FyZHMsDQo+Pj4NCj4+PiAJSGFucw0KPj4+DQo+IA0KPiANCg==