[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201109190416.GF32650@earth.li>
Date: Mon, 9 Nov 2020 19:04:16 +0000
From: Jonathan McDowell <noodles@...th.li>
To: Vinod Koul <vkoul@...nel.org>
Cc: Andy Gross <agross@...nel.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Dan Williams <dan.j.williams@...el.com>,
Philipp Zabel <p.zabel@...gutronix.de>,
Thomas Pedersen <twp@...eaurora.org>,
linux-kernel@...r.kernel.org, linux-arm-msm@...r.kernel.org,
dmaengine@...r.kernel.org
Subject: Re: [PATCH v4] dmaengine: qcom: Add ADM driver
On Mon, Nov 09, 2020 at 05:11:21PM +0530, Vinod Koul wrote:
> HI Jonathan,
>
> On 23-09-20, 20:40, Jonathan McDowell wrote:
> > Add the DMA engine driver for the QCOM Application Data Mover (ADM) DMA
> > controller found in the MSM8x60 and IPQ/APQ8064 platforms.
>
> Mostly it looks good, some nitpicks
>
> > The ADM supports both memory to memory transactions and memory
> > to/from peripheral device transactions. The controller also provides
> > flow control capabilities for transactions to/from peripheral devices.
> >
> > The initial release of this driver supports slave transfers to/from
> > peripherals and also incorporates CRCI (client rate control interface)
> > flow control.
>
> Can you also convert the binding from txt to yaml?
Seems like that can be a separate patch, but sure, I'll give it a whirl.
> > diff --git a/drivers/dma/qcom/Kconfig b/drivers/dma/qcom/Kconfig
> > index 3bcb689162c6..0389d60d2604 100644
> > --- a/drivers/dma/qcom/Kconfig
> > +++ b/drivers/dma/qcom/Kconfig
> > @@ -1,4 +1,15 @@
> > # SPDX-License-Identifier: GPL-2.0-only
> > +config QCOM_ADM
> > + tristate "Qualcomm ADM support"
> > + depends on (ARCH_QCOM || COMPILE_TEST) && !PHYS_ADDR_T_64BIT
>
> why !PHYS_ADDR_T_64BIT ..?
The hardware only supports a 32 bit physical address, so specifying
!PHYS_ADDR_T_64BIT gives maximum COMPILE_TEST coverage without having to
spend effort on kludging things in the code that will never actually be
needed on real hardware.
> > + select DMA_ENGINE
> > + select DMA_VIRTUAL_CHANNELS
> > + help
> > + Enable support for the Qualcomm Application Data Mover (ADM) DMA
> > + controller, as present on MSM8x60, APQ8064, and IPQ8064 devices.
> > + This controller provides DMA capabilities for both general purpose
> > + and on-chip peripheral devices.
>
> > +static const struct of_device_id adm_of_match[] = {
> > + { .compatible = "qcom,adm", },
>
> I know we have merged the binding, but should we not have a soc specific
> compatible?
Which soc? Looking at the other QCOM DMA drivers they mostly have
versioned compatibles and I can't find any indication there are multiple
variants of this block out there.
J.
--
Web [ Every program is either trivial or it contains at least one ]
site: https:// [ bug. ] Made by
www.earth.li/~noodles/ [ ] HuggieTag 0.0.24
Powered by blists - more mailing lists