Re: [PATCH v12 3/3] dt-bindings: mfd: Document Renesas R-Car Gen3 RPC-IF MFD bindings

From: Lee Jones
Date: Wed May 08 2019 - 02:12:25 EST


On Wed, 08 May 2019, Marek Vasut wrote:

> On 5/8/19 4:48 AM, masonccyang@xxxxxxxxxxx wrote:
> > Hi Jones,
> >
> >> "Lee Jones" <lee.jones@xxxxxxxxxx>
> >> 2019/05/07 äå 08:58
> >>
> >> To
> >>
> >> "Marek Vasut" <marek.vasut@xxxxxxxxx>,
> >>
> >> cc
> >>
> >> "Rob Herring" <robh@xxxxxxxxxx>, "Mason Yang"
> >> <masonccyang@xxxxxxxxxxx>, broonie@xxxxxxxxxx, linux-
> >> kernel@xxxxxxxxxxxxxxx, linux-spi@xxxxxxxxxxxxxxx,
> >> bbrezillon@xxxxxxxxxx, linux-renesas-soc@xxxxxxxxxxxxxxx, "Geert
> >> Uytterhoeven" <geert+renesas@xxxxxxxxx>,
> >> sergei.shtylyov@xxxxxxxxxxxxxxxxxx, mark.rutland@xxxxxxx,
> >> devicetree@xxxxxxxxxxxxxxx, juliensu@xxxxxxxxxxx, "Simon Horman"
> >> <horms@xxxxxxxxxxxx>, zhengxunli@xxxxxxxxxxx
> >>
> >> Subject
> >>
> >> Re: [PATCH v12 3/3] dt-bindings: mfd: Document Renesas R-Car Gen3
> >> RPC-IF MFD bindings
> >>
> >> On Wed, 24 Apr 2019, Marek Vasut wrote:
> >>
> >> > On 4/24/19 11:23 PM, Rob Herring wrote:
> >> > > On Wed, Apr 24, 2019 at 03:55:36PM +0800, Mason Yang wrote:
> >> > >> Document the bindings used by the Renesas R-Car Gen3 RPC-IF MFD.
> >> > >>
> >> > >> Signed-off-by: Mason Yang <masonccyang@xxxxxxxxxxx>
> >> > >> ---
> >> > >> Â.../devicetree/bindings/mfd/mfd-renesas-rpc.txt  Â| 40 ++++++
> >> ++++++++++++++++
> >> > >> Â1 file changed, 40 insertions(+)
> >> > >> Âcreate mode 100644 Documentation/devicetree/bindings/mfd/mfd-
> >> renesas-rpc.txt
> >> > >>
> >> > >> diff --git a/Documentation/devicetree/bindings/mfd/mfd-renesas-
> >> rpc.txt b/Documentation/devicetree/bindings/mfd/mfd-renesas-rpc.txt
> >> > >> new file mode 100644
> >> > >> index 0000000..668b822
> >> > >> --- /dev/null
> >> > >> +++ b/Documentation/devicetree/bindings/mfd/mfd-renesas-rpc.txt
> >> > >> @@ -0,0 +1,40 @@
> >> > >> +Renesas R-Car Gen3 RPC-IF MFD Device Tree Bindings
> >> > >> +--------------------------------------------------
> >> > >
> >> > > Looks like a SPI flash controller from the example. What makes it an
> >> > > MFD?
> >> >
> >> > It supports both SPI NOR and HyperFlash (CFI-compliant flash with
> >> > different bus interface).
> >>
> >> Looks like you're registering one OR the other.
> >>
> >> Why don't you just do this from DT?
> >>
> >> No reason for this to be an MFD IMHO.
> >
> >
> > okay, I will patch it back to SPI mode only.
>
> I don't think that's what Lee meant . The controller supports _both_
> modes , hence it would have the same compatible string. You just need to
> extract the mode of operation from the DT.

HiSilicon attempted to upstream something similar, only their
controller provided NAND and NOR functionality. They used different
compatible strings to differentiate between the varying
technologies.

They too tried to use MFD as a means to select between them (which was
also NACKed). Not sure what they ended up doing, but the original
submission and (half of) the conversation can be found at [0]. Some
more of the thread continues at [1].

Hope that helps.

[0] https://groups.google.com/forum/#!topic/fa.linux.kernel/F6i9o8sfOIw
[1] https://marc.info/?l=devicetree&m=147669165104431&w=2

--
Lee Jones [æçæ]
Linaro Services Technical Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog