Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp1196247imm; Wed, 26 Sep 2018 13:21:43 -0700 (PDT) X-Google-Smtp-Source: ACcGV62cJmUb5rhSuThgYxAhO99hCLWvdkp8RcZ1GxANrr1KbAN9w3G3oRW275xfkaMNO8eu6UF1 X-Received: by 2002:a17:902:bb96:: with SMTP id m22-v6mr7514542pls.117.1537993303785; Wed, 26 Sep 2018 13:21:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537993303; cv=none; d=google.com; s=arc-20160816; b=pjKpqAcxVTG9Kyi6itV9IJQbRq5gE9NrfJ6/T6JIGWkJnRaxmOSkTFaIFBRvkuWPM/ T7ofQ1oXOHnhURoqo98ZFCeL/iVPcFKmj+Eit25mBj2suFG2wz18XdREmYvkrKkidacN rRgVb70pQWQ3mhGUTrCvPvU5sXyobhB04AYIYhNiWKIqCEAUIlJilUVNWAo86i5VCEvH Jx+v00X6nPMQd2efnCr0VutLvxxZQeNENYKKOsSCVzQjivcC6FewBLJrtR/8uSF15anr qke3DVyabBybIlQnMR24f4KCP9DH13ByTuLkoQthrtwqrflCaPhWimUqbHm7IEPPgTNN DSyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=qKiV69SbqQyHr+eFmOQkreF+1GvupVhedHPU6YRRkEg=; b=Hyhjp5/RX7aUbwsfNNZxOINGzPPe0nCSX7dCAMq2Vo1PZH85eRcp7kT4+gy6bzQo6+ YlPY4+tJYDIIq8cY28KbT7jrfWstWG1Nc6zgJOc2M9mWLW23RsYO92es3ggES6uBW1QS zlgncQr3VA7UNtvyPBT1Eiu3Vi3bsMU2qugB5/luXJv8VbUQM9ueVL5OF6sg/K16BevS /UofotxO7DY19tjpubWkHYBht2zMppYsytOPK2qQl3vUrujRUG3E7WHUri1vj9XyFMJI TQr2PLNcNQlN1Kd8cQhbVIyvH0A+9Qnslq8Mp2nsDs/iAG/9SpP6aCwo2GgQKhLdIBsP d9Fw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z138-v6si5954960pfc.181.2018.09.26.13.21.28; Wed, 26 Sep 2018 13:21:43 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726877AbeI0Cfx (ORCPT + 99 others); Wed, 26 Sep 2018 22:35:53 -0400 Received: from mail-ot1-f68.google.com ([209.85.210.68]:42948 "EHLO mail-ot1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726431AbeI0Cfx (ORCPT ); Wed, 26 Sep 2018 22:35:53 -0400 Received: by mail-ot1-f68.google.com with SMTP id h26-v6so261926otl.9; Wed, 26 Sep 2018 13:21:13 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=qKiV69SbqQyHr+eFmOQkreF+1GvupVhedHPU6YRRkEg=; b=XHc7DQHnw1uQ2UQpM1xjIP5uy5Rc652iG+UNQrwIAuEKLMGweL8G/IhjwCrMIZbVa1 9eneFFlWFtbHjQQ9d1FY5EFNHUzamz9wFPNJOqVGz2LvFOkXQXDKCJwAHaTFBv0yw5pO lhE+jwdidNEZe5zUhSitIf6ltZcK6WwWh5sUrtMJ1gDxGmS66i5oqB+AfFIaywa5DN3X UEJmg06SPkkcehrMWHF++LEgIs1mNQtQS81L/Y84r5D1MfbZwVfG4iFnEzjL05/m2Lf0 +7bfhf8O9DhsJ77K6Orcaw3i3+BBCNyMyDY1QWjuLpnYlR266tQ/gCgxO//D3wUvQuuC 0PzQ== X-Gm-Message-State: ABuFfojCWCn7QEjyUG5dmhS5retBddm7+C3/NwKDQmt3GnluCgQw8NUT LSyHjodqQsj72Ughp9c9xQ== X-Received: by 2002:a9d:518c:: with SMTP id y12-v6mr5579200otg.252.1537993273385; Wed, 26 Sep 2018 13:21:13 -0700 (PDT) Received: from localhost (24-155-109-49.dyn.grandenetworks.net. [24.155.109.49]) by smtp.gmail.com with ESMTPSA id 89-v6sm2222276ots.72.2018.09.26.13.21.12 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 26 Sep 2018 13:21:12 -0700 (PDT) Date: Wed, 26 Sep 2018 15:21:12 -0500 From: Rob Herring To: Pierre-Yves MORDRET Cc: Vinod Koul , Mark Rutland , Alexandre Torgue , Maxime Coquelin , Dan Williams , devicetree@vger.kernel.org, dmaengine@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v1 1/7] dt-bindings: stm32-dma: Add DMA/MDMA chaining support bindings Message-ID: <20180926202112.GA6426@bogus> References: <1536650820-16076-1-git-send-email-pierre-yves.mordret@st.com> <1536650820-16076-2-git-send-email-pierre-yves.mordret@st.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1536650820-16076-2-git-send-email-pierre-yves.mordret@st.com> User-Agent: Mutt/1.9.4 (2018-02-28) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Sep 11, 2018 at 09:26:54AM +0200, Pierre-Yves MORDRET wrote: > This patch adds dma bindings to support DMA/MDMA chaining transfer. > 1 bit is to manage both DMA FIFO Threshold > 1 bit is to manage DMA/MDMA Chaining features. > 2 bits are used to specify SDRAM size to use for DMA/MDMA chaining. > The size in bytes of a certain order is given by the formula: > (2 ^ order) * PAGE_SIZE. > The order is given by those 2 bits. > For cyclic, whether chaining is chosen, any value above 1 can be set : > SRAM buffer size will rely on period size and not on this DT value. > > Signed-off-by: Pierre-Yves MORDRET > --- > Version history: > v1: > * Initial > --- > --- > .../devicetree/bindings/dma/stm32-dma.txt | 32 +++++++++++++++++++--- > 1 file changed, 28 insertions(+), 4 deletions(-) > > diff --git a/Documentation/devicetree/bindings/dma/stm32-dma.txt b/Documentation/devicetree/bindings/dma/stm32-dma.txt > index c5f5190..163be09 100644 > --- a/Documentation/devicetree/bindings/dma/stm32-dma.txt > +++ b/Documentation/devicetree/bindings/dma/stm32-dma.txt > @@ -17,6 +17,12 @@ Optional properties: > - resets: Reference to a reset controller asserting the DMA controller > - st,mem2mem: boolean; if defined, it indicates that the controller supports > memory-to-memory transfer > +- dmas: A list of eight dma specifiers, one for each entry in dma-names. > + Refer to stm32-mdma.txt for more details. > +- dma-names: should contain "ch0", "ch1", "ch2", "ch3", "ch4", "ch5", "ch6" and > + "ch7" and represents each STM32 DMA channel connected to a STM32 MDMA one. > +- memory-region : phandle to a node describing memory to be used for > + M2M intermediate transfer between DMA and MDMA. > > Example: > > @@ -36,6 +42,16 @@ Example: > st,mem2mem; > resets = <&rcc 150>; > dma-requests = <8>; > + dmas = <&mdma1 8 0x10 0x1200000a 0x40026408 0x00000020 1>, > + <&mdma1 9 0x10 0x1200000a 0x40026408 0x00000800 1>, > + <&mdma1 10 0x10 0x1200000a 0x40026408 0x00200000 1>, > + <&mdma1 11 0x10 0x1200000a 0x40026408 0x08000000 1>, > + <&mdma1 12 0x10 0x1200000a 0x4002640C 0x00000020 1>, > + <&mdma1 13 0x10 0x1200000a 0x4002640C 0x00000800 1>, > + <&mdma1 14 0x10 0x1200000a 0x4002640C 0x00200000 1>, > + <&mdma1 15 0x10 0x1200000a 0x4002640C 0x08000000 1>; > + dma-names = "ch0", "ch1", "ch2", "ch3", "ch4", "ch5", "ch6", "ch7"; > + memory-region = <&sram_dmapool>; > }; > > * DMA client > @@ -62,13 +78,21 @@ channel: a phandle to the DMA controller plus the following four integer cells: > 0x1: medium > 0x2: high > 0x3: very high > -4. A 32bit bitfield value specifying DMA features which are device dependent: > +4. A bitfield value specifying DMA features which are device dependent: It's still a 32-bit value, right? > -bit 0-1: DMA FIFO threshold selection > 0x0: 1/4 full FIFO > 0x1: 1/2 full FIFO > 0x2: 3/4 full FIFO > 0x3: full FIFO > - > + -bit 2: Intermediate M2M transfer from/to DDR to/from SRAM throughout MDMA > + 0: MDMA not used to generate an intermediate M2M transfer > + 1: MDMA used to generate an intermediate M2M transfer. > + -bit 3-4: indicated SRAM Buffer size in (2^order)*PAGE_SIZE. What's PAGE_SIZE? That's not defined for DT. > + Order is given by those 2 bits starting at 0. > + Valid only whether Intermediate M2M transfer is set. > + For cyclic, whether Intermediate M2M transfer is chosen, any value can > + be set: SRAM buffer size will rely on period size and not on this DT > + value. > > Example: > > @@ -77,7 +101,7 @@ Example: > reg = <0x40011000 0x400>; > interrupts = <37>; > clocks = <&clk_pclk2>; > - dmas = <&dma2 2 4 0x10400 0x3>, > - <&dma2 7 5 0x10200 0x3>; > + dmas = <&dma2 2 4 0x10400 0x1>, > + <&dma2 7 5 0x10200 0x1>; > dma-names = "rx", "tx"; > }; > -- > 2.7.4 >