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=-5.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no 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 C773FC4320E for ; Fri, 27 Aug 2021 08:49:20 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A4E5060187 for ; Fri, 27 Aug 2021 08:49:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244650AbhH0IuI (ORCPT ); Fri, 27 Aug 2021 04:50:08 -0400 Received: from mail-eopbgr1310135.outbound.protection.outlook.com ([40.107.131.135]:2880 "EHLO APC01-SG2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S244640AbhH0IuG (ORCPT ); Fri, 27 Aug 2021 04:50:06 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QcapMYapQnkhlSgSfNSCwvqGH1Xk23cCXpLn5qzCtjb97MChZYZeASQyO2jLAY79R5Sme223LloOAkidsc1i/fiaZybur8qD5+lmR4uR0XAinf5Y9UUBdKoGS9BQeyTKgNpH0vbAUOkdHi4etiI4rfUO4+X1qefgjE0pUQh/qFNDVcZ5z4RuqVswJqrP5E4jn4iypIUvoFYgSs58Yxwg0OhzHlScdNeGRlGgvE8pSXLQWraOZW4mrxaJShKDWlkb2uEeDCWbY2+6BcI31y6EHfAnFU5zCrXa+m1hCvAkn8gtxCyC09ccSV0jUITgmn8XUDc4tynXVeneLRWg/X6AAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DPIgT6wbdVASTTCXbXX8lnJsc8pJcABsnZsSuTuRCyY=; b=PbnHxZfet5jeutAzFFMQZ2rK4WD14ITHuekcAJbRmIgc8bD6MVkKbLkW2QKLUuxgpBBpbzdvzXTOyoAsic0IhBGwDlmwgLG/uSTal+1/u1ARtR0Sko/x6aioxRUFgQY7w9rJ6lDX3ZjSH+1arH3s7aquSvLbBzFtU9kP1ptLwI3D//KA7EzhClJBaP2VU0jNTO/8S4OdkwsVpRyuJ5n0iw10aggMjnQgW4A/sPp+19jyji/rcON++XBYyCTjSX6zqeRtWXrRwpW2g7FkY8Rj8tXIBAiz4zcZfQLLny9NCxvkygDKC5J/fQCceBkpkn92hczFgXDpfkPJtSseMzYThA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DPIgT6wbdVASTTCXbXX8lnJsc8pJcABsnZsSuTuRCyY=; b=ic6MfGDHTgLWYOsnKn6eqWM53bIXw99YC/pliI93tzLrkEW7h/zV0J7wddaMNnQq/Aiq2PmyH0D16bcFQRduciMZ8gc86oqADjX6CZvaS5jlxWzxDxr4uJJvIjMz/77bIi4JFS/vKLb1inwmurlPXl8a3ljmZWVCzNMxV1SjcTYXNo3GsnYLsjZnUGR3BNd/QnUjurdLJK9s/SzgaQ4InfroOzKchSz06DfBEBkF/JZuZEOqSh15PAkuKuuoj7Ck+eIGSshFHIWiaS+EcDM9YwIPLmhsovHFcWPjNFolq0duoe03BNeS8l8QKZ1X/NZRy96A3P8v2goIUq9DuFQpAQ== Received: from HK0PR06MB3779.apcprd06.prod.outlook.com (2603:1096:203:b8::10) by HK2PR06MB3458.apcprd06.prod.outlook.com (2603:1096:202:38::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.18; Fri, 27 Aug 2021 08:49:13 +0000 Received: from HK0PR06MB3779.apcprd06.prod.outlook.com ([fe80::4c26:6668:f551:3a62]) by HK0PR06MB3779.apcprd06.prod.outlook.com ([fe80::4c26:6668:f551:3a62%3]) with mapi id 15.20.4436.025; Fri, 27 Aug 2021 08:49:13 +0000 From: ChiaWei Wang To: Jeremy Kerr , "joel@jms.id.au" , "robh+dt@kernel.org" , "andrew@aj.id.au" , "linux-aspeed@lists.ozlabs.org" , "openbmc@lists.ozlabs.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH v3 3/4] soc: aspeed: Add eSPI driver Thread-Topic: [PATCH v3 3/4] soc: aspeed: Add eSPI driver Thread-Index: AQHXmkI+4Lhg3IxgrEO2OY2fsCr5kauGsFeAgAAAMrCAABUwgIAAN5MA Date: Fri, 27 Aug 2021 08:49:13 +0000 Message-ID: References: <20210826061623.6352-1-chiawei_wang@aspeedtech.com> <20210826061623.6352-4-chiawei_wang@aspeedtech.com> <7e7378c49ecfb21fef6a0640f92c1b3a7a5878d0.camel@codeconstruct.com.au> <3f2feea6c2fb21c2fdcb419cdc7ceddf3ade06ee.camel@codeconstruct.com.au> In-Reply-To: <3f2feea6c2fb21c2fdcb419cdc7ceddf3ade06ee.camel@codeconstruct.com.au> Accept-Language: zh-TW, en-US Content-Language: zh-TW X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: codeconstruct.com.au; dkim=none (message not signed) header.d=none;codeconstruct.com.au; dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c3edf045-e72f-4107-81a6-08d969378baa x-ms-traffictypediagnostic: HK2PR06MB3458: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: XrzgAbSjOYNjnLPyR2DxN6mOHigONpSsOotU4xXuz+xiMSkIDUbQfwLhRMcjMHYdzQBFv3bfV6HZd8WGRzgNWJBOt/id4LStmblvwO2Zbdt4As2/4L4BB/ck37DOzbaOa75Ib7T5eahXgz9pxDCw0CgnG3Uy5J8WVfo05tEb6ZauwfAZI24+mnspaSUfX+WoDlbIP69m7nHoL4CCynuPjrGSC718GeBvWvflz0KsRUGKyieKsmzU9Cz6Yiqzw0FsxSli+KhgyL5AxQSE/eOXNockrPNflcR6woSaKRLZGUr3sfeCmwR6JUcC8f9hK+UeRYFiWIYxn5B2lDW++pwJSUYWRFXnowWQmm1uK8Cfp3QCGCmyWJL1GEVh6/bxn9SZZObJvaSgvGMVG6BF6z06BhhUW5BkfyiD+MUVFYmueOxhP7YxvwEeHTM2FK6+anoc/GHLYnsftN2yQQ8N1K5FmPmLytp5AQyeZHtqGjBPmhPgEihVbDxLm4rt4LoIzoMe1curss+nC6fDhn3vJIEQa4gwOJ/mkJpId00J1jmByp8/N87zLT2WbX8EBHjbLTYhuW1SP9bMuqtA+uIOfw509W5d0OrFwdMdTR4/tsh2mCyURFWuroMmjstcczRc8xrSMNczfZaLgeX08KhWG+ssANyjmQ9m2iyHf5fz8cNtjPlz0jYYiKnmNDl7PCCCpB8kksa9Yj7GctTF8HrbGb0Ggg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HK0PR06MB3779.apcprd06.prod.outlook.com;PTR:;CAT:NONE;SFS:(136003)(346002)(376002)(396003)(366004)(39840400004)(76116006)(83380400001)(64756008)(66556008)(66476007)(9686003)(2906002)(316002)(86362001)(110136005)(66946007)(66446008)(38070700005)(5660300002)(52536014)(71200400001)(26005)(8936002)(33656002)(122000001)(8676002)(7696005)(6506007)(186003)(38100700002)(478600001)(55016002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UE4yWGVRYlZLRWIvS0NIT3Z5elBLTXhkNVFPKzFPYkhCbzh2RjFIOEsyZTN2?= =?utf-8?B?SDZLd0dFYk5hOFcxdkdORDRMTWtOOG1IN2lHNVpoUFJ3Nkdhd3gyaWtmQVpD?= =?utf-8?B?d0EwaGh4eWZmQTFZRlhzM2d0SlFkbjN4aXVOTk5qZHBBU1JjbEdpRTVZemFW?= =?utf-8?B?VFZVK2ZyY2F6emQ0aTg0UFhIbUhQSTZHT1RYUFc0OFRuNGplTWlMWmhSbnJW?= =?utf-8?B?WU93Z3ViZU8xaE1BY1dQZjFNaUdNMTFWK1JRTWluYkFycU45Y3luZ1lKTjNj?= =?utf-8?B?cERQT3E0UG4wcnhZM08yV0RUUmw0UHZ1VXNDTWpqNnljUzYzVzBySGpzWFN6?= =?utf-8?B?alhjdVphb1lTMklkcGpJUCtwcXdPaGZKMHk2aVZLUE5RRnl2Q0Q0YlFoMXNn?= =?utf-8?B?bGxocXpkbG1UTndZa2kzUmRWODk4RkpVRkh4ZWcrbnErWjVZYWc4elBzODFs?= =?utf-8?B?aWVTd3RnVFJidmVxb3NmWld4UloxbEpyenZ5VFlyVGxsV3cwOVZDbEZBaSts?= =?utf-8?B?bGZrSzFtQkN4YnBoUmZsWDR6aTlmc0R6aWhCRnl4ZmJpMU92Mkd5SUpzTy9K?= =?utf-8?B?YlRiZmk0cVdkVmZKc0RSYmdHVzQ0NkIrRkVMSTF5NXhkTjk3K3hXaE51amRE?= =?utf-8?B?OCtYd0ZZOGs4STByd3o2alUvclF3bVIycG9KVnRvZlFYODlkWEVTZ21kVTVy?= =?utf-8?B?QXQwVkhseURyYzBlR242TlBXSU0vbnczVys1c2pieTlrTStWWXB2Ky83N21E?= =?utf-8?B?UlowYk9lYUxESVRXVFFmSFhWaGVDekREbTRjUEI3cGdEcmgwcUhMUXNmcVU1?= =?utf-8?B?a2Vjci9aQ0R2ZEE5bXQ4R3FqcVV4TG9iTnhBemlnQkloSmo1Rk9mb2VwN2Ir?= =?utf-8?B?WDE5NWdrY1dzaWtPVGhDZ2NiTytRdFRQNW1vK1hXSHc3dVVTR0hXcjByVTFx?= =?utf-8?B?WWh5OERLWUNLY3dtR3JzeVJ4Wk01QUpRYlIwOC9wSWZWTWlPOSsxYzRtL0pI?= =?utf-8?B?VU1sQ3ZUNFkwSnBxQmZocDBtdWc4UmhqeHlhYk9NT3dVS3dYK2J2QjVabEE4?= =?utf-8?B?eTQ5a2VNR3FNTWczai9jaTFOU0FuSDZjVzVQZzZESUgyWGF3YzZrMWR1Qk9U?= =?utf-8?B?Tm45MzAyODI1TDNFTmVmU2JJazhkbmhhUGwzU1pQRnRzRVd4aTdmdjNBSUZ1?= =?utf-8?B?MnRKRG5hcmQxbVp6Zm4vckw5MDRlcE9pSjREMXdaUi9yNFR2UnAzUDJpQnQv?= =?utf-8?B?WUhpQlRkL1djalhNS1Jja2pQeEp0RlBMbDBFVWMxUnJlTWVMMGpxNmgvR0FN?= =?utf-8?B?ZGZXMWNoaW1YU0d6Wm95SlR6ZHpMQ3VXV1VYM0JTOVdGVjZqZUVkZVMvQTlB?= =?utf-8?B?M000SDZKc2xxeWlHMVVNQmxRT2hhczVHcnJDT2J0dmpldE9tOUJ3Y2VuTU12?= =?utf-8?B?aHBvQ1VzMCtRbEUvUkNJa244aUVQUjVjclJBenpYYW9rMW5GWndUSDRCUkE1?= =?utf-8?B?enAvNjNJQW5TTWpaM2hON0hNbWpjYWhMUkNobTdiRW1oU3hvOG5JazVKWFJE?= =?utf-8?B?TU9aMFFON1RCSm5rOWlGNzh1UlFaRDVPbHUrM05MM21ucndDcUxzV2tjeWY2?= =?utf-8?B?YTAyZEVpcWh1QnRMY1lyVkszVmZpRWFxZll5RkkxSnhMKzlUN1F5V2Z1RHls?= =?utf-8?B?cjBXWmVSTTVibUFJWEFmTFlCM0pMbndKUmgra0x5K21NVCsxMlUzY0NPNUZZ?= =?utf-8?Q?6l34AhdZwTTS7BFf9QEddO9oN+Re5yuv+8AyNwf?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: HK0PR06MB3779.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c3edf045-e72f-4107-81a6-08d969378baa X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Aug 2021 08:49:13.4912 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: aj3i+VZFtPJQfGkoEN7NdbZ5A/FfZzh9EeogdVLXocu/zj9n90tA1C+F0yBe7+hwMvxrY+COUD8ADeNCGJ2rJU3UPZnc7D+3WMEFImJYMTs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2PR06MB3458 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgSmVyZW15DQoNCj4gRnJvbTogSmVyZW15IEtlcnIgPGprQGNvZGVjb25zdHJ1Y3QuY29tLmF1 Pg0KPiBTZW50OiBGcmlkYXksIEF1Z3VzdCAyNywgMjAyMSAxMjozNyBQTQ0KPiANCj4gSGkgQ2hp YXdlaSwNCj4gDQo+ID4gVGhlIGVTUEkgc2xhdmUgZGV2aWNlIGNvbXByaXNlcyBmb3VyIGNoYW5u ZWxzLCB3aGVyZSBlYWNoIG9mIHRoZW0gaGFzDQo+ID4gaW5kaXZpZHVhbCBmdW5jdGlvbmFsaXR5 LiAgUHV0dGluZyB0aGUgZm91ciBjaGFubmVscyBkcml2ZXIgY29kZSBpbnRvDQo+ID4gYSBzaW5n bGUgZmlsZSBtYWtlcyBpdCBoYXJkIHRvIG1haW50YWluIGFuZCB0cmFjZS4NCj4gDQo+IFllcCwg dW5kZXJzdG9vZC4NCj4gDQo+ID4gV2UgZGlkIGNvbnNpZGVyIHRvIG1ha2UgdGhlbSBzdGFuZGFy ZCAuYyBmaWxlcy4NCj4gPiBCdXQgaXQgcmVxdWlyZXMgdG8gZXhwb3J0IGNoYW5uZWwgZnVuY3Rp b25zIGludG8ga2VybmVsIHNwYWNlIGFsdGhvdWdoDQo+ID4gdGhleSBhcmUgZGVkaWNhdGVkIG9u bHkgdG8gdGhpcyBlU1BJIGRyaXZlci4NCj4gDQo+IFdoYXQgZG8geW91IG1lYW4gYnkgImV4cG9y dCBpbnRvIGtlcm5lbCBzcGFjZSIgaGVyZT8gVGhlIGZ1bmN0aW9uIHByb3RvdHlwZXMNCg0KVGhl IGNoYW5uZWwgZnVuY3Rpb25zIHdpbGwgYmUgdmlzaWJsZSB0byBhbGwga2VybmVsIGRyaXZlciBm aWxlcy4NCg0KPiBuZWVkIHRvIGJlIGF2YWlsYWJsZSB0byB5b3VyIG1haW4gKC1jdHJsLmMpIGZp bGUsIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB5b3UncmUNCj4gcHV0dGluZyB0aGUgZW50aXJlIGZ1 bmN0aW9ucyBpbiBhIGhlYWRlciBmaWxlLCBvciBqdXN0IHRoZSBwcm90b3R5cGUuIFRoZXJlJ3MN Cj4gZG9lc24ndCBuZWVkIHRvIGJlIGFueSBkaWZmZXJlbmNlIGluIHZpc2liaWxpdHkgb3V0c2lk ZSBvZiB5b3VyIG93biBtb2R1bGUgaWYNCj4geW91IHdlcmUgdG8gZG8gdGhpcyB0aGUgdXN1YWwg d2F5Lg0KDQpNYXliZSBJIHdhcyB0cnlpbmcgdG8gbWFrZSBjaGFubmVscyBmdW5jdGlvbiB2aXNp YmxlIG9ubHkgdG8gZXNwaS1jdHJsLmMgdG9vIGZhci4NCkkgd2lsbCByZXZpc2UgdGhlIGRyaXZl ciB0byBwcmVzZW50IGluIHRoZSB1c3VhbCAuYyB3YXkuDQoNCj4gDQo+ID4gQXMgZXNwaS1jdHJs IG5lZWRzIHRvIGludm9rZSBjb3JyZXNwb25kaW5nIGNoYW5uZWwgZnVuY3Rpb25zIHdoZW4gaXQN Cj4gPiBpcyBpbnRlcnJ1cHRlZCBieSBlU1BJIGV2ZW50cy4NCj4gPg0KPiA+IFRvIGF2b2lkIHBv bGx1dGluZyBrZXJuZWwgc3BhY2UsIHdlIGRlY2lkZWQgdG8gcHV0IGRyaXZlciBjb2RlIGluDQo+ ID4gaGVhZGVyIGZpbGVzIGFuZCBtYWtlIHRoZSBjaGFubmVsIGZ1bmN0aW9ucyAnc3RhdGljJy4N Cj4gPg0KPiA+IEJUVywgSSBvbmNlIGVuY291bnRlcmVkIC5jIGZpbGUgaW5jbHVzaW9uIGluIG90 aGVyIHByb2plY3RzLiBJcyBpdA0KPiA+IHByb3BlciBmb3IgTGludXggZHJpdmVyIGRldmVsb3Bt ZW50Pw0KPiANCj4gSXQgY2FuIGJlLCBqdXN0IHRoYXQgaW4gdGhpcyBjYXNlIGl0J3MgYSBiaXQg dW51c3VhbCwgYW5kIEkgY2FuJ3Qgc2VlIGEgZ29vZCByZWFzb24NCj4gZm9yIGRvaW5nIHNvLiBU aGlzIGNvdWxkIGp1c3QgYmUgYSBzdGFuZGFyZCBtdWx0aXBsZS1zb3VyY2UtZmlsZSBtb2R1bGUu DQo+IA0KPiA+IGVTUEkgY29tbXVuaWNhdGlvbiBpcyBiYXNlZCBvbiB0aGUgaXRzIGN5Y2xlIHBh Y2tldCBmb3JtYXQuDQo+ID4gV2UgaW50ZW5kZWQgdG8gbGV0IHVzZXJzcGFjZSBkZWNpZGVkIGhv dyB0byBpbnRlcnByZXQgYW5kIGNvbXBvc2UNCj4gPiBUWC9SWCBwYWNrZXRzIGluY2x1ZGluZyBo ZWFkZXIsIHRhZywgbGVuZ3RoIChlbmNvZGVkKSwgYW5kIGRhdGEuDQo+ID4gSU9DVEwgY29tZXMg dG8gb3VyIGZpcnN0IG1pbmQgYXMgaXQgYWxzbyB3b3JrcyBpbiB0aGUgJ3BhY2tldCcgbGlrZQ0K PiA+IHBhcmFkaWdtLg0KPiANCj4gQnV0IHlvdSdyZSBub3QgYWx3YXlzIGV4cG9zaW5nIGEgcGFj a2V0LWxpa2UgaW50ZXJmYWNlIGZvciB0aGlzLiBGb3IgZXhhbXBsZSwNCj4geW91ciB2aXJ0dWFs LXdpcmUgaW50ZXJmYWNlIGp1c3QgaGFzIGEgZ2V0L3NldCBpbnRlcmZhY2UgZm9yIGJpdHMgaW4g YSByZWdpc3Rlcg0KPiAocGx1cyBzb21lIFBDSCBldmVudCBoYW5kbGluZywgd2hpY2ggbWF5IG5v dCBiZSBhcHBsaWNhYmxlIHRvIGFsbA0KPiBwbGF0Zm9ybXMuLi4pLg0KPiANCj4gVGhlIG90aGVy IGNoYW5uZWxzIGRvIGxvb2sgbGlrZSBtb3JlIG9mIGEgcGFja2V0IGludGVyZmFjZSB0aG91Z2gs IGJ1dCBpbiB0aGF0DQo+IGNhc2UgSSdtIG5vdCBjb252aW5jZWQgdGhhdCBhbiBpb2N0bCBpbnRl cmZhY2UgaXMgdGhlIGJlc3Qgd2F5IHRvIGdvIGZvciB0aGF0Lg0KPiBZb3UncmUgZXNzZW50aWFs bHkgc2VuZGluZyBhIChsZW5ndGgsIHBvaW50ZXIpIHBhaXIgb3ZlciB0aGUgaW9jdGxzIHRoZXJl LCB3aGljaA0KPiBzb3VuZHMgbW9yZSBsaWtlIGEgd3JpdGUoKSB0aGFuIGFuIGlvY3RsKCkuDQoN CkluIG1vc3QgY2FzZXMsIHllcy4gDQpDdXJyZW50bHkgb25seSB0aGUgcGVyaXBoZXJhbCBjaGFu bmVsIGhhcyBtb3JlIHRoYW4gdGhlIDIgKHB1dCB0eC9nZXQgcngpIElPQ1RMIGNvZGUuDQpXZSB0 aGluayBpdCBtaWdodCBiZSBhIGdvb2QgaWRlYSB0byBtYWtlIHRoZSB1c2VyIGludGVyZmFjZXMg b2YgYWxsIGNoYW5uZWxzIGNvbnNpc3RlbnQgdXNpbmcgSU9DVEwuDQoNCj4gDQo+IFJlZ2FyZGxl c3Mgb2YgdGhlIGNob2ljZSBvZiBpbnRlcmZhY2UgdGhvdWdoLCB0aGlzIHdpbGwgZGVmaW5pdGVs eSBuZWVkIHNvbWUNCj4gZG9jdW1lbnRhdGlvbiBvciBkZXNjcmlwdGlvbiBvZiB0aGUgQVBJLCBh bmQgdGhlIGlvYyBoZWFkZXIgdG8gYmUgc29tZXdoZXJlDQo+IHVzZWZ1bCBmb3IgdXNlcnNwYWNl IHRvIGNvbnN1bWUuDQo+IA0KPiBXaXRoIHRoYXQgZG9jdW1lbnRlZCwgd2UnZCBoYXZlIGEgYmV0 dGVyIGlkZWEgb2YgaG93IHRoZSBuZXcgQUJJIGlzDQo+IHN1cHBvc2VkIHRvIHdvcmsuDQoNClN1 cmUuIG1vcmUgY29tbWVudHMgd2lsbCBiZSBhZGRlZCBpbiBhc3BlZWQtZXNwaS1pb2MuaCB0byBk ZXNjcmliZSB0aGUgdXNhZ2UgYW5kIHRoZSBwdXJwb3NlLg0KDQpUaGFua3MgZm9yIHlvdXIgZmVl ZGJhY2suDQoNCkNoaWF3ZWkNCg0K 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=-4.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no 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 90E7AC4320A for ; Fri, 27 Aug 2021 08:52:26 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 5CE6161002 for ; Fri, 27 Aug 2021 08:52:26 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 5CE6161002 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=aspeedtech.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:In-Reply-To:References: Message-ID:Date:Subject:To:From:Reply-To:Cc:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=OcKj2cTjOq92mlxmPTyRrkhRkhgvUr3n/qrm2+zS6vo=; b=E9erByuTIN2C0L F0W4PfC6l3pXmxQY8JV7V/7Rlfs4NccYXSMj2MaOCARs7VlITvFLlr35tI5Xt3U3lF1iRqoDFVnpH UOpQ7xsYiKMfawtOGeGdBN/OEUePMOTCcT88m9tnf++3eBvi4V2TY17X5xFGd1AWT8On9jVVMm0Wj PTJnvj4clqe8BAEZf2zQ+H594STLsZOAlJvtWHJ55LU0D8AH7UFejaViZ2jattMEW4KBSNcAiY0r4 h01ZV+G2A3xyR2BZzrHglu4eL9/5Ug422VkEbTnAo6OL5WRztGVuhp1MdIGL0lDS6LamBHHsoCu9R Bg+V6YPlCqwdPZ1bazXg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mJXYG-00Byo2-0T; Fri, 27 Aug 2021 08:49:28 +0000 Received: from [40.107.131.95] (helo=APC01-SG2-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mJXY7-00Byls-Kx for linux-arm-kernel@lists.infradead.org; Fri, 27 Aug 2021 08:49:25 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QcapMYapQnkhlSgSfNSCwvqGH1Xk23cCXpLn5qzCtjb97MChZYZeASQyO2jLAY79R5Sme223LloOAkidsc1i/fiaZybur8qD5+lmR4uR0XAinf5Y9UUBdKoGS9BQeyTKgNpH0vbAUOkdHi4etiI4rfUO4+X1qefgjE0pUQh/qFNDVcZ5z4RuqVswJqrP5E4jn4iypIUvoFYgSs58Yxwg0OhzHlScdNeGRlGgvE8pSXLQWraOZW4mrxaJShKDWlkb2uEeDCWbY2+6BcI31y6EHfAnFU5zCrXa+m1hCvAkn8gtxCyC09ccSV0jUITgmn8XUDc4tynXVeneLRWg/X6AAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DPIgT6wbdVASTTCXbXX8lnJsc8pJcABsnZsSuTuRCyY=; b=PbnHxZfet5jeutAzFFMQZ2rK4WD14ITHuekcAJbRmIgc8bD6MVkKbLkW2QKLUuxgpBBpbzdvzXTOyoAsic0IhBGwDlmwgLG/uSTal+1/u1ARtR0Sko/x6aioxRUFgQY7w9rJ6lDX3ZjSH+1arH3s7aquSvLbBzFtU9kP1ptLwI3D//KA7EzhClJBaP2VU0jNTO/8S4OdkwsVpRyuJ5n0iw10aggMjnQgW4A/sPp+19jyji/rcON++XBYyCTjSX6zqeRtWXrRwpW2g7FkY8Rj8tXIBAiz4zcZfQLLny9NCxvkygDKC5J/fQCceBkpkn92hczFgXDpfkPJtSseMzYThA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DPIgT6wbdVASTTCXbXX8lnJsc8pJcABsnZsSuTuRCyY=; b=ic6MfGDHTgLWYOsnKn6eqWM53bIXw99YC/pliI93tzLrkEW7h/zV0J7wddaMNnQq/Aiq2PmyH0D16bcFQRduciMZ8gc86oqADjX6CZvaS5jlxWzxDxr4uJJvIjMz/77bIi4JFS/vKLb1inwmurlPXl8a3ljmZWVCzNMxV1SjcTYXNo3GsnYLsjZnUGR3BNd/QnUjurdLJK9s/SzgaQ4InfroOzKchSz06DfBEBkF/JZuZEOqSh15PAkuKuuoj7Ck+eIGSshFHIWiaS+EcDM9YwIPLmhsovHFcWPjNFolq0duoe03BNeS8l8QKZ1X/NZRy96A3P8v2goIUq9DuFQpAQ== Received: from HK0PR06MB3779.apcprd06.prod.outlook.com (2603:1096:203:b8::10) by HK2PR06MB3458.apcprd06.prod.outlook.com (2603:1096:202:38::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.18; Fri, 27 Aug 2021 08:49:13 +0000 Received: from HK0PR06MB3779.apcprd06.prod.outlook.com ([fe80::4c26:6668:f551:3a62]) by HK0PR06MB3779.apcprd06.prod.outlook.com ([fe80::4c26:6668:f551:3a62%3]) with mapi id 15.20.4436.025; Fri, 27 Aug 2021 08:49:13 +0000 From: ChiaWei Wang To: Jeremy Kerr , "joel@jms.id.au" , "robh+dt@kernel.org" , "andrew@aj.id.au" , "linux-aspeed@lists.ozlabs.org" , "openbmc@lists.ozlabs.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH v3 3/4] soc: aspeed: Add eSPI driver Thread-Topic: [PATCH v3 3/4] soc: aspeed: Add eSPI driver Thread-Index: AQHXmkI+4Lhg3IxgrEO2OY2fsCr5kauGsFeAgAAAMrCAABUwgIAAN5MA Date: Fri, 27 Aug 2021 08:49:13 +0000 Message-ID: References: <20210826061623.6352-1-chiawei_wang@aspeedtech.com> <20210826061623.6352-4-chiawei_wang@aspeedtech.com> <7e7378c49ecfb21fef6a0640f92c1b3a7a5878d0.camel@codeconstruct.com.au> <3f2feea6c2fb21c2fdcb419cdc7ceddf3ade06ee.camel@codeconstruct.com.au> In-Reply-To: <3f2feea6c2fb21c2fdcb419cdc7ceddf3ade06ee.camel@codeconstruct.com.au> Accept-Language: zh-TW, en-US Content-Language: zh-TW X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: codeconstruct.com.au; dkim=none (message not signed) header.d=none;codeconstruct.com.au; dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c3edf045-e72f-4107-81a6-08d969378baa x-ms-traffictypediagnostic: HK2PR06MB3458: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: XrzgAbSjOYNjnLPyR2DxN6mOHigONpSsOotU4xXuz+xiMSkIDUbQfwLhRMcjMHYdzQBFv3bfV6HZd8WGRzgNWJBOt/id4LStmblvwO2Zbdt4As2/4L4BB/ck37DOzbaOa75Ib7T5eahXgz9pxDCw0CgnG3Uy5J8WVfo05tEb6ZauwfAZI24+mnspaSUfX+WoDlbIP69m7nHoL4CCynuPjrGSC718GeBvWvflz0KsRUGKyieKsmzU9Cz6Yiqzw0FsxSli+KhgyL5AxQSE/eOXNockrPNflcR6woSaKRLZGUr3sfeCmwR6JUcC8f9hK+UeRYFiWIYxn5B2lDW++pwJSUYWRFXnowWQmm1uK8Cfp3QCGCmyWJL1GEVh6/bxn9SZZObJvaSgvGMVG6BF6z06BhhUW5BkfyiD+MUVFYmueOxhP7YxvwEeHTM2FK6+anoc/GHLYnsftN2yQQ8N1K5FmPmLytp5AQyeZHtqGjBPmhPgEihVbDxLm4rt4LoIzoMe1curss+nC6fDhn3vJIEQa4gwOJ/mkJpId00J1jmByp8/N87zLT2WbX8EBHjbLTYhuW1SP9bMuqtA+uIOfw509W5d0OrFwdMdTR4/tsh2mCyURFWuroMmjstcczRc8xrSMNczfZaLgeX08KhWG+ssANyjmQ9m2iyHf5fz8cNtjPlz0jYYiKnmNDl7PCCCpB8kksa9Yj7GctTF8HrbGb0Ggg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:HK0PR06MB3779.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(136003)(346002)(376002)(396003)(366004)(39840400004)(76116006)(83380400001)(64756008)(66556008)(66476007)(9686003)(2906002)(316002)(86362001)(110136005)(66946007)(66446008)(38070700005)(5660300002)(52536014)(71200400001)(26005)(8936002)(33656002)(122000001)(8676002)(7696005)(6506007)(186003)(38100700002)(478600001)(55016002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UE4yWGVRYlZLRWIvS0NIT3Z5elBLTXhkNVFPKzFPYkhCbzh2RjFIOEsyZTN2?= =?utf-8?B?SDZLd0dFYk5hOFcxdkdORDRMTWtOOG1IN2lHNVpoUFJ3Nkdhd3gyaWtmQVpD?= =?utf-8?B?d0EwaGh4eWZmQTFZRlhzM2d0SlFkbjN4aXVOTk5qZHBBU1JjbEdpRTVZemFW?= =?utf-8?B?VFZVK2ZyY2F6emQ0aTg0UFhIbUhQSTZHT1RYUFc0OFRuNGplTWlMWmhSbnJW?= =?utf-8?B?WU93Z3ViZU8xaE1BY1dQZjFNaUdNMTFWK1JRTWluYkFycU45Y3luZ1lKTjNj?= =?utf-8?B?cERQT3E0UG4wcnhZM08yV0RUUmw0UHZ1VXNDTWpqNnljUzYzVzBySGpzWFN6?= =?utf-8?B?alhjdVphb1lTMklkcGpJUCtwcXdPaGZKMHk2aVZLUE5RRnl2Q0Q0YlFoMXNn?= =?utf-8?B?bGxocXpkbG1UTndZa2kzUmRWODk4RkpVRkh4ZWcrbnErWjVZYWc4elBzODFs?= =?utf-8?B?aWVTd3RnVFJidmVxb3NmWld4UloxbEpyenZ5VFlyVGxsV3cwOVZDbEZBaSts?= =?utf-8?B?bGZrSzFtQkN4YnBoUmZsWDR6aTlmc0R6aWhCRnl4ZmJpMU92Mkd5SUpzTy9K?= =?utf-8?B?YlRiZmk0cVdkVmZKc0RSYmdHVzQ0NkIrRkVMSTF5NXhkTjk3K3hXaE51amRE?= =?utf-8?B?OCtYd0ZZOGs4STByd3o2alUvclF3bVIycG9KVnRvZlFYODlkWEVTZ21kVTVy?= =?utf-8?B?QXQwVkhseURyYzBlR242TlBXSU0vbnczVys1c2pieTlrTStWWXB2Ky83N21E?= =?utf-8?B?UlowYk9lYUxESVRXVFFmSFhWaGVDekREbTRjUEI3cGdEcmgwcUhMUXNmcVU1?= =?utf-8?B?a2Vjci9aQ0R2ZEE5bXQ4R3FqcVV4TG9iTnhBemlnQkloSmo1Rk9mb2VwN2Ir?= =?utf-8?B?WDE5NWdrY1dzaWtPVGhDZ2NiTytRdFRQNW1vK1hXSHc3dVVTR0hXcjByVTFx?= =?utf-8?B?WWh5OERLWUNLY3dtR3JzeVJ4Wk01QUpRYlIwOC9wSWZWTWlPOSsxYzRtL0pI?= =?utf-8?B?VU1sQ3ZUNFkwSnBxQmZocDBtdWc4UmhqeHlhYk9NT3dVS3dYK2J2QjVabEE4?= =?utf-8?B?eTQ5a2VNR3FNTWczai9jaTFOU0FuSDZjVzVQZzZESUgyWGF3YzZrMWR1Qk9U?= =?utf-8?B?Tm45MzAyODI1TDNFTmVmU2JJazhkbmhhUGwzU1pQRnRzRVd4aTdmdjNBSUZ1?= =?utf-8?B?MnRKRG5hcmQxbVp6Zm4vckw5MDRlcE9pSjREMXdaUi9yNFR2UnAzUDJpQnQv?= =?utf-8?B?WUhpQlRkL1djalhNS1Jja2pQeEp0RlBMbDBFVWMxUnJlTWVMMGpxNmgvR0FN?= =?utf-8?B?ZGZXMWNoaW1YU0d6Wm95SlR6ZHpMQ3VXV1VYM0JTOVdGVjZqZUVkZVMvQTlB?= =?utf-8?B?M000SDZKc2xxeWlHMVVNQmxRT2hhczVHcnJDT2J0dmpldE9tOUJ3Y2VuTU12?= =?utf-8?B?aHBvQ1VzMCtRbEUvUkNJa244aUVQUjVjclJBenpYYW9rMW5GWndUSDRCUkE1?= =?utf-8?B?enAvNjNJQW5TTWpaM2hON0hNbWpjYWhMUkNobTdiRW1oU3hvOG5JazVKWFJE?= =?utf-8?B?TU9aMFFON1RCSm5rOWlGNzh1UlFaRDVPbHUrM05MM21ucndDcUxzV2tjeWY2?= =?utf-8?B?YTAyZEVpcWh1QnRMY1lyVkszVmZpRWFxZll5RkkxSnhMKzlUN1F5V2Z1RHls?= =?utf-8?B?cjBXWmVSTTVibUFJWEFmTFlCM0pMbndKUmgra0x5K21NVCsxMlUzY0NPNUZZ?= =?utf-8?Q?6l34AhdZwTTS7BFf9QEddO9oN+Re5yuv+8AyNwf?= x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: HK0PR06MB3779.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c3edf045-e72f-4107-81a6-08d969378baa X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Aug 2021 08:49:13.4912 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: aj3i+VZFtPJQfGkoEN7NdbZ5A/FfZzh9EeogdVLXocu/zj9n90tA1C+F0yBe7+hwMvxrY+COUD8ADeNCGJ2rJU3UPZnc7D+3WMEFImJYMTs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2PR06MB3458 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210827_014920_768742_DB498A7D X-CRM114-Status: GOOD ( 36.59 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi Jeremy > From: Jeremy Kerr > Sent: Friday, August 27, 2021 12:37 PM > > Hi Chiawei, > > > The eSPI slave device comprises four channels, where each of them has > > individual functionality. Putting the four channels driver code into > > a single file makes it hard to maintain and trace. > > Yep, understood. > > > We did consider to make them standard .c files. > > But it requires to export channel functions into kernel space although > > they are dedicated only to this eSPI driver. > > What do you mean by "export into kernel space" here? The function prototypes The channel functions will be visible to all kernel driver files. > need to be available to your main (-ctrl.c) file, regardless of whether you're > putting the entire functions in a header file, or just the prototype. There's > doesn't need to be any difference in visibility outside of your own module if > you were to do this the usual way. Maybe I was trying to make channels function visible only to espi-ctrl.c too far. I will revise the driver to present in the usual .c way. > > > As espi-ctrl needs to invoke corresponding channel functions when it > > is interrupted by eSPI events. > > > > To avoid polluting kernel space, we decided to put driver code in > > header files and make the channel functions 'static'. > > > > BTW, I once encountered .c file inclusion in other projects. Is it > > proper for Linux driver development? > > It can be, just that in this case it's a bit unusual, and I can't see a good reason > for doing so. This could just be a standard multiple-source-file module. > > > eSPI communication is based on the its cycle packet format. > > We intended to let userspace decided how to interpret and compose > > TX/RX packets including header, tag, length (encoded), and data. > > IOCTL comes to our first mind as it also works in the 'packet' like > > paradigm. > > But you're not always exposing a packet-like interface for this. For example, > your virtual-wire interface just has a get/set interface for bits in a register > (plus some PCH event handling, which may not be applicable to all > platforms...). > > The other channels do look like more of a packet interface though, but in that > case I'm not convinced that an ioctl interface is the best way to go for that. > You're essentially sending a (length, pointer) pair over the ioctls there, which > sounds more like a write() than an ioctl(). In most cases, yes. Currently only the peripheral channel has more than the 2 (put tx/get rx) IOCTL code. We think it might be a good idea to make the user interfaces of all channels consistent using IOCTL. > > Regardless of the choice of interface though, this will definitely need some > documentation or description of the API, and the ioc header to be somewhere > useful for userspace to consume. > > With that documented, we'd have a better idea of how the new ABI is > supposed to work. Sure. more comments will be added in aspeed-espi-ioc.h to describe the usage and the purpose. Thanks for your feedback. Chiawei _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel 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=-5.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no 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 7769CC432BE for ; Fri, 27 Aug 2021 09:24:48 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (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 653A360EBD for ; Fri, 27 Aug 2021 09:24:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 653A360EBD Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=aspeedtech.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.ozlabs.org Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4GwvSF6NxWz2ypC for ; Fri, 27 Aug 2021 19:24:45 +1000 (AEST) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=aspeedtech.com header.i=@aspeedtech.com header.a=rsa-sha256 header.s=selector1 header.b=ic6MfGDH; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=aspeedtech.com (client-ip=40.107.130.112; helo=apc01-hk2-obe.outbound.protection.outlook.com; envelope-from=chiawei_wang@aspeedtech.com; receiver=) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=aspeedtech.com header.i=@aspeedtech.com header.a=rsa-sha256 header.s=selector1 header.b=ic6MfGDH; dkim-atps=neutral X-Greylist: delayed 1156 seconds by postgrey-1.36 at boromir; Fri, 27 Aug 2021 19:23:29 AEST Received: from APC01-HK2-obe.outbound.protection.outlook.com (unknown [40.107.130.112]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4GwvQn21qJz2ypB; Fri, 27 Aug 2021 19:23:26 +1000 (AEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QcapMYapQnkhlSgSfNSCwvqGH1Xk23cCXpLn5qzCtjb97MChZYZeASQyO2jLAY79R5Sme223LloOAkidsc1i/fiaZybur8qD5+lmR4uR0XAinf5Y9UUBdKoGS9BQeyTKgNpH0vbAUOkdHi4etiI4rfUO4+X1qefgjE0pUQh/qFNDVcZ5z4RuqVswJqrP5E4jn4iypIUvoFYgSs58Yxwg0OhzHlScdNeGRlGgvE8pSXLQWraOZW4mrxaJShKDWlkb2uEeDCWbY2+6BcI31y6EHfAnFU5zCrXa+m1hCvAkn8gtxCyC09ccSV0jUITgmn8XUDc4tynXVeneLRWg/X6AAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DPIgT6wbdVASTTCXbXX8lnJsc8pJcABsnZsSuTuRCyY=; b=PbnHxZfet5jeutAzFFMQZ2rK4WD14ITHuekcAJbRmIgc8bD6MVkKbLkW2QKLUuxgpBBpbzdvzXTOyoAsic0IhBGwDlmwgLG/uSTal+1/u1ARtR0Sko/x6aioxRUFgQY7w9rJ6lDX3ZjSH+1arH3s7aquSvLbBzFtU9kP1ptLwI3D//KA7EzhClJBaP2VU0jNTO/8S4OdkwsVpRyuJ5n0iw10aggMjnQgW4A/sPp+19jyji/rcON++XBYyCTjSX6zqeRtWXrRwpW2g7FkY8Rj8tXIBAiz4zcZfQLLny9NCxvkygDKC5J/fQCceBkpkn92hczFgXDpfkPJtSseMzYThA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DPIgT6wbdVASTTCXbXX8lnJsc8pJcABsnZsSuTuRCyY=; b=ic6MfGDHTgLWYOsnKn6eqWM53bIXw99YC/pliI93tzLrkEW7h/zV0J7wddaMNnQq/Aiq2PmyH0D16bcFQRduciMZ8gc86oqADjX6CZvaS5jlxWzxDxr4uJJvIjMz/77bIi4JFS/vKLb1inwmurlPXl8a3ljmZWVCzNMxV1SjcTYXNo3GsnYLsjZnUGR3BNd/QnUjurdLJK9s/SzgaQ4InfroOzKchSz06DfBEBkF/JZuZEOqSh15PAkuKuuoj7Ck+eIGSshFHIWiaS+EcDM9YwIPLmhsovHFcWPjNFolq0duoe03BNeS8l8QKZ1X/NZRy96A3P8v2goIUq9DuFQpAQ== Received: from HK0PR06MB3779.apcprd06.prod.outlook.com (2603:1096:203:b8::10) by HK2PR06MB3458.apcprd06.prod.outlook.com (2603:1096:202:38::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.18; Fri, 27 Aug 2021 08:49:13 +0000 Received: from HK0PR06MB3779.apcprd06.prod.outlook.com ([fe80::4c26:6668:f551:3a62]) by HK0PR06MB3779.apcprd06.prod.outlook.com ([fe80::4c26:6668:f551:3a62%3]) with mapi id 15.20.4436.025; Fri, 27 Aug 2021 08:49:13 +0000 From: ChiaWei Wang To: Jeremy Kerr , "joel@jms.id.au" , "robh+dt@kernel.org" , "andrew@aj.id.au" , "linux-aspeed@lists.ozlabs.org" , "openbmc@lists.ozlabs.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH v3 3/4] soc: aspeed: Add eSPI driver Thread-Topic: [PATCH v3 3/4] soc: aspeed: Add eSPI driver Thread-Index: AQHXmkI+4Lhg3IxgrEO2OY2fsCr5kauGsFeAgAAAMrCAABUwgIAAN5MA Date: Fri, 27 Aug 2021 08:49:13 +0000 Message-ID: References: <20210826061623.6352-1-chiawei_wang@aspeedtech.com> <20210826061623.6352-4-chiawei_wang@aspeedtech.com> <7e7378c49ecfb21fef6a0640f92c1b3a7a5878d0.camel@codeconstruct.com.au> <3f2feea6c2fb21c2fdcb419cdc7ceddf3ade06ee.camel@codeconstruct.com.au> In-Reply-To: <3f2feea6c2fb21c2fdcb419cdc7ceddf3ade06ee.camel@codeconstruct.com.au> Accept-Language: zh-TW, en-US Content-Language: zh-TW X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: codeconstruct.com.au; dkim=none (message not signed) header.d=none;codeconstruct.com.au; dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c3edf045-e72f-4107-81a6-08d969378baa x-ms-traffictypediagnostic: HK2PR06MB3458: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: XrzgAbSjOYNjnLPyR2DxN6mOHigONpSsOotU4xXuz+xiMSkIDUbQfwLhRMcjMHYdzQBFv3bfV6HZd8WGRzgNWJBOt/id4LStmblvwO2Zbdt4As2/4L4BB/ck37DOzbaOa75Ib7T5eahXgz9pxDCw0CgnG3Uy5J8WVfo05tEb6ZauwfAZI24+mnspaSUfX+WoDlbIP69m7nHoL4CCynuPjrGSC718GeBvWvflz0KsRUGKyieKsmzU9Cz6Yiqzw0FsxSli+KhgyL5AxQSE/eOXNockrPNflcR6woSaKRLZGUr3sfeCmwR6JUcC8f9hK+UeRYFiWIYxn5B2lDW++pwJSUYWRFXnowWQmm1uK8Cfp3QCGCmyWJL1GEVh6/bxn9SZZObJvaSgvGMVG6BF6z06BhhUW5BkfyiD+MUVFYmueOxhP7YxvwEeHTM2FK6+anoc/GHLYnsftN2yQQ8N1K5FmPmLytp5AQyeZHtqGjBPmhPgEihVbDxLm4rt4LoIzoMe1curss+nC6fDhn3vJIEQa4gwOJ/mkJpId00J1jmByp8/N87zLT2WbX8EBHjbLTYhuW1SP9bMuqtA+uIOfw509W5d0OrFwdMdTR4/tsh2mCyURFWuroMmjstcczRc8xrSMNczfZaLgeX08KhWG+ssANyjmQ9m2iyHf5fz8cNtjPlz0jYYiKnmNDl7PCCCpB8kksa9Yj7GctTF8HrbGb0Ggg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:HK0PR06MB3779.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(136003)(346002)(376002)(396003)(366004)(39840400004)(76116006)(83380400001)(64756008)(66556008)(66476007)(9686003)(2906002)(316002)(86362001)(110136005)(66946007)(66446008)(38070700005)(5660300002)(52536014)(71200400001)(26005)(8936002)(33656002)(122000001)(8676002)(7696005)(6506007)(186003)(38100700002)(478600001)(55016002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UE4yWGVRYlZLRWIvS0NIT3Z5elBLTXhkNVFPKzFPYkhCbzh2RjFIOEsyZTN2?= =?utf-8?B?SDZLd0dFYk5hOFcxdkdORDRMTWtOOG1IN2lHNVpoUFJ3Nkdhd3gyaWtmQVpD?= =?utf-8?B?d0EwaGh4eWZmQTFZRlhzM2d0SlFkbjN4aXVOTk5qZHBBU1JjbEdpRTVZemFW?= =?utf-8?B?VFZVK2ZyY2F6emQ0aTg0UFhIbUhQSTZHT1RYUFc0OFRuNGplTWlMWmhSbnJW?= =?utf-8?B?WU93Z3ViZU8xaE1BY1dQZjFNaUdNMTFWK1JRTWluYkFycU45Y3luZ1lKTjNj?= =?utf-8?B?cERQT3E0UG4wcnhZM08yV0RUUmw0UHZ1VXNDTWpqNnljUzYzVzBySGpzWFN6?= =?utf-8?B?alhjdVphb1lTMklkcGpJUCtwcXdPaGZKMHk2aVZLUE5RRnl2Q0Q0YlFoMXNn?= =?utf-8?B?bGxocXpkbG1UTndZa2kzUmRWODk4RkpVRkh4ZWcrbnErWjVZYWc4elBzODFs?= =?utf-8?B?aWVTd3RnVFJidmVxb3NmWld4UloxbEpyenZ5VFlyVGxsV3cwOVZDbEZBaSts?= =?utf-8?B?bGZrSzFtQkN4YnBoUmZsWDR6aTlmc0R6aWhCRnl4ZmJpMU92Mkd5SUpzTy9K?= =?utf-8?B?YlRiZmk0cVdkVmZKc0RSYmdHVzQ0NkIrRkVMSTF5NXhkTjk3K3hXaE51amRE?= =?utf-8?B?OCtYd0ZZOGs4STByd3o2alUvclF3bVIycG9KVnRvZlFYODlkWEVTZ21kVTVy?= =?utf-8?B?QXQwVkhseURyYzBlR242TlBXSU0vbnczVys1c2pieTlrTStWWXB2Ky83N21E?= =?utf-8?B?UlowYk9lYUxESVRXVFFmSFhWaGVDekREbTRjUEI3cGdEcmgwcUhMUXNmcVU1?= =?utf-8?B?a2Vjci9aQ0R2ZEE5bXQ4R3FqcVV4TG9iTnhBemlnQkloSmo1Rk9mb2VwN2Ir?= =?utf-8?B?WDE5NWdrY1dzaWtPVGhDZ2NiTytRdFRQNW1vK1hXSHc3dVVTR0hXcjByVTFx?= =?utf-8?B?WWh5OERLWUNLY3dtR3JzeVJ4Wk01QUpRYlIwOC9wSWZWTWlPOSsxYzRtL0pI?= =?utf-8?B?VU1sQ3ZUNFkwSnBxQmZocDBtdWc4UmhqeHlhYk9NT3dVS3dYK2J2QjVabEE4?= =?utf-8?B?eTQ5a2VNR3FNTWczai9jaTFOU0FuSDZjVzVQZzZESUgyWGF3YzZrMWR1Qk9U?= =?utf-8?B?Tm45MzAyODI1TDNFTmVmU2JJazhkbmhhUGwzU1pQRnRzRVd4aTdmdjNBSUZ1?= =?utf-8?B?MnRKRG5hcmQxbVp6Zm4vckw5MDRlcE9pSjREMXdaUi9yNFR2UnAzUDJpQnQv?= =?utf-8?B?WUhpQlRkL1djalhNS1Jja2pQeEp0RlBMbDBFVWMxUnJlTWVMMGpxNmgvR0FN?= =?utf-8?B?ZGZXMWNoaW1YU0d6Wm95SlR6ZHpMQ3VXV1VYM0JTOVdGVjZqZUVkZVMvQTlB?= =?utf-8?B?M000SDZKc2xxeWlHMVVNQmxRT2hhczVHcnJDT2J0dmpldE9tOUJ3Y2VuTU12?= =?utf-8?B?aHBvQ1VzMCtRbEUvUkNJa244aUVQUjVjclJBenpYYW9rMW5GWndUSDRCUkE1?= =?utf-8?B?enAvNjNJQW5TTWpaM2hON0hNbWpjYWhMUkNobTdiRW1oU3hvOG5JazVKWFJE?= =?utf-8?B?TU9aMFFON1RCSm5rOWlGNzh1UlFaRDVPbHUrM05MM21ucndDcUxzV2tjeWY2?= =?utf-8?B?YTAyZEVpcWh1QnRMY1lyVkszVmZpRWFxZll5RkkxSnhMKzlUN1F5V2Z1RHls?= =?utf-8?B?cjBXWmVSTTVibUFJWEFmTFlCM0pMbndKUmgra0x5K21NVCsxMlUzY0NPNUZZ?= =?utf-8?Q?6l34AhdZwTTS7BFf9QEddO9oN+Re5yuv+8AyNwf?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: HK0PR06MB3779.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c3edf045-e72f-4107-81a6-08d969378baa X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Aug 2021 08:49:13.4912 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: aj3i+VZFtPJQfGkoEN7NdbZ5A/FfZzh9EeogdVLXocu/zj9n90tA1C+F0yBe7+hwMvxrY+COUD8ADeNCGJ2rJU3UPZnc7D+3WMEFImJYMTs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2PR06MB3458 X-BeenThere: openbmc@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development list for OpenBMC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: openbmc-bounces+openbmc=archiver.kernel.org@lists.ozlabs.org Sender: "openbmc" SGkgSmVyZW15DQoNCj4gRnJvbTogSmVyZW15IEtlcnIgPGprQGNvZGVjb25zdHJ1Y3QuY29tLmF1 Pg0KPiBTZW50OiBGcmlkYXksIEF1Z3VzdCAyNywgMjAyMSAxMjozNyBQTQ0KPiANCj4gSGkgQ2hp YXdlaSwNCj4gDQo+ID4gVGhlIGVTUEkgc2xhdmUgZGV2aWNlIGNvbXByaXNlcyBmb3VyIGNoYW5u ZWxzLCB3aGVyZSBlYWNoIG9mIHRoZW0gaGFzDQo+ID4gaW5kaXZpZHVhbCBmdW5jdGlvbmFsaXR5 LiAgUHV0dGluZyB0aGUgZm91ciBjaGFubmVscyBkcml2ZXIgY29kZSBpbnRvDQo+ID4gYSBzaW5n bGUgZmlsZSBtYWtlcyBpdCBoYXJkIHRvIG1haW50YWluIGFuZCB0cmFjZS4NCj4gDQo+IFllcCwg dW5kZXJzdG9vZC4NCj4gDQo+ID4gV2UgZGlkIGNvbnNpZGVyIHRvIG1ha2UgdGhlbSBzdGFuZGFy ZCAuYyBmaWxlcy4NCj4gPiBCdXQgaXQgcmVxdWlyZXMgdG8gZXhwb3J0IGNoYW5uZWwgZnVuY3Rp b25zIGludG8ga2VybmVsIHNwYWNlIGFsdGhvdWdoDQo+ID4gdGhleSBhcmUgZGVkaWNhdGVkIG9u bHkgdG8gdGhpcyBlU1BJIGRyaXZlci4NCj4gDQo+IFdoYXQgZG8geW91IG1lYW4gYnkgImV4cG9y dCBpbnRvIGtlcm5lbCBzcGFjZSIgaGVyZT8gVGhlIGZ1bmN0aW9uIHByb3RvdHlwZXMNCg0KVGhl IGNoYW5uZWwgZnVuY3Rpb25zIHdpbGwgYmUgdmlzaWJsZSB0byBhbGwga2VybmVsIGRyaXZlciBm aWxlcy4NCg0KPiBuZWVkIHRvIGJlIGF2YWlsYWJsZSB0byB5b3VyIG1haW4gKC1jdHJsLmMpIGZp bGUsIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB5b3UncmUNCj4gcHV0dGluZyB0aGUgZW50aXJlIGZ1 bmN0aW9ucyBpbiBhIGhlYWRlciBmaWxlLCBvciBqdXN0IHRoZSBwcm90b3R5cGUuIFRoZXJlJ3MN Cj4gZG9lc24ndCBuZWVkIHRvIGJlIGFueSBkaWZmZXJlbmNlIGluIHZpc2liaWxpdHkgb3V0c2lk ZSBvZiB5b3VyIG93biBtb2R1bGUgaWYNCj4geW91IHdlcmUgdG8gZG8gdGhpcyB0aGUgdXN1YWwg d2F5Lg0KDQpNYXliZSBJIHdhcyB0cnlpbmcgdG8gbWFrZSBjaGFubmVscyBmdW5jdGlvbiB2aXNp YmxlIG9ubHkgdG8gZXNwaS1jdHJsLmMgdG9vIGZhci4NCkkgd2lsbCByZXZpc2UgdGhlIGRyaXZl ciB0byBwcmVzZW50IGluIHRoZSB1c3VhbCAuYyB3YXkuDQoNCj4gDQo+ID4gQXMgZXNwaS1jdHJs IG5lZWRzIHRvIGludm9rZSBjb3JyZXNwb25kaW5nIGNoYW5uZWwgZnVuY3Rpb25zIHdoZW4gaXQN Cj4gPiBpcyBpbnRlcnJ1cHRlZCBieSBlU1BJIGV2ZW50cy4NCj4gPg0KPiA+IFRvIGF2b2lkIHBv bGx1dGluZyBrZXJuZWwgc3BhY2UsIHdlIGRlY2lkZWQgdG8gcHV0IGRyaXZlciBjb2RlIGluDQo+ ID4gaGVhZGVyIGZpbGVzIGFuZCBtYWtlIHRoZSBjaGFubmVsIGZ1bmN0aW9ucyAnc3RhdGljJy4N Cj4gPg0KPiA+IEJUVywgSSBvbmNlIGVuY291bnRlcmVkIC5jIGZpbGUgaW5jbHVzaW9uIGluIG90 aGVyIHByb2plY3RzLiBJcyBpdA0KPiA+IHByb3BlciBmb3IgTGludXggZHJpdmVyIGRldmVsb3Bt ZW50Pw0KPiANCj4gSXQgY2FuIGJlLCBqdXN0IHRoYXQgaW4gdGhpcyBjYXNlIGl0J3MgYSBiaXQg dW51c3VhbCwgYW5kIEkgY2FuJ3Qgc2VlIGEgZ29vZCByZWFzb24NCj4gZm9yIGRvaW5nIHNvLiBU aGlzIGNvdWxkIGp1c3QgYmUgYSBzdGFuZGFyZCBtdWx0aXBsZS1zb3VyY2UtZmlsZSBtb2R1bGUu DQo+IA0KPiA+IGVTUEkgY29tbXVuaWNhdGlvbiBpcyBiYXNlZCBvbiB0aGUgaXRzIGN5Y2xlIHBh Y2tldCBmb3JtYXQuDQo+ID4gV2UgaW50ZW5kZWQgdG8gbGV0IHVzZXJzcGFjZSBkZWNpZGVkIGhv dyB0byBpbnRlcnByZXQgYW5kIGNvbXBvc2UNCj4gPiBUWC9SWCBwYWNrZXRzIGluY2x1ZGluZyBo ZWFkZXIsIHRhZywgbGVuZ3RoIChlbmNvZGVkKSwgYW5kIGRhdGEuDQo+ID4gSU9DVEwgY29tZXMg dG8gb3VyIGZpcnN0IG1pbmQgYXMgaXQgYWxzbyB3b3JrcyBpbiB0aGUgJ3BhY2tldCcgbGlrZQ0K PiA+IHBhcmFkaWdtLg0KPiANCj4gQnV0IHlvdSdyZSBub3QgYWx3YXlzIGV4cG9zaW5nIGEgcGFj a2V0LWxpa2UgaW50ZXJmYWNlIGZvciB0aGlzLiBGb3IgZXhhbXBsZSwNCj4geW91ciB2aXJ0dWFs LXdpcmUgaW50ZXJmYWNlIGp1c3QgaGFzIGEgZ2V0L3NldCBpbnRlcmZhY2UgZm9yIGJpdHMgaW4g YSByZWdpc3Rlcg0KPiAocGx1cyBzb21lIFBDSCBldmVudCBoYW5kbGluZywgd2hpY2ggbWF5IG5v dCBiZSBhcHBsaWNhYmxlIHRvIGFsbA0KPiBwbGF0Zm9ybXMuLi4pLg0KPiANCj4gVGhlIG90aGVy IGNoYW5uZWxzIGRvIGxvb2sgbGlrZSBtb3JlIG9mIGEgcGFja2V0IGludGVyZmFjZSB0aG91Z2gs IGJ1dCBpbiB0aGF0DQo+IGNhc2UgSSdtIG5vdCBjb252aW5jZWQgdGhhdCBhbiBpb2N0bCBpbnRl cmZhY2UgaXMgdGhlIGJlc3Qgd2F5IHRvIGdvIGZvciB0aGF0Lg0KPiBZb3UncmUgZXNzZW50aWFs bHkgc2VuZGluZyBhIChsZW5ndGgsIHBvaW50ZXIpIHBhaXIgb3ZlciB0aGUgaW9jdGxzIHRoZXJl LCB3aGljaA0KPiBzb3VuZHMgbW9yZSBsaWtlIGEgd3JpdGUoKSB0aGFuIGFuIGlvY3RsKCkuDQoN CkluIG1vc3QgY2FzZXMsIHllcy4gDQpDdXJyZW50bHkgb25seSB0aGUgcGVyaXBoZXJhbCBjaGFu bmVsIGhhcyBtb3JlIHRoYW4gdGhlIDIgKHB1dCB0eC9nZXQgcngpIElPQ1RMIGNvZGUuDQpXZSB0 aGluayBpdCBtaWdodCBiZSBhIGdvb2QgaWRlYSB0byBtYWtlIHRoZSB1c2VyIGludGVyZmFjZXMg b2YgYWxsIGNoYW5uZWxzIGNvbnNpc3RlbnQgdXNpbmcgSU9DVEwuDQoNCj4gDQo+IFJlZ2FyZGxl c3Mgb2YgdGhlIGNob2ljZSBvZiBpbnRlcmZhY2UgdGhvdWdoLCB0aGlzIHdpbGwgZGVmaW5pdGVs eSBuZWVkIHNvbWUNCj4gZG9jdW1lbnRhdGlvbiBvciBkZXNjcmlwdGlvbiBvZiB0aGUgQVBJLCBh bmQgdGhlIGlvYyBoZWFkZXIgdG8gYmUgc29tZXdoZXJlDQo+IHVzZWZ1bCBmb3IgdXNlcnNwYWNl IHRvIGNvbnN1bWUuDQo+IA0KPiBXaXRoIHRoYXQgZG9jdW1lbnRlZCwgd2UnZCBoYXZlIGEgYmV0 dGVyIGlkZWEgb2YgaG93IHRoZSBuZXcgQUJJIGlzDQo+IHN1cHBvc2VkIHRvIHdvcmsuDQoNClN1 cmUuIG1vcmUgY29tbWVudHMgd2lsbCBiZSBhZGRlZCBpbiBhc3BlZWQtZXNwaS1pb2MuaCB0byBk ZXNjcmliZSB0aGUgdXNhZ2UgYW5kIHRoZSBwdXJwb3NlLg0KDQpUaGFua3MgZm9yIHlvdXIgZmVl ZGJhY2suDQoNCkNoaWF3ZWkNCg0K