Re: [LINUX PATCH v10 1/2] dt-bindings: mtd: arasan: Add device tree binding documentation

From: Boris Brezillon
Date: Tue Aug 21 2018 - 01:59:56 EST


On Tue, 21 Aug 2018 05:47:18 +0000
Naga Sureshkumar Relli <nagasure@xxxxxxxxxx> wrote:

> > > +Required properties:
> > > +- compatible: Should be "xlnx,zynqmp-nand" or "arasan,nfc-v3p10"
> >
> > In your example it's not an "or" since both are defined.
> In our previous discussion (https://lore.kernel.org/patchwork/patch/748901/)
> We decided to have compatible strings like " compatible = "<soc-vendor>,<ip-revision>", "arasan,<ip-revision>";"
> So it should be either of these.
> so I will write something like below
> "Possible values are "xlnx,zynqmp-nand"
> "arasan,nfc-v3p10"
> And in example I will mention any one compatible.
> Is it ok?

Hm, why do you need arasan,nfc-v3p10 at all if it's supposed to be
overloaded by a soc specific compat?

> > > +
> > > +Optional properties:
> > > +- arasan,has-mdma: Enables DMA support
> >
> > Can't you detect that based on the compatible (or thanks to a register). If it's something you
> > choose when configuring the IP and can't detect at runtime I guess it's fine.
> There is no way to select DMA when configuring the IP.
> But it has internal DMA and there is a register to select PIO or DMA while starting a transfer.
> So if user really don't want DMA, then we will never set DMA in the code based on DT property.

If it's a purely SW choice, then is shouldn't be described in the DT.
You can use a module param, but I'm not even sure why one would want to
disable DMA.