Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp4534978ybb; Tue, 24 Mar 2020 00:07:25 -0700 (PDT) X-Google-Smtp-Source: ADFU+vtSd0xtGGjVMvRE20SrDVSkd7WJhxcUJILrQ9NTbI1IHmNpFeu/AYsI7gDEml0yhl4JiayI X-Received: by 2002:a05:6808:14e:: with SMTP id h14mr2477296oie.57.1585033644964; Tue, 24 Mar 2020 00:07:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585033644; cv=none; d=google.com; s=arc-20160816; b=B0DPFzbPuGrbRRo/SAuZhrN+B4NIHqwgEG6T0V2CzKzvIEFetBuXwOCzafA9aH259L /cddUXAeFXnlDxU7ptWH5YR3jx7MrGC6kYEjoxSR1UDkXvD8FgrfCaNNalE4wjPbTohT 5zZIFrvNTIpWM/jZTrnVJg6JhR+36Rr2yvi+5jYW8z+kaTQ77LNkxaOPEHSzFdQ+wh2X iOlh9A5tiBGhQp192kp6MUJgYdmdWsQW932MX5w31JEkUW/XioOhuS1oDzWMQmgOW5Nh dni2kvMQqbYAbf30wimEMznrx5xo3mQNubXDThYQGRgJ+ISE+wUkEIBwYwKVpSDm9qe8 iKPg== 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:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:cc:to :from:dkim-signature; bh=TJ6WtYr21VD5PFcLOhb9jJ6FrGqugiINsfYyYW1YSXQ=; b=ciH4a3QgZXin/Br1eWJUAjXX73R0cZE4xrz/VDwOMirMXzmGU/pDAvXW2z7NNTlduL SRgln/bQ2hGZJnGzKtryi9ka1V5k+gIcG9iEwgVIjIvgRuyJcCReXEzhpXHOABd5QtaL gPJvqOaPxMvfbKa9EcT6WSTBpm1H8ktCl8x4yNEUV3YJ4Oz4MPNqgWC62S/F30ZasRmC OC5nkAwfufC/RujykSOk0Z7Tg2IoIIeZQMMc67JanBNWYfaHIGSpUvL5vWnhg6LmZGu6 N3HkZdL/zlhPBFt2t3SAIpkhKKATFRuSKr1bgRw18OHl4AEiUwDEd/Qgb6CzqfEfdH+Z HTvw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@st.com header.s=STMicroelectronics header.b=UO3yxKTh; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=st.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h2si577992oop.51.2020.03.24.00.07.11; Tue, 24 Mar 2020 00:07:24 -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=@st.com header.s=STMicroelectronics header.b=UO3yxKTh; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=st.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727458AbgCXHFz (ORCPT + 99 others); Tue, 24 Mar 2020 03:05:55 -0400 Received: from mx07-00178001.pphosted.com ([62.209.51.94]:42452 "EHLO mx07-00178001.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725905AbgCXHFz (ORCPT ); Tue, 24 Mar 2020 03:05:55 -0400 Received: from pps.filterd (m0046668.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 02O6vigS009120; Tue, 24 Mar 2020 08:05:34 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=st.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=STMicroelectronics; bh=TJ6WtYr21VD5PFcLOhb9jJ6FrGqugiINsfYyYW1YSXQ=; b=UO3yxKThrXUCp5oUiRs+I2KJM1eCkcsOTQt3i/irJgTF5yfs8GAUQmmi/e19pim6ezgD d+Sjv/ylEYhi+cVoNF5lL9k2S/6JQmda3N+2S3qCNFAxdx/KAvhhTRUiisfxg1a5XPJU dnp8Kq03QFTMHXzmIQN+AHt5YBFBb0dtX3X58ICVCVuroDivd+BYveb3tdr02BXYiFCk WgYNLp8jxEUABLl1QXhDA+wnOyKjhKLCxISsinTI9s95FHORYE4006JxatRou8GdoGRQ va0U0L7wqzfR3qzAJ+BWxLAptox6+JZ8+eMRsiC5hFKmgDSPDwrufddl7kZgMNUl51BW 5A== Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com with ESMTP id 2yw995dw7f-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 24 Mar 2020 08:05:34 +0100 Received: from euls16034.sgp.st.com (euls16034.sgp.st.com [10.75.44.20]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 43B1D100051; Tue, 24 Mar 2020 08:05:28 +0100 (CET) Received: from Webmail-eu.st.com (sfhdag3node2.st.com [10.75.127.8]) by euls16034.sgp.st.com (STMicroelectronics) with ESMTP id 2B94F2123A8; Tue, 24 Mar 2020 08:05:28 +0100 (CET) Received: from SFHDAG5NODE3.st.com (10.75.127.15) by SFHDAG3NODE2.st.com (10.75.127.8) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Tue, 24 Mar 2020 08:05:27 +0100 Received: from SFHDAG5NODE3.st.com ([fe80::7c09:5d6b:d2c7:5f47]) by SFHDAG5NODE3.st.com ([fe80::7c09:5d6b:d2c7:5f47%20]) with mapi id 15.00.1473.003; Tue, 24 Mar 2020 08:05:27 +0100 From: Christophe ROULLIER To: "robh@kernel.org" , "davem@davemloft.net" , "joabreu@synopsys.com" , "mark.rutland@arm.com" , "mcoquelin.stm32@gmail.com" , Alexandre TORGUE , Peppe CAVALLARO CC: "linux-stm32@st-md-mailman.stormreply.com" , "linux-kernel@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "netdev@vger.kernel.org" , "andrew@lunn.ch" Subject: Re: [PATCHv2 1/1] net: ethernet: stmmac: simplify phy modes management for stm32 Thread-Topic: [PATCHv2 1/1] net: ethernet: stmmac: simplify phy modes management for stm32 Thread-Index: AQHV+3KcsJPnUGhLZUuQ86OpgL2bwKhXTYaA Date: Tue, 24 Mar 2020 07:05:27 +0000 Message-ID: <9525b2f3-3ef6-48f0-7183-a8d531945b17@st.com> References: <20200316090907.18488-1-christophe.roullier@st.com> In-Reply-To: <20200316090907.18488-1-christophe.roullier@st.com> Accept-Language: fr-FR, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.75.127.51] Content-Type: text/plain; charset="utf-8" Content-ID: <8C57BBC1A4029645A55F6C9855D57595@st.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138,18.0.645 definitions=2020-03-24_01:2020-03-23,2020-03-24 signatures=0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGksDQoNCkdlbnRsZSByZW1pbmRlcg0KDQpUaGFua3MgaW4gYWR2YW5jZS4NCkNocmlzdG9waGUu DQoNCg0KDQpPbiAxNi8wMy8yMDIwIDEwOjA5LCBDaHJpc3RvcGhlIFJvdWxsaWVyIHdyb3RlOg0K PiBObyBuZXcgZmVhdHVyZSwganVzdCB0byBzaW1wbGlmeSBzdG0zMiBwYXJ0IHRvIGJlIGVhc2ll ciB0byB1c2UuDQo+IEFkZCBieSBkZWZhdWx0IGFsbCBFdGhlcm5ldCBjbG9ja3MgaW4gRFQsIGFu ZCBhY3RpdmF0ZSBvciBub3QgaW4gZnVuY3Rpb24NCj4gb2YgcGh5IG1vZGUsIGNsb2NrIGZyZXF1 ZW5jeSwgaWYgcHJvcGVydHkgInN0LGV4dC1waHljbGsiIGlzIHNldCBvciBub3QuDQo+IEtlZXAg YmFja3dhcmQgY29tcGF0aWJpbGl0eQ0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiB8UEhZX01PREUgfCBO b3JtYWwgfCBQSFkgd28gY3J5c3RhbHwgICBQSFkgd28gY3J5c3RhbCAgIHwgIE5vIDEyNU1oeiAg fA0KPiB8ICAgICAgICAgfCAgICAgICAgfCAgICAgIDI1TUh6ICAgIHwgICAgICAgIDUwTUh6ICAg ICAgIHwgIGZyb20gUEhZICAgfA0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiB8ICBNSUkgICAgfAkgLSAg ICB8ICAgICBldGgtY2sgICAgfCAgICAgICBuL2EgICAgICAgICAgfAkgICAgbi9hICB8DQo+IHwg ICAgICAgICB8ICAgICAgICB8IHN0LGV4dC1waHljbGsgfCAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICB8DQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IHwgIEdNSUkgICB8CSAtICAgIHwgICAg IGV0aC1jayAgICB8ICAgICAgIG4vYSAgICAgICAgICB8CSAgICBuL2EgIHwNCj4gfCAgICAgICAg IHwgICAgICAgIHwgc3QsZXh0LXBoeWNsayB8ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAg ICAgIHwNCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gfCBSR01JSSAgIHwJIC0gICAgfCAgICAgZXRoLWNr ICAgIHwgICAgICAgbi9hICAgICAgICAgIHwgICAgICBldGgtY2sgIHwNCj4gfCAgICAgICAgIHwg ICAgICAgIHwgc3QsZXh0LXBoeWNsayB8ICAgICAgICAgICAgICAgICAgICB8c3QsZXRoLWNsay1z ZWx8DQo+IHwgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICAgfCAgICAgICBvciAgICAgfA0KPiB8ICAgICAgICAgfCAgICAgICAgfCAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgICAgICAgIHwgc3QsZXh0LXBoeWNsa3wNCj4gLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQo+IHwgUk1JSSAgICB8CSAtICAgIHwgICAgIGV0aC1jayAgICB8ICAgICAgZXRoLWNrICAg ICAgICB8CSAgICAgbi9hICB8DQo+IHwgICAgICAgICB8ICAgICAgICB8IHN0LGV4dC1waHljbGsg fCBzdCxldGgtcmVmLWNsay1zZWwgfCAgICAgICAgICAgICAgfA0KPiB8ICAgICAgICAgfCAgICAg ICAgfCAgICAgICAgICAgICAgIHwgb3Igc3QsZXh0LXBoeWNsayAgIHwgICAgICAgICAgICAgIHwN Cj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tDQo+DQo+IFNpZ25lZC1vZmYtYnk6IENocmlzdG9waGUgUm91bGxp ZXIgPGNocmlzdG9waGUucm91bGxpZXJAc3QuY29tPg0KPg0KPiAtLS0NCj4gICAuLi4vbmV0L2V0 aGVybmV0L3N0bWljcm8vc3RtbWFjL2R3bWFjLXN0bTMyLmMgfCA3NCArKysrKysrKysrKy0tLS0t LS0tDQo+ICAgMSBmaWxlIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDMwIGRlbGV0aW9ucygt KQ0KPg0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvc3RtaWNyby9zdG1tYWMv ZHdtYWMtc3RtMzIuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3N0bWljcm8vc3RtbWFjL2R3bWFj LXN0bTMyLmMNCj4gaW5kZXggYjJkYzk5Mjg5Njg3Li41ZDRkZjRjNTI1NGUgMTAwNjQ0DQo+IC0t LSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3N0bWljcm8vc3RtbWFjL2R3bWFjLXN0bTMyLmMNCj4g KysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvc3RtaWNyby9zdG1tYWMvZHdtYWMtc3RtMzIuYw0K PiBAQCAtMjksNiArMjksMTEgQEANCj4gICAjZGVmaW5lIFNZU0NGR19QTUNSX0VUSF9DTEtfU0VM CQlCSVQoMTYpDQo+ICAgI2RlZmluZSBTWVNDRkdfUE1DUl9FVEhfUkVGX0NMS19TRUwJQklUKDE3 KQ0KPiAgIA0KPiArLyogQ0xPQ0sgZmVlZCB0byBQSFkqLw0KPiArI2RlZmluZSBFVEhfQ0tfRl8y NU0JMjUwMDAwMDANCj4gKyNkZWZpbmUgRVRIX0NLX0ZfNTBNCTUwMDAwMDAwDQo+ICsjZGVmaW5l IEVUSF9DS19GXzEyNU0JMTI1MDAwMDAwDQo+ICsNCj4gICAvKiAgRXRoZXJuZXQgUEhZIGludGVy ZmFjZSBzZWxlY3Rpb24gaW4gcmVnaXN0ZXIgU1lTQ0ZHIENvbmZpZ3VyYXRpb24NCj4gICAgKi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAgICAqIHNyYwkgfEJJ VCgyMyl8IEJJVCgyMil8IEJJVCgyMSl8QklUKDIwKXwNCj4gQEAgLTU4LDMzICs2MywyMCBAQA0K PiAgICAqfCAgICAgICAgIHwgICAgICAgIHwgICAgICAyNU1IeiAgICB8ICAgICAgICA1ME1IeiAg ICAgICB8ICAgICAgICAgICAgICAgICAgfA0KPiAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAg ICAqfCAgTUlJICAgIHwJIC0gICB8ICAgICBldGgtY2sgICAgfAkgICAgICBuL2EJICB8CSAgbi9h ICAgICAgICB8DQo+IC0gKnwgICAgICAgICB8ICAgICAgICB8CQkgICAgIHwgICAgICAgICAgICAg ICAgICAgIHwJCSAgICAgfA0KPiArICp8ICAgICAgICAgfCAgICAgICAgfCBzdCxleHQtcGh5Y2xr IHwgICAgICAgICAgICAgICAgICAgIHwJCSAgICAgfA0KPiAgICAqIC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KPiAgICAqfCAgR01JSSAgIHwJIC0gICB8ICAgICBldGgtY2sgICAgfAkgICAgICBuL2EJICB8 CSAgbi9hICAgICAgICB8DQo+IC0gKnwgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgICAgICAg fCAgICAgICAgICAgICAgICAgICAgfAkJICAgICB8DQo+ICsgKnwgICAgICAgICB8ICAgICAgICB8 IHN0LGV4dC1waHljbGsgfCAgICAgICAgICAgICAgICAgICAgfAkJICAgICB8DQo+ICAgICogLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tDQo+IC0gKnwgUkdNSUkgICB8CSAtICAgfCAgICAgZXRoLWNrICAgIHwJ ICAgICAgbi9hCSAgfCAgZXRoLWNrIChubyBwaW4pIHwNCj4gLSAqfCAgICAgICAgIHwgICAgICAg IHwgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8ICBzdCxldGgtY2xrLXNlbCAg fA0KPiArICp8IFJHTUlJICAgfAkgLSAgIHwgICAgIGV0aC1jayAgICB8CSAgICAgIG4vYQkgIHwg ICAgICBldGgtY2sgICAgICB8DQo+ICsgKnwgICAgICAgICB8ICAgICAgICB8IHN0LGV4dC1waHlj bGsgfCAgICAgICAgICAgICAgICAgICAgfCBzdCxldGgtY2xrLXNlbCBvcnwNCj4gKyAqfCAgICAg ICAgIHwgICAgICAgIHwgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8IHN0LGV4 dC1waHljbGsgICAgfA0KPiAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAgICAqfCBSTUlJICAg IHwJIC0gICB8ICAgICBldGgtY2sgICAgfAkgICAgZXRoLWNrICAgICAgICB8CSAgbi9hICAgICAg ICB8DQo+IC0gKnwgICAgICAgICB8ICAgICAgICB8CQkgICAgIHwgc3QsZXRoLXJlZi1jbGstc2Vs IHwJCSAgICAgfA0KPiArICp8ICAgICAgICAgfCAgICAgICAgfCBzdCxleHQtcGh5Y2xrIHwgc3Qs ZXRoLXJlZi1jbGstc2VsIHwJCSAgICAgfA0KPiArICp8ICAgICAgICAgfCAgICAgICAgfCAgICAg ICAgICAgICAgIHwgb3Igc3QsZXh0LXBoeWNsayAgIHwJCSAgICAgfA0KPiAgICAqIC0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQ0KPiAgICAqDQo+IC0gKiBCSVQoMTcpIDogc2V0IHRoaXMgYml0IGluIFJNSUkg bW9kZSB3aGVuIHlvdSBoYXZlIFBIWSB3aXRob3V0IGNyeXN0YWwgNTBNSHoNCj4gLSAqIEJJVCgx NikgOiBzZXQgdGhpcyBiaXQgaW4gR01JSS9SR01JSSBQSFkgd2hlbiB5b3UgZG8gbm90IHdhbnQg dXNlIDEyNU1oeg0KPiAtICogZnJvbSBQSFkNCj4gLSAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLSAqIHNyYwkgfCAgICAgICAgIEJJVCgx NykgICAgICAgfCAgICAgICBCSVQoMTYpICAgICAgfA0KPiAtICotLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAtICogTUlJICAgfCAgICAgICAg ICAgbi9hCSB8ICAgICAgICAgbi9hICAgICAgICB8DQo+IC0gKi0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0gKiBHTUlJICB8ICAgICAgICAg ICBuL2EgICAgICAgICB8ICAgc3QsZXRoLWNsay1zZWwgICB8DQo+IC0gKi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0gKiBSR01JSSB8ICAg ICAgICAgICBuL2EgICAgICAgICB8ICAgc3QsZXRoLWNsay1zZWwgICB8DQo+IC0gKi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0gKiBSTUlJ ICB8ICAgc3QsZXRoLXJlZi1jbGstc2VsCSB8ICAgICAgICAgbi9hICAgICAgICB8DQo+IC0gKi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0g Kg0KPiAgICAqLw0KPiAgIA0KPiAgIHN0cnVjdCBzdG0zMl9kd21hYyB7DQo+IEBAIC05Myw2ICs4 NSw4IEBAIHN0cnVjdCBzdG0zMl9kd21hYyB7DQo+ICAgCXN0cnVjdCBjbGsgKmNsa19ldGhfY2s7 DQo+ICAgCXN0cnVjdCBjbGsgKmNsa19ldGhzdHA7DQo+ICAgCXN0cnVjdCBjbGsgKnN5c2NmZ19j bGs7DQo+ICsJaW50IGV4dF9waHljbGs7DQo+ICsJaW50IGVuYWJsZV9ldGhfY2s7DQo+ICAgCWlu dCBldGhfY2xrX3NlbF9yZWc7DQo+ICAgCWludCBldGhfcmVmX2Nsa19zZWxfcmVnOw0KPiAgIAlp bnQgaXJxX3B3cl93YWtldXA7DQo+IEBAIC0xNTUsMTQgKzE0OSwxNyBAQCBzdGF0aWMgaW50IHN0 bTMybXAxX2Nsa19wcmVwYXJlKHN0cnVjdCBzdG0zMl9kd21hYyAqZHdtYWMsIGJvb2wgcHJlcGFy ZSkNCj4gICAJCXJldCA9IGNsa19wcmVwYXJlX2VuYWJsZShkd21hYy0+c3lzY2ZnX2Nsayk7DQo+ ICAgCQlpZiAocmV0KQ0KPiAgIAkJCXJldHVybiByZXQ7DQo+IC0JCXJldCA9IGNsa19wcmVwYXJl X2VuYWJsZShkd21hYy0+Y2xrX2V0aF9jayk7DQo+IC0JCWlmIChyZXQpIHsNCj4gLQkJCWNsa19k aXNhYmxlX3VucHJlcGFyZShkd21hYy0+c3lzY2ZnX2Nsayk7DQo+IC0JCQlyZXR1cm4gcmV0Ow0K PiArCQlpZiAoZHdtYWMtPmVuYWJsZV9ldGhfY2spIHsNCj4gKwkJCXJldCA9IGNsa19wcmVwYXJl X2VuYWJsZShkd21hYy0+Y2xrX2V0aF9jayk7DQo+ICsJCQlpZiAocmV0KSB7DQo+ICsJCQkJY2xr X2Rpc2FibGVfdW5wcmVwYXJlKGR3bWFjLT5zeXNjZmdfY2xrKTsNCj4gKwkJCQlyZXR1cm4gcmV0 Ow0KPiArCQkJfQ0KPiAgIAkJfQ0KPiAgIAl9IGVsc2Ugew0KPiAgIAkJY2xrX2Rpc2FibGVfdW5w cmVwYXJlKGR3bWFjLT5zeXNjZmdfY2xrKTsNCj4gLQkJY2xrX2Rpc2FibGVfdW5wcmVwYXJlKGR3 bWFjLT5jbGtfZXRoX2NrKTsNCj4gKwkJaWYgKGR3bWFjLT5lbmFibGVfZXRoX2NrKQ0KPiArCQkJ Y2xrX2Rpc2FibGVfdW5wcmVwYXJlKGR3bWFjLT5jbGtfZXRoX2NrKTsNCj4gICAJfQ0KPiAgIAly ZXR1cm4gcmV0Ow0KPiAgIH0NCj4gQEAgLTE3MCwyNCArMTY3LDM0IEBAIHN0YXRpYyBpbnQgc3Rt MzJtcDFfY2xrX3ByZXBhcmUoc3RydWN0IHN0bTMyX2R3bWFjICpkd21hYywgYm9vbCBwcmVwYXJl KQ0KPiAgIHN0YXRpYyBpbnQgc3RtMzJtcDFfc2V0X21vZGUoc3RydWN0IHBsYXRfc3RtbWFjZW5l dF9kYXRhICpwbGF0X2RhdCkNCj4gICB7DQo+ICAgCXN0cnVjdCBzdG0zMl9kd21hYyAqZHdtYWMg PSBwbGF0X2RhdC0+YnNwX3ByaXY7DQo+IC0JdTMyIHJlZyA9IGR3bWFjLT5tb2RlX3JlZzsNCj4g Kwl1MzIgcmVnID0gZHdtYWMtPm1vZGVfcmVnLCBjbGtfcmF0ZTsNCj4gICAJaW50IHZhbDsNCj4g ICANCj4gKwljbGtfcmF0ZSA9IGNsa19nZXRfcmF0ZShkd21hYy0+Y2xrX2V0aF9jayk7DQo+ICsJ ZHdtYWMtPmVuYWJsZV9ldGhfY2sgPSBmYWxzZTsNCj4gICAJc3dpdGNoIChwbGF0X2RhdC0+aW50 ZXJmYWNlKSB7DQo+ICAgCWNhc2UgUEhZX0lOVEVSRkFDRV9NT0RFX01JSToNCj4gKwkJaWYgKGNs a19yYXRlID09IEVUSF9DS19GXzI1TSAmJiBkd21hYy0+ZXh0X3BoeWNsaykNCj4gKwkJCWR3bWFj LT5lbmFibGVfZXRoX2NrID0gdHJ1ZTsNCj4gICAJCXZhbCA9IFNZU0NGR19QTUNSX0VUSF9TRUxf TUlJOw0KPiAgIAkJcHJfZGVidWcoIlNZU0NGRyBpbml0IDogUEhZX0lOVEVSRkFDRV9NT0RFX01J SVxuIik7DQo+ICAgCQlicmVhazsNCj4gICAJY2FzZSBQSFlfSU5URVJGQUNFX01PREVfR01JSToN Cj4gICAJCXZhbCA9IFNZU0NGR19QTUNSX0VUSF9TRUxfR01JSTsNCj4gLQkJaWYgKGR3bWFjLT5l dGhfY2xrX3NlbF9yZWcpDQo+ICsJCWlmIChjbGtfcmF0ZSA9PSBFVEhfQ0tfRl8yNU0gJiYNCj4g KwkJICAgIChkd21hYy0+ZXRoX2Nsa19zZWxfcmVnIHx8IGR3bWFjLT5leHRfcGh5Y2xrKSkgew0K PiArCQkJZHdtYWMtPmVuYWJsZV9ldGhfY2sgPSB0cnVlOw0KPiAgIAkJCXZhbCB8PSBTWVNDRkdf UE1DUl9FVEhfQ0xLX1NFTDsNCj4gKwkJfQ0KPiAgIAkJcHJfZGVidWcoIlNZU0NGRyBpbml0IDog UEhZX0lOVEVSRkFDRV9NT0RFX0dNSUlcbiIpOw0KPiAgIAkJYnJlYWs7DQo+ICAgCWNhc2UgUEhZ X0lOVEVSRkFDRV9NT0RFX1JNSUk6DQo+ICAgCQl2YWwgPSBTWVNDRkdfUE1DUl9FVEhfU0VMX1JN SUk7DQo+IC0JCWlmIChkd21hYy0+ZXRoX3JlZl9jbGtfc2VsX3JlZykNCj4gKwkJaWYgKChjbGtf cmF0ZSA9PSBFVEhfQ0tfRl8yNU0gfHwgY2xrX3JhdGUgPT0gRVRIX0NLX0ZfNTBNKSAmJg0KPiAr CQkgICAgKGR3bWFjLT5ldGhfcmVmX2Nsa19zZWxfcmVnIHx8IGR3bWFjLT5leHRfcGh5Y2xrKSkg ew0KPiArCQkJZHdtYWMtPmVuYWJsZV9ldGhfY2sgPSB0cnVlOw0KPiAgIAkJCXZhbCB8PSBTWVND RkdfUE1DUl9FVEhfUkVGX0NMS19TRUw7DQo+ICsJCX0NCj4gICAJCXByX2RlYnVnKCJTWVNDRkcg aW5pdCA6IFBIWV9JTlRFUkZBQ0VfTU9ERV9STUlJXG4iKTsNCj4gICAJCWJyZWFrOw0KPiAgIAlj YXNlIFBIWV9JTlRFUkZBQ0VfTU9ERV9SR01JSToNCj4gQEAgLTE5NSw4ICsyMDIsMTEgQEAgc3Rh dGljIGludCBzdG0zMm1wMV9zZXRfbW9kZShzdHJ1Y3QgcGxhdF9zdG1tYWNlbmV0X2RhdGEgKnBs YXRfZGF0KQ0KPiAgIAljYXNlIFBIWV9JTlRFUkZBQ0VfTU9ERV9SR01JSV9SWElEOg0KPiAgIAlj YXNlIFBIWV9JTlRFUkZBQ0VfTU9ERV9SR01JSV9UWElEOg0KPiAgIAkJdmFsID0gU1lTQ0ZHX1BN Q1JfRVRIX1NFTF9SR01JSTsNCj4gLQkJaWYgKGR3bWFjLT5ldGhfY2xrX3NlbF9yZWcpDQo+ICsJ CWlmICgoY2xrX3JhdGUgPT0gRVRIX0NLX0ZfMjVNIHx8IGNsa19yYXRlID09IEVUSF9DS19GXzEy NU0pICYmDQo+ICsJCSAgICAoZHdtYWMtPmV0aF9jbGtfc2VsX3JlZyB8fCBkd21hYy0+ZXh0X3Bo eWNsaykpIHsNCj4gKwkJCWR3bWFjLT5lbmFibGVfZXRoX2NrID0gdHJ1ZTsNCj4gICAJCQl2YWwg fD0gU1lTQ0ZHX1BNQ1JfRVRIX0NMS19TRUw7DQo+ICsJCX0NCj4gICAJCXByX2RlYnVnKCJTWVND RkcgaW5pdCA6IFBIWV9JTlRFUkZBQ0VfTU9ERV9SR01JSVxuIik7DQo+ICAgCQlicmVhazsNCj4g ICAJZGVmYXVsdDoNCj4gQEAgLTI5NCw2ICszMDQsOSBAQCBzdGF0aWMgaW50IHN0bTMybXAxX3Bh cnNlX2RhdGEoc3RydWN0IHN0bTMyX2R3bWFjICpkd21hYywNCj4gICAJc3RydWN0IGRldmljZV9u b2RlICpucCA9IGRldi0+b2Zfbm9kZTsNCj4gICAJaW50IGVyciA9IDA7DQo+ICAgDQo+ICsJLyog RXRoZXJuZXQgUEhZIGhhdmUgbm8gY3J5c3RhbCAqLw0KPiArCWR3bWFjLT5leHRfcGh5Y2xrID0g b2ZfcHJvcGVydHlfcmVhZF9ib29sKG5wLCAic3QsZXh0LXBoeWNsayIpOw0KPiArDQo+ICAgCS8q IEdpZ2FiaXQgRXRoZXJuZXQgMTI1TUh6IGNsb2NrIHNlbGVjdGlvbi4gKi8NCj4gICAJZHdtYWMt PmV0aF9jbGtfc2VsX3JlZyA9IG9mX3Byb3BlcnR5X3JlYWRfYm9vbChucCwgInN0LGV0aC1jbGst c2VsIik7DQo+ICAgDQo+IEBAIC00MzEsNyArNDQ0LDggQEAgc3RhdGljIGludCBzdG0zMm1wMV9z dXNwZW5kKHN0cnVjdCBzdG0zMl9kd21hYyAqZHdtYWMpDQo+ICAgDQo+ICAgCWNsa19kaXNhYmxl X3VucHJlcGFyZShkd21hYy0+Y2xrX3R4KTsNCj4gICAJY2xrX2Rpc2FibGVfdW5wcmVwYXJlKGR3 bWFjLT5zeXNjZmdfY2xrKTsNCj4gLQljbGtfZGlzYWJsZV91bnByZXBhcmUoZHdtYWMtPmNsa19l dGhfY2spOw0KPiArCWlmIChkd21hYy0+ZW5hYmxlX2V0aF9jaykNCj4gKwkJY2xrX2Rpc2FibGVf dW5wcmVwYXJlKGR3bWFjLT5jbGtfZXRoX2NrKTsNCj4gICANCj4gICAJcmV0dXJuIHJldDsNCj4g ICB9