[PATCH] spi: s3c64xx: clear loopback bit after loopback test

Jaewon Kim posted 1 patch 2 years, 7 months ago
drivers/spi/spi-s3c64xx.c | 2 ++
1 file changed, 2 insertions(+)
[PATCH] spi: s3c64xx: clear loopback bit after loopback test
Posted by Jaewon Kim 2 years, 7 months ago
When SPI loopback transfer is performed, S3C64XX_SPI_MODE_SELF_LOOPBACK
bit still remained. It works as loopback even if the next transfer is
not spi loopback mode.
If not SPI_LOOP, needs to clear S3C64XX_SPI_MODE_SELF_LOOPBACK bit.

Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
---
 drivers/spi/spi-s3c64xx.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
index fd55697144cc..b6c2659a66ca 100644
--- a/drivers/spi/spi-s3c64xx.c
+++ b/drivers/spi/spi-s3c64xx.c
@@ -684,6 +684,8 @@ static int s3c64xx_spi_config(struct s3c64xx_spi_driver_data *sdd)
 
 	if ((sdd->cur_mode & SPI_LOOP) && sdd->port_conf->has_loopback)
 		val |= S3C64XX_SPI_MODE_SELF_LOOPBACK;
+	else
+		val &= ~S3C64XX_SPI_MODE_SELF_LOOPBACK;
 
 	writel(val, regs + S3C64XX_SPI_MODE_CFG);
 
-- 
2.17.1
RE: [PATCH] spi: s3c64xx: clear loopback bit after loopback test
Posted by Chanho Park 2 years, 7 months ago
Hi Jaewon,

> -----Original Message-----
> From: Jaewon Kim <jaewon02.kim@samsung.com>
> Sent: Tuesday, July 11, 2023 5:20 PM
> To: Andi Shyti <andi.shyti@kernel.org>; Mark Brown <broonie@kernel.org>;
> Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>; Alim Akhtar
> <alim.akhtar@samsung.com>
> Cc: linux-spi@vger.kernel.org; linux-samsung-soc@vger.kernel.org; linux-
> arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; Chanho Park
> <chanho61.park@samsung.com>; Jaewon Kim <jaewon02.kim@samsung.com>
> Subject: [PATCH] spi: s3c64xx: clear loopback bit after loopback test
> 
> When SPI loopback transfer is performed, S3C64XX_SPI_MODE_SELF_LOOPBACK
> bit still remained. It works as loopback even if the next transfer is not
> spi loopback mode.
> If not SPI_LOOP, needs to clear S3C64XX_SPI_MODE_SELF_LOOPBACK bit.
> 

In order for this patch to be sent to the stable tree, below tag is required.
Fixes: ffb7bcd3b27e ("spi: s3c64xx: support loopback mode")

Otherwise, looks good to me.
Reviewed-by: Chanho Park <chanho61.park@samsung.com>

Best Regards,
Chanho Park

> Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
> ---
>  drivers/spi/spi-s3c64xx.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c index
> fd55697144cc..b6c2659a66ca 100644
> --- a/drivers/spi/spi-s3c64xx.c
> +++ b/drivers/spi/spi-s3c64xx.c
> @@ -684,6 +684,8 @@ static int s3c64xx_spi_config(struct
> s3c64xx_spi_driver_data *sdd)
> 
>  	if ((sdd->cur_mode & SPI_LOOP) && sdd->port_conf->has_loopback)
>  		val |= S3C64XX_SPI_MODE_SELF_LOOPBACK;
> +	else
> +		val &= ~S3C64XX_SPI_MODE_SELF_LOOPBACK;
> 
>  	writel(val, regs + S3C64XX_SPI_MODE_CFG);
> 
> --
> 2.17.1
Re: [PATCH] spi: s3c64xx: clear loopback bit after loopback test
Posted by Andi Shyti 2 years, 7 months ago
Hi Jaewon,

On Tue, Jul 11, 2023 at 05:20:20PM +0900, Jaewon Kim wrote:
> When SPI loopback transfer is performed, S3C64XX_SPI_MODE_SELF_LOOPBACK
> bit still remained. It works as loopback even if the next transfer is
> not spi loopback mode.
> If not SPI_LOOP, needs to clear S3C64XX_SPI_MODE_SELF_LOOPBACK bit.
> 
> Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>

with the change suggested by Chanho:

Reviewed-by: Andi Shyti <andi.shyti@kernel.org> 

Mark, can you add the

Fixes: ffb7bcd3b27e ("spi: s3c64xx: support loopback mode")

tag or should Jaewon resend?

Thanks,
Andi

> ---
>  drivers/spi/spi-s3c64xx.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c
> index fd55697144cc..b6c2659a66ca 100644
> --- a/drivers/spi/spi-s3c64xx.c
> +++ b/drivers/spi/spi-s3c64xx.c
> @@ -684,6 +684,8 @@ static int s3c64xx_spi_config(struct s3c64xx_spi_driver_data *sdd)
>  
>  	if ((sdd->cur_mode & SPI_LOOP) && sdd->port_conf->has_loopback)
>  		val |= S3C64XX_SPI_MODE_SELF_LOOPBACK;
> +	else
> +		val &= ~S3C64XX_SPI_MODE_SELF_LOOPBACK;
>  
>  	writel(val, regs + S3C64XX_SPI_MODE_CFG);
>  
> -- 
> 2.17.1
>
Re: [PATCH] spi: s3c64xx: clear loopback bit after loopback test
Posted by Mark Brown 2 years, 7 months ago
On Wed, Jul 12, 2023 at 12:19:30AM +0200, Andi Shyti wrote:

> with the change suggested by Chanho:

> Reviewed-by: Andi Shyti <andi.shyti@kernel.org> 

> Mark, can you add the
> 
> Fixes: ffb7bcd3b27e ("spi: s3c64xx: support loopback mode")
> 
> tag or should Jaewon resend?

It's already in CI with that, b4 picks up fixes tags.
Re: [PATCH] spi: s3c64xx: clear loopback bit after loopback test
Posted by Mark Brown 2 years, 7 months ago
On Tue, 11 Jul 2023 17:20:20 +0900, Jaewon Kim wrote:
> When SPI loopback transfer is performed, S3C64XX_SPI_MODE_SELF_LOOPBACK
> bit still remained. It works as loopback even if the next transfer is
> not spi loopback mode.
> If not SPI_LOOP, needs to clear S3C64XX_SPI_MODE_SELF_LOOPBACK bit.
> 
> 

Applied to

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

Thanks!

[1/1] spi: s3c64xx: clear loopback bit after loopback test
      commit: 9ec3c5517e22a12d2ff1b71e844f7913641460c6

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