Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 8bc84a33 authored by Nicolin Chen's avatar Nicolin Chen Committed by Mark Brown
Browse files

ASoC: fsl_ssi: Rename i2smode to i2s_net



Since this i2smode also includes the setting of Network mode, it
should have it in the name. This patch also adds its MASK define.

Signed-off-by: default avatarNicolin Chen <nicoleotsuka@gmail.com>
Tested-by: default avatarMaciej S. Szmigiero <mail@maciej.szmigiero.name>
Reviewed-by: default avatarMaciej S. Szmigiero <mail@maciej.szmigiero.name>
Acked-by: default avatarTimur Tabi <timur@tabi.org>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 2474e403
Loading
Loading
Loading
Loading
+12 −12
Original line number Diff line number Diff line
@@ -201,7 +201,7 @@ struct fsl_ssi_soc_data {
 * @cpu_dai_drv: CPU DAI driver for this device
 *
 * @dai_fmt: DAI configuration this device is currently used with
 * @i2s_mode: I2S and Network mode configuration of SCR register
 * @i2s_net: I2S and Network mode configurations of SCR register
 * @use_dma: DMA is used or FIQ with stream filter
 * @use_dual_fifo: DMA with support for dual FIFO mode
 * @has_ipg_clk_name: If "ipg" is in the clock name list of device tree
@@ -245,7 +245,7 @@ struct fsl_ssi {
	struct snd_soc_dai_driver cpu_dai_drv;

	unsigned int dai_fmt;
	u8 i2s_mode;
	u8 i2s_net;
	bool use_dma;
	bool use_dual_fifo;
	bool has_ipg_clk_name;
@@ -836,16 +836,16 @@ static int fsl_ssi_hw_params(struct snd_pcm_substream *substream,
	}

	if (!fsl_ssi_is_ac97(ssi)) {
		u8 i2smode;
		u8 i2s_net;
		/* Normal + Network mode to send 16-bit data in 32-bit frames */
		if (fsl_ssi_is_i2s_cbm_cfs(ssi) && sample_size == 16)
			i2smode = SSI_SCR_I2S_MODE_NORMAL | SSI_SCR_NET;
			i2s_net = SSI_SCR_I2S_MODE_NORMAL | SSI_SCR_NET;
		else
			i2smode = ssi->i2s_mode;
			i2s_net = ssi->i2s_net;

		regmap_update_bits(regs, REG_SSI_SCR,
				   SSI_SCR_NET | SSI_SCR_I2S_MODE_MASK,
				   channels == 1 ? 0 : i2smode);
				   SSI_SCR_I2S_NET_MASK,
				   channels == 1 ? 0 : i2s_net);
	}

	/* In synchronous mode, the SSI uses STCCR for capture */
@@ -902,7 +902,7 @@ static int _fsl_ssi_set_dai_fmt(struct device *dev,
	srcr &= ~mask;

	/* Use Network mode as default */
	ssi->i2s_mode = SSI_SCR_NET;
	ssi->i2s_net = SSI_SCR_NET;
	switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
	case SND_SOC_DAIFMT_I2S:
		regmap_update_bits(regs, REG_SSI_STCCR,
@@ -912,10 +912,10 @@ static int _fsl_ssi_set_dai_fmt(struct device *dev,
		switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) {
		case SND_SOC_DAIFMT_CBM_CFS:
		case SND_SOC_DAIFMT_CBS_CFS:
			ssi->i2s_mode |= SSI_SCR_I2S_MODE_MASTER;
			ssi->i2s_net |= SSI_SCR_I2S_MODE_MASTER;
			break;
		case SND_SOC_DAIFMT_CBM_CFM:
			ssi->i2s_mode |= SSI_SCR_I2S_MODE_SLAVE;
			ssi->i2s_net |= SSI_SCR_I2S_MODE_SLAVE;
			break;
		default:
			return -EINVAL;
@@ -940,12 +940,12 @@ static int _fsl_ssi_set_dai_fmt(struct device *dev,
		break;
	case SND_SOC_DAIFMT_AC97:
		/* Data on falling edge of bclk, frame high, 1clk before data */
		ssi->i2s_mode |= SSI_SCR_I2S_MODE_NORMAL;
		ssi->i2s_net |= SSI_SCR_I2S_MODE_NORMAL;
		break;
	default:
		return -EINVAL;
	}
	scr |= ssi->i2s_mode;
	scr |= ssi->i2s_net;

	/* DAI clock inversion */
	switch (fmt & SND_SOC_DAIFMT_INV_MASK) {
+1 −0
Original line number Diff line number Diff line
@@ -95,6 +95,7 @@
#define SSI_SCR_I2S_MODE_SLAVE		0x00000040
#define SSI_SCR_SYN			0x00000010
#define SSI_SCR_NET			0x00000008
#define SSI_SCR_I2S_NET_MASK		(SSI_SCR_NET | SSI_SCR_I2S_MODE_MASK)
#define SSI_SCR_RE			0x00000004
#define SSI_SCR_TE			0x00000002
#define SSI_SCR_SSIEN			0x00000001