mbox series

[v2,0/3] Add multi mode support for omap-mcspi

Message ID 20240223-spi-omap2-mcspi-multi-mode-v2-0-afe94476b9c3@bootlin.com (mailing list archive)
Headers show
Series Add multi mode support for omap-mcspi | expand

Message

Louis Chauvet Feb. 23, 2024, 9:32 a.m. UTC
This series adds the support for the omap-mcspi multi mode which allows
sending SPI messages with a shorter delay between CS and the message.

One drawback of the multi-mode is that the CS is raised between each word, 
so it can only be used with messages containing 1 word transfers and 
asking for cs_change. Few devices, like FPGAs, may easily workaround this 
limitation.

The first patch removes the current implementation, which is working, but 
don't comply with what is asked in the spi transfer (The CS is raised by 
the hardware regardless of cs_change state). No drivers or board file use this 
implementation upstream.

The second patch adds the implementation of the multi-mode, which complies 
with what is asked in the SPI message.

The third patch is the suggested optimization for using MULTI mode in more 
situations.

Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
---
Changes in v2:
- Updated the commit line for the first patch to use the correct format;
- Updated the commit message for the second patch, adding precision on how
  the controler works;
- Added the suggestion from Mark Brown to merge multiple transfers word 
  into one when applicable;
- Link to v1: https://lore.kernel.org/r/20240126-spi-omap2-mcspi-multi-mode-v1-0-d143d33f0fe0@bootlin.com

---
Louis Chauvet (3):
      spi: spi-omap2-mcspi.c: revert "Toggle CS after each word"
      spi: omap2-mcspi: Add support for MULTI-mode
      spi: omap2-mcpsi: Enable MULTI-mode in more situations

 drivers/spi/spi-omap2-mcspi.c                 | 96 +++++++++++++++++++++------
 include/linux/platform_data/spi-omap2-mcspi.h |  3 -
 2 files changed, 75 insertions(+), 24 deletions(-)
---
base-commit: 41bccc98fb7931d63d03f326a746ac4d429c1dd3
change-id: 20240126-spi-omap2-mcspi-multi-mode-e62f68b78ad3

Best regards,

Comments

Louis Chauvet March 14, 2024, 1:56 p.m. UTC | #1
Hello Mark,

Given how far we already are in the current cycle I suppose this series 
will only be considered after -rc1, will you want me to re-send or will 
it stay on your stack? I know some maintainers prefer contributors to 
re-send and others don't, so let met know what suits best your workflow.

Thanks!
Louis

Le 23/02/24 - 10:32, Louis Chauvet a écrit :
> This series adds the support for the omap-mcspi multi mode which allows
> sending SPI messages with a shorter delay between CS and the message.
> 
> One drawback of the multi-mode is that the CS is raised between each word, 
> so it can only be used with messages containing 1 word transfers and 
> asking for cs_change. Few devices, like FPGAs, may easily workaround this 
> limitation.
> 
> The first patch removes the current implementation, which is working, but 
> don't comply with what is asked in the spi transfer (The CS is raised by 
> the hardware regardless of cs_change state). No drivers or board file use this 
> implementation upstream.
> 
> The second patch adds the implementation of the multi-mode, which complies 
> with what is asked in the SPI message.
> 
> The third patch is the suggested optimization for using MULTI mode in more 
> situations.
> 
> Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
> ---
> Changes in v2:
> - Updated the commit line for the first patch to use the correct format;
> - Updated the commit message for the second patch, adding precision on how
>   the controler works;
> - Added the suggestion from Mark Brown to merge multiple transfers word 
>   into one when applicable;
> - Link to v1: https://lore.kernel.org/r/20240126-spi-omap2-mcspi-multi-mode-v1-0-d143d33f0fe0@bootlin.com
> 
> ---
> Louis Chauvet (3):
>       spi: spi-omap2-mcspi.c: revert "Toggle CS after each word"
>       spi: omap2-mcspi: Add support for MULTI-mode
>       spi: omap2-mcpsi: Enable MULTI-mode in more situations
> 
>  drivers/spi/spi-omap2-mcspi.c                 | 96 +++++++++++++++++++++------
>  include/linux/platform_data/spi-omap2-mcspi.h |  3 -
>  2 files changed, 75 insertions(+), 24 deletions(-)
> ---
> base-commit: 41bccc98fb7931d63d03f326a746ac4d429c1dd3
> change-id: 20240126-spi-omap2-mcspi-multi-mode-e62f68b78ad3
> 
> Best regards,
> -- 
> Louis Chauvet <louis.chauvet@bootlin.com>
> 
>
Mark Brown March 14, 2024, 2:04 p.m. UTC | #2
On Thu, Mar 14, 2024 at 02:56:46PM +0100, Louis Chauvet wrote:
> Hello Mark,
> 
> Given how far we already are in the current cycle I suppose this series 
> will only be considered after -rc1, will you want me to re-send or will 
> it stay on your stack? I know some maintainers prefer contributors to 
> re-send and others don't, so let met know what suits best your workflow.

No need to resend.

Please don't top post, reply in line with needed context.  This allows
readers to readily follow the flow of conversation and understand what
you are talking about and also helps ensure that everything in the
discussion is being addressed.
Mark Brown March 29, 2024, 12:34 p.m. UTC | #3
On Fri, 23 Feb 2024 10:32:10 +0100, Louis Chauvet wrote:
> This series adds the support for the omap-mcspi multi mode which allows
> sending SPI messages with a shorter delay between CS and the message.
> 
> One drawback of the multi-mode is that the CS is raised between each word,
> so it can only be used with messages containing 1 word transfers and
> asking for cs_change. Few devices, like FPGAs, may easily workaround this
> limitation.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next

Thanks!

[1/3] spi: spi-omap2-mcspi.c: revert "Toggle CS after each word"
      commit: 67bb37c05a6b56e0e1f804706145a52f655af3f1
[2/3] spi: omap2-mcspi: Add support for MULTI-mode
      commit: d153ff4056cb346fd6182a8a1bea6e12b714b64f
[3/3] spi: omap2-mcpsi: Enable MULTI-mode in more situations
      commit: e64d3b6fc9a388d7dc516668651cf4404bffec9b

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark