All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Oltean <olteanv@gmail.com>
To: Michael Walle <michael@walle.cc>
Cc: Mark Brown <broonie@kernel.org>,
	linux-spi@vger.kernel.org, lkml <linux-kernel@vger.kernel.org>,
	Shawn Guo <shawnguo@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	devicetree@vger.kernel.org, Esben Haabendal <eha@deif.com>,
	angelo@sysam.it, andrew.smirnov@gmail.com,
	"Gustavo A. R. Silva" <gustavo@embeddedor.com>,
	Wei Chen <weic@nvidia.com>, Mohamed Hosny <mhosny@nvidia.com>,
	peng.ma@nxp.com
Subject: Re: [PATCH 0/6] NXP DSPI bugfixes and support for LS1028A
Date: Mon, 9 Mar 2020 20:14:50 +0200	[thread overview]
Message-ID: <CA+h21hrSezjwKJDCd1wN8qk5koWfPmwT0Mx+sR7fHxo1sCGcjw@mail.gmail.com> (raw)
In-Reply-To: <f530a0740f34b2cf26a8055d4eae2527@walle.cc>

On Mon, 9 Mar 2020 at 20:03, Michael Walle <michael@walle.cc> wrote:
> Am 2020-03-09 15:56, schrieb Vladimir Oltean:
> > From: Vladimir Oltean <vladimir.oltean@nxp.com>
> >
> > This series addresses a few issues that were missed during the previous
> > series "[PATCH 00/12] TCFQ to XSPI migration for NXP DSPI driver", on
> > SoCs other than LS1021A and LS1043A. DMA mode has been completely
> > broken
> > by that series, and XSPI mode never worked on little-endian
> > controllers.
> >
> > Then it introduces support for the LS1028A chip, whose compatible has
> > recently been documented here:
> >
> > https://lore.kernel.org/linux-devicetree/20200218171418.18297-1-michael@walle.cc/
>
> If it is not compatible with the LS1021A the second compatible string
> should be removed. Depending on the other remark about the endianess,
> it might still be compatible, though.
>

Please feel free to remove it. I wasn't actually planning to add it in
the first place, but now it that it's there it doesn't really bother
anybody either.

>
> > The device tree for the LS1028A SoC is extended with DMA channels
> > definition, such that even though the default operating mode is XSPI,
> > one can simply change DSPI_XSPI_MODE to DSPI_DMA_MODE in the
> > devtype_data structure of the driver and use that instead.
>
> wouldn't it make more sense, to use DMA is the dma node is present
> in the device tree? otherwise use XSPI mode? I don't think it is
> really handy to change the mode inside the driver.
>

Let's keep it simple. The driver should configure the hardware in the
most efficient and least buggy mode available. Right now that is XSPI.
The hardware description (aka the device tree) is a separate topic. If
there ever arises any situation where there are corner cases with XSPI
mode, it's good to have a fallback in the form of DMA mode, and not
have to worry about yet another problem (which is that there are 2
sets of device tree blobs in deployment).

TL;DR: These DMA channels don't really bother anybody but you never
know when they might come in handy.

> -michael
>
> >
> > For testing, benchmarking and debugging, the mikroBUS connector on the
> > LS1028A-RDB is made available via spidev.
> >
> > Vladimir Oltean (6):
> >   spi: spi-fsl-dspi: Don't access reserved fields in SPI_MCR
> >   spi: spi-fsl-dspi: Fix little endian access to PUSHR CMD and TXDATA
> >   spi: spi-fsl-dspi: Fix oper_word_size of zero for DMA mode
> >   spi: spi-fsl-dspi: Add support for LS1028A
> >   arm64: dts: ls1028a: Specify the DMA channels for the DSPI
> > controllers
> >   arm64: dts: ls1028a-rdb: Add a spidev node for the mikroBUS
> >
> >  .../boot/dts/freescale/fsl-ls1028a-rdb.dts    | 14 +++++
> >  .../arm64/boot/dts/freescale/fsl-ls1028a.dtsi |  6 +++
> >  drivers/spi/spi-fsl-dspi.c                    | 54 +++++++++++++++----
> >  3 files changed, 64 insertions(+), 10 deletions(-)

Thanks,
-Vladimir

WARNING: multiple messages have this Message-ID (diff)
From: Vladimir Oltean <olteanv-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Michael Walle <michael-QKn5cuLxLXY@public.gmane.org>
Cc: Mark Brown <broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	linux-spi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	lkml <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Shawn Guo <shawnguo-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Esben Haabendal <eha-/iRVSOupHO4@public.gmane.org>,
	angelo-BIYBQhTR83Y@public.gmane.org,
	andrew.smirnov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	"Gustavo A. R. Silva"
	<gustavo-L1vi/lXTdts+Va1GwOuvDg@public.gmane.org>,
	Wei Chen <weic-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	Mohamed Hosny <mhosny-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	peng.ma-3arQi8VN3Tc@public.gmane.org
Subject: Re: [PATCH 0/6] NXP DSPI bugfixes and support for LS1028A
Date: Mon, 9 Mar 2020 20:14:50 +0200	[thread overview]
Message-ID: <CA+h21hrSezjwKJDCd1wN8qk5koWfPmwT0Mx+sR7fHxo1sCGcjw@mail.gmail.com> (raw)
In-Reply-To: <f530a0740f34b2cf26a8055d4eae2527-QKn5cuLxLXY@public.gmane.org>

On Mon, 9 Mar 2020 at 20:03, Michael Walle <michael-QKn5cuLxLXY@public.gmane.org> wrote:
> Am 2020-03-09 15:56, schrieb Vladimir Oltean:
> > From: Vladimir Oltean <vladimir.oltean-3arQi8VN3Tc@public.gmane.org>
> >
> > This series addresses a few issues that were missed during the previous
> > series "[PATCH 00/12] TCFQ to XSPI migration for NXP DSPI driver", on
> > SoCs other than LS1021A and LS1043A. DMA mode has been completely
> > broken
> > by that series, and XSPI mode never worked on little-endian
> > controllers.
> >
> > Then it introduces support for the LS1028A chip, whose compatible has
> > recently been documented here:
> >
> > https://lore.kernel.org/linux-devicetree/20200218171418.18297-1-michael-QKn5cuLxLXY@public.gmane.org/
>
> If it is not compatible with the LS1021A the second compatible string
> should be removed. Depending on the other remark about the endianess,
> it might still be compatible, though.
>

Please feel free to remove it. I wasn't actually planning to add it in
the first place, but now it that it's there it doesn't really bother
anybody either.

>
> > The device tree for the LS1028A SoC is extended with DMA channels
> > definition, such that even though the default operating mode is XSPI,
> > one can simply change DSPI_XSPI_MODE to DSPI_DMA_MODE in the
> > devtype_data structure of the driver and use that instead.
>
> wouldn't it make more sense, to use DMA is the dma node is present
> in the device tree? otherwise use XSPI mode? I don't think it is
> really handy to change the mode inside the driver.
>

Let's keep it simple. The driver should configure the hardware in the
most efficient and least buggy mode available. Right now that is XSPI.
The hardware description (aka the device tree) is a separate topic. If
there ever arises any situation where there are corner cases with XSPI
mode, it's good to have a fallback in the form of DMA mode, and not
have to worry about yet another problem (which is that there are 2
sets of device tree blobs in deployment).

TL;DR: These DMA channels don't really bother anybody but you never
know when they might come in handy.

> -michael
>
> >
> > For testing, benchmarking and debugging, the mikroBUS connector on the
> > LS1028A-RDB is made available via spidev.
> >
> > Vladimir Oltean (6):
> >   spi: spi-fsl-dspi: Don't access reserved fields in SPI_MCR
> >   spi: spi-fsl-dspi: Fix little endian access to PUSHR CMD and TXDATA
> >   spi: spi-fsl-dspi: Fix oper_word_size of zero for DMA mode
> >   spi: spi-fsl-dspi: Add support for LS1028A
> >   arm64: dts: ls1028a: Specify the DMA channels for the DSPI
> > controllers
> >   arm64: dts: ls1028a-rdb: Add a spidev node for the mikroBUS
> >
> >  .../boot/dts/freescale/fsl-ls1028a-rdb.dts    | 14 +++++
> >  .../arm64/boot/dts/freescale/fsl-ls1028a.dtsi |  6 +++
> >  drivers/spi/spi-fsl-dspi.c                    | 54 +++++++++++++++----
> >  3 files changed, 64 insertions(+), 10 deletions(-)

Thanks,
-Vladimir

  reply	other threads:[~2020-03-09 18:15 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-09 14:56 [PATCH 0/6] NXP DSPI bugfixes and support for LS1028A Vladimir Oltean
2020-03-09 14:56 ` Vladimir Oltean
2020-03-09 14:56 ` [PATCH 1/6] spi: spi-fsl-dspi: Don't access reserved fields in SPI_MCR Vladimir Oltean
2020-03-09 18:05   ` Michael Walle
2020-03-09 18:05     ` Michael Walle
2020-03-09 18:09     ` Vladimir Oltean
2020-03-09 18:09       ` Vladimir Oltean
2020-03-09 14:56 ` [PATCH 2/6] spi: spi-fsl-dspi: Fix little endian access to PUSHR CMD and TXDATA Vladimir Oltean
2020-03-09 17:59   ` Michael Walle
2020-03-09 17:59     ` Michael Walle
2020-03-09 18:07     ` Vladimir Oltean
2020-03-09 18:07       ` Vladimir Oltean
2020-03-09 18:19       ` Michael Walle
2020-03-09 18:19         ` Michael Walle
2020-03-09 18:31         ` Vladimir Oltean
2020-03-09 18:31           ` Vladimir Oltean
2020-03-09 14:56 ` [PATCH 3/6] spi: spi-fsl-dspi: Fix oper_word_size of zero for DMA mode Vladimir Oltean
2020-03-09 14:56   ` Vladimir Oltean
2020-03-09 14:56 ` [PATCH 4/6] spi: spi-fsl-dspi: Add support for LS1028A Vladimir Oltean
2020-03-09 18:38   ` Michael Walle
2020-03-09 18:38     ` Michael Walle
2020-03-09 18:51     ` Vladimir Oltean
2020-03-09 18:51       ` Vladimir Oltean
2020-03-09 14:56 ` [PATCH 5/6] arm64: dts: ls1028a: Specify the DMA channels for the DSPI controllers Vladimir Oltean
2020-03-09 14:56   ` Vladimir Oltean
2020-03-09 19:06   ` Michael Walle
2020-03-09 19:06     ` Michael Walle
2020-03-09 19:59     ` Vladimir Oltean
2020-03-09 19:59       ` Vladimir Oltean
2020-03-09 20:17       ` Michael Walle
2020-03-09 14:56 ` [PATCH 6/6] arm64: dts: ls1028a-rdb: Add a spidev node for the mikroBUS Vladimir Oltean
2020-03-09 14:56   ` Vladimir Oltean
2020-03-09 18:35   ` Michael Walle
2020-03-09 18:35     ` Michael Walle
2020-03-09 18:50     ` Vladimir Oltean
2020-03-09 18:50       ` Vladimir Oltean
2020-03-09 18:58       ` Michael Walle
2020-03-09 18:58         ` Michael Walle
2020-03-09 18:03 ` [PATCH 0/6] NXP DSPI bugfixes and support for LS1028A Michael Walle
2020-03-09 18:03   ` Michael Walle
2020-03-09 18:14   ` Vladimir Oltean [this message]
2020-03-09 18:14     ` Vladimir Oltean
2020-03-09 18:31     ` Michael Walle
2020-03-09 18:48       ` Vladimir Oltean
2020-03-09 18:59         ` Michael Walle
2020-03-09 18:59           ` Michael Walle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+h21hrSezjwKJDCd1wN8qk5koWfPmwT0Mx+sR7fHxo1sCGcjw@mail.gmail.com \
    --to=olteanv@gmail.com \
    --cc=andrew.smirnov@gmail.com \
    --cc=angelo@sysam.it \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=eha@deif.com \
    --cc=gustavo@embeddedor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mhosny@nvidia.com \
    --cc=michael@walle.cc \
    --cc=peng.ma@nxp.com \
    --cc=robh+dt@kernel.org \
    --cc=shawnguo@kernel.org \
    --cc=weic@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.