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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A1927C7EE2D for ; Wed, 1 Mar 2023 03:23:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229527AbjCADXm (ORCPT ); Tue, 28 Feb 2023 22:23:42 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:32880 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229633AbjCADXk (ORCPT ); Tue, 28 Feb 2023 22:23:40 -0500 Received: from codeconstruct.com.au (pi.codeconstruct.com.au [203.29.241.158]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 291741557D; Tue, 28 Feb 2023 19:23:38 -0800 (PST) Received: from pecola.lan (unknown [159.196.93.152]) by mail.codeconstruct.com.au (Postfix) with ESMTPSA id B7FAF2003E; Wed, 1 Mar 2023 11:23:33 +0800 (AWST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=codeconstruct.com.au; s=2022a; t=1677641016; bh=IZsgVb8ZtIZq1XVBi515jr/CvL6YVLvbvd3LsvrHoaE=; h=Subject:From:To:Date:In-Reply-To:References; b=EFXUbuSeAez/QolDnTxDb614EnfQLrdARAaohwkNDRkO3nIx8ogpQL9LCq11oPeYD nWYH3tggxG0vVHVvASY836WVG22+I/SS8wFLjxB8EnNoiMeIbJ0zCkyxSvNkl0eRlD T9mk1HDFnHiCOtX+9P8TqDFdzZ5vIu5WYLWHvvXGrKbpKBl4V7ewlpBLr2BdORnUsw L8FWMT8VjY2yV4nvGaaFY0+X32eGNq8YhI19cliwEMM885RO7/amjiTp+DlNtbQDGq i2gQvni+P5YR/dKi/XL/LMHeb2++aqojE/1iAkrJmXQEQ2lieiRgcpvB1PVnbjYxSV J/nF2XVXYWKbw== Message-ID: Subject: Re: [PATCH v6 1/2] dt-bindings: i2c: aspeed: support for AST2600-i2cv2 From: Jeremy Kerr To: Ryan Chen , Andrew Jeffery , Brendan Higgins , Benjamin Herrenschmidt , Joel Stanley , Rob Herring , Krzysztof Kozlowski , Philipp Zabel , "linux-i2c@vger.kernel.org" , "openbmc@lists.ozlabs.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-aspeed@lists.ozlabs.org" , "linux-kernel@vger.kernel.org" Date: Wed, 01 Mar 2023 11:23:33 +0800 In-Reply-To: References: <20230226031321.3126756-1-ryan_chen@aspeedtech.com> <20230226031321.3126756-2-ryan_chen@aspeedtech.com> <8999ef4a57b035a81b086d8732d119638d46968c.camel@codeconstruct.com.au> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.46.3-1 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Ryan, > Sorry, Do you mean add in description like following?? > =C2=A0 aspeed,xfer-mode: > =C2=A0=C2=A0=C2=A0 description: | > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 I2C bus transfer mode selection. > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ERRATA "I2C DMA fa= ils when DRAM bus is busy and it can not > take DMA write data > Immediately", only 1 i2c bus can be enable for DMA mode. > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - "byte": I2C bus byte transfer mode. > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - "buffered": I2C bus buffer register tran= sfer mode. > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - "dma": I2C bus dma transfer mode (defaul= t) I would suggest putting some background about the transfer mode as a top-level description in the binding. There has been a lot of discussion here on why the binding specifies the transfer mode; it would be useful (for future readers) to have a bit of context on what modes they should use. Perhaps something like: description: | [general binding description] ASPEED ast2600 platforms have a number of i2c controllers, and share = a single DMA engine between the set. DTSes can specify the mode of data transfer to/from the device - either DMA or programmed I/O - but hardware limitations may require a DTS to manually allocate which controller can use DMA mode; the enable-dma property allows control o= f this. In cases where one the hardware design results in a specific controller handling a larger amount of data, a DTS would likely allocate DMA mode for that one controller. - adjusted for whatever property interface we settle on here, of course. > > So, it sounds like: > >=20 > > =C2=A0- there's no point in using byte mode, as buffer mode provides > > =C2=A0=C2=A0 equivalent functionality with fewer drawbacks (ie, less in= terrupt > > =C2=A0=C2=A0 load) > >=20 > > =C2=A0- this just leaves the dma and buffer modes > >=20 > > =C2=A0- only one controller can use dma mode > >=20 > > So: how about just a single boolean property to indicate "use DMA > > on this controller"? Something like aspeed,enable-dma? Or if DT binding > > experts can suggest something common that might be more suitable? >=20 > If so, just leave enable-dma and only support for buffer mode and dma > mode, am I right? Yes, from what you have said so far, I think just a single switch between DMA / not-DMA is all you need here (unless there is any time that byte mode is preferable?) If there is already an existing DT convention for indicating/enabling DMA capability, I would suggest using that. Otherwise, just a boolean flag with a sensible name would seem to work fine. The DT experts probably have a good idea of what works best here :) Cheers, Jeremy 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 7A8F2C7EE23 for ; Wed, 1 Mar 2023 03:24:52 +0000 (UTC) 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:References:In-Reply-To: Date:To:From:Subject:Message-ID:Reply-To:Cc:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=zLibR2DJx+1yOPlZ9uyxawE1fXKGnc0Ehb/czYiSBlI=; b=tstzxsWhQIz3Fy IDVizD2QoGOxAzH+VEtvThKQbqWlBMHzmL2EdPWH7M7c4MnICP3MzEO+NAn+Up+yfcA8Kjpb+sWbf KLEA1AiyYW4AhJoasy3vry+olo6EFiyUuE8LfovS0xP+iVIp1lI9Dz4d5U8bwYc4vwXKByy99Mt49 a6Hn/mi6pEkXrr0eegn6gnUMFwxkSuJTqRHx+TGbTS14QF30pscZ+rqF4z4b+5xgOP/3pgBVoaPLq DAcbeWxPPoX7X+/yL5xmUZ+eSgw8IZWA0UnbWDIeVpuGfpFJLGcizzuRPSjEgdO7a7oI/9OrSdSfh Lv/d3XhWW2raoOx84ntw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pXD4H-00F1EN-7p; Wed, 01 Mar 2023 03:23:49 +0000 Received: from pi.codeconstruct.com.au ([203.29.241.158] helo=codeconstruct.com.au) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pXD4D-00F1DF-Js for linux-arm-kernel@lists.infradead.org; Wed, 01 Mar 2023 03:23:47 +0000 Received: from pecola.lan (unknown [159.196.93.152]) by mail.codeconstruct.com.au (Postfix) with ESMTPSA id B7FAF2003E; Wed, 1 Mar 2023 11:23:33 +0800 (AWST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=codeconstruct.com.au; s=2022a; t=1677641016; bh=IZsgVb8ZtIZq1XVBi515jr/CvL6YVLvbvd3LsvrHoaE=; h=Subject:From:To:Date:In-Reply-To:References; b=EFXUbuSeAez/QolDnTxDb614EnfQLrdARAaohwkNDRkO3nIx8ogpQL9LCq11oPeYD nWYH3tggxG0vVHVvASY836WVG22+I/SS8wFLjxB8EnNoiMeIbJ0zCkyxSvNkl0eRlD T9mk1HDFnHiCOtX+9P8TqDFdzZ5vIu5WYLWHvvXGrKbpKBl4V7ewlpBLr2BdORnUsw L8FWMT8VjY2yV4nvGaaFY0+X32eGNq8YhI19cliwEMM885RO7/amjiTp+DlNtbQDGq i2gQvni+P5YR/dKi/XL/LMHeb2++aqojE/1iAkrJmXQEQ2lieiRgcpvB1PVnbjYxSV J/nF2XVXYWKbw== Message-ID: Subject: Re: [PATCH v6 1/2] dt-bindings: i2c: aspeed: support for AST2600-i2cv2 From: Jeremy Kerr To: Ryan Chen , Andrew Jeffery , Brendan Higgins , Benjamin Herrenschmidt , Joel Stanley , Rob Herring , Krzysztof Kozlowski , Philipp Zabel , "linux-i2c@vger.kernel.org" , "openbmc@lists.ozlabs.org" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-aspeed@lists.ozlabs.org" , "linux-kernel@vger.kernel.org" Date: Wed, 01 Mar 2023 11:23:33 +0800 In-Reply-To: References: <20230226031321.3126756-1-ryan_chen@aspeedtech.com> <20230226031321.3126756-2-ryan_chen@aspeedtech.com> <8999ef4a57b035a81b086d8732d119638d46968c.camel@codeconstruct.com.au> User-Agent: Evolution 3.46.3-1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230228_192345_887909_032B805C X-CRM114-Status: GOOD ( 19.22 ) 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="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgUnlhbiwKCj4gU29ycnksIERvIHlvdSBtZWFuIGFkZCBpbiBkZXNjcmlwdGlvbiBsaWtlIGZv bGxvd2luZz8/Cj4gwqAgYXNwZWVkLHhmZXItbW9kZToKPiDCoMKgwqAgZGVzY3JpcHRpb246IHwK PiDCoMKgwqDCoMKgIEkyQyBidXMgdHJhbnNmZXIgbW9kZSBzZWxlY3Rpb24uCj4gwqDCoMKgwqDC oMKgwqDCoMKgIEVSUkFUQSAiSTJDIERNQSBmYWlscyB3aGVuIERSQU0gYnVzIGlzIGJ1c3kgYW5k IGl0IGNhbiBub3QKPiB0YWtlIERNQSB3cml0ZSBkYXRhCj4gSW1tZWRpYXRlbHkiLCBvbmx5IDEg aTJjIGJ1cyBjYW4gYmUgZW5hYmxlIGZvciBETUEgbW9kZS4KPiDCoMKgwqDCoMKgIC0gImJ5dGUi OiBJMkMgYnVzIGJ5dGUgdHJhbnNmZXIgbW9kZS4KPiDCoMKgwqDCoMKgIC0gImJ1ZmZlcmVkIjog STJDIGJ1cyBidWZmZXIgcmVnaXN0ZXIgdHJhbnNmZXIgbW9kZS4KPiDCoMKgwqDCoMKgIC0gImRt YSI6IEkyQyBidXMgZG1hIHRyYW5zZmVyIG1vZGUgKGRlZmF1bHQpCgpJIHdvdWxkIHN1Z2dlc3Qg cHV0dGluZyBzb21lIGJhY2tncm91bmQgYWJvdXQgdGhlIHRyYW5zZmVyIG1vZGUgYXMgYQp0b3At bGV2ZWwgZGVzY3JpcHRpb24gaW4gdGhlIGJpbmRpbmcuCgpUaGVyZSBoYXMgYmVlbiBhIGxvdCBv ZiBkaXNjdXNzaW9uIGhlcmUgb24gd2h5IHRoZSBiaW5kaW5nIHNwZWNpZmllcwp0aGUgdHJhbnNm ZXIgbW9kZTsgaXQgd291bGQgYmUgdXNlZnVsIChmb3IgZnV0dXJlIHJlYWRlcnMpIHRvIGhhdmUg YQpiaXQgb2YgY29udGV4dCBvbiB3aGF0IG1vZGVzIHRoZXkgc2hvdWxkIHVzZS4KClBlcmhhcHMg c29tZXRoaW5nIGxpa2U6CgogICAgZGVzY3JpcHRpb246IHwKICAgICAgW2dlbmVyYWwgYmluZGlu ZyBkZXNjcmlwdGlvbl0KCiAgICAgIEFTUEVFRCBhc3QyNjAwIHBsYXRmb3JtcyBoYXZlIGEgbnVt YmVyIG9mIGkyYyBjb250cm9sbGVycywgYW5kIHNoYXJlIGEKICAgICAgc2luZ2xlIERNQSBlbmdp bmUgYmV0d2VlbiB0aGUgc2V0LiBEVFNlcyBjYW4gc3BlY2lmeSB0aGUgbW9kZSBvZiBkYXRhCiAg ICAgIHRyYW5zZmVyIHRvL2Zyb20gdGhlIGRldmljZSAtIGVpdGhlciBETUEgb3IgcHJvZ3JhbW1l ZCBJL08gLSBidXQKICAgICAgaGFyZHdhcmUgbGltaXRhdGlvbnMgbWF5IHJlcXVpcmUgYSBEVFMg dG8gbWFudWFsbHkgYWxsb2NhdGUgd2hpY2gKICAgICAgY29udHJvbGxlciBjYW4gdXNlIERNQSBt b2RlOyB0aGUgZW5hYmxlLWRtYSBwcm9wZXJ0eSBhbGxvd3MgY29udHJvbCBvZgogICAgICB0aGlz LgoKICAgICAgSW4gY2FzZXMgd2hlcmUgb25lIHRoZSBoYXJkd2FyZSBkZXNpZ24gcmVzdWx0cyBp biBhIHNwZWNpZmljCiAgICAgIGNvbnRyb2xsZXIgaGFuZGxpbmcgYSBsYXJnZXIgYW1vdW50IG9m IGRhdGEsIGEgRFRTIHdvdWxkIGxpa2VseQogICAgICBhbGxvY2F0ZSBETUEgbW9kZSBmb3IgdGhh dCBvbmUgY29udHJvbGxlci4KCi0gYWRqdXN0ZWQgZm9yIHdoYXRldmVyIHByb3BlcnR5IGludGVy ZmFjZSB3ZSBzZXR0bGUgb24gaGVyZSwgb2YgY291cnNlLgoKPiA+IFNvLCBpdCBzb3VuZHMgbGlr ZToKPiA+IAo+ID4gwqAtIHRoZXJlJ3Mgbm8gcG9pbnQgaW4gdXNpbmcgYnl0ZSBtb2RlLCBhcyBi dWZmZXIgbW9kZSBwcm92aWRlcwo+ID4gwqDCoCBlcXVpdmFsZW50IGZ1bmN0aW9uYWxpdHkgd2l0 aCBmZXdlciBkcmF3YmFja3MgKGllLCBsZXNzIGludGVycnVwdAo+ID4gwqDCoCBsb2FkKQo+ID4g Cj4gPiDCoC0gdGhpcyBqdXN0IGxlYXZlcyB0aGUgZG1hIGFuZCBidWZmZXIgbW9kZXMKPiA+IAo+ ID4gwqAtIG9ubHkgb25lIGNvbnRyb2xsZXIgY2FuIHVzZSBkbWEgbW9kZQo+ID4gCj4gPiBTbzog aG93IGFib3V0IGp1c3QgYSBzaW5nbGUgYm9vbGVhbiBwcm9wZXJ0eSB0byBpbmRpY2F0ZSAidXNl IERNQQo+ID4gb24gdGhpcyBjb250cm9sbGVyIj8gU29tZXRoaW5nIGxpa2UgYXNwZWVkLGVuYWJs ZS1kbWE/IE9yIGlmIERUIGJpbmRpbmcKPiA+IGV4cGVydHMgY2FuIHN1Z2dlc3Qgc29tZXRoaW5n IGNvbW1vbiB0aGF0IG1pZ2h0IGJlIG1vcmUgc3VpdGFibGU/Cj4gCj4gSWYgc28sIGp1c3QgbGVh dmUgZW5hYmxlLWRtYSBhbmQgb25seSBzdXBwb3J0IGZvciBidWZmZXIgbW9kZSBhbmQgZG1hCj4g bW9kZSwgYW0gSSByaWdodD8KClllcywgZnJvbSB3aGF0IHlvdSBoYXZlIHNhaWQgc28gZmFyLCBJ IHRoaW5rIGp1c3QgYSBzaW5nbGUgc3dpdGNoCmJldHdlZW4gRE1BIC8gbm90LURNQSBpcyBhbGwg eW91IG5lZWQgaGVyZSAodW5sZXNzIHRoZXJlIGlzIGFueSB0aW1lCnRoYXQgYnl0ZSBtb2RlIGlz IHByZWZlcmFibGU/KQoKSWYgdGhlcmUgaXMgYWxyZWFkeSBhbiBleGlzdGluZyBEVCBjb252ZW50 aW9uIGZvciBpbmRpY2F0aW5nL2VuYWJsaW5nCkRNQSBjYXBhYmlsaXR5LCBJIHdvdWxkIHN1Z2dl c3QgdXNpbmcgdGhhdC4gT3RoZXJ3aXNlLCBqdXN0IGEgYm9vbGVhbgpmbGFnIHdpdGggYSBzZW5z aWJsZSBuYW1lIHdvdWxkIHNlZW0gdG8gd29yayBmaW5lLiBUaGUgRFQgZXhwZXJ0cwpwcm9iYWJs eSBoYXZlIGEgZ29vZCBpZGVhIG9mIHdoYXQgd29ya3MgYmVzdCBoZXJlIDopCgpDaGVlcnMsCgoK SmVyZW15CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwps aW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJh ZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51 eC1hcm0ta2VybmVsCg==