Unverified Commit 2a9ad0cc authored by Mark Brown's avatar Mark Brown
Browse files

Merge existing fixes from asoc/for-6.1 into new branch

parents 9abf2313 c9a3545b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1629,6 +1629,7 @@ config SND_SOC_TFA989X
config SND_SOC_TLV320ADC3XXX
	tristate "Texas Instruments TLV320ADC3001/3101 audio ADC"
	depends on I2C
	depends on GPIOLIB
	help
	 Enable support for Texas Instruments TLV320ADC3001 and TLV320ADC3101
	 ADCs.
+1 −1
Original line number Diff line number Diff line
@@ -177,7 +177,7 @@
#define CX2072X_PLBK_DRC_PARM_LEN	9
#define CX2072X_CLASSD_AMP_LEN		6

/* DAI interfae type */
/* DAI interface type */
#define CX2072X_DAI_HIFI	1
#define CX2072X_DAI_DSP		2
#define CX2072X_DAI_DSP_PWM	3 /* 4 ch, including mic and AEC */
+4 −4
Original line number Diff line number Diff line
@@ -503,14 +503,14 @@ static int mt6660_i2c_probe(struct i2c_client *client)
		dev_err(chip->dev, "read chip revision fail\n");
		goto probe_fail;
	}
	pm_runtime_set_active(chip->dev);
	pm_runtime_enable(chip->dev);

	ret = devm_snd_soc_register_component(chip->dev,
					       &mt6660_component_driver,
					       &mt6660_codec_dai, 1);
	if (!ret) {
		pm_runtime_set_active(chip->dev);
		pm_runtime_enable(chip->dev);
	}
	if (ret)
		pm_runtime_disable(chip->dev);

	return ret;

+11 −9
Original line number Diff line number Diff line
@@ -391,18 +391,18 @@ static int rt1019_set_tdm_slot(struct snd_soc_dai *dai, unsigned int tx_mask,
			unsigned int rx_mask, int slots, int slot_width)
{
	struct snd_soc_component *component = dai->component;
	unsigned int val = 0, rx_slotnum;
	unsigned int cn = 0, cl = 0, rx_slotnum;
	int ret = 0, first_bit;

	switch (slots) {
	case 4:
		val |= RT1019_I2S_TX_4CH;
		cn = RT1019_I2S_TX_4CH;
		break;
	case 6:
		val |= RT1019_I2S_TX_6CH;
		cn = RT1019_I2S_TX_6CH;
		break;
	case 8:
		val |= RT1019_I2S_TX_8CH;
		cn = RT1019_I2S_TX_8CH;
		break;
	case 2:
		break;
@@ -412,16 +412,16 @@ static int rt1019_set_tdm_slot(struct snd_soc_dai *dai, unsigned int tx_mask,

	switch (slot_width) {
	case 20:
		val |= RT1019_I2S_DL_20;
		cl = RT1019_TDM_CL_20;
		break;
	case 24:
		val |= RT1019_I2S_DL_24;
		cl = RT1019_TDM_CL_24;
		break;
	case 32:
		val |= RT1019_I2S_DL_32;
		cl = RT1019_TDM_CL_32;
		break;
	case 8:
		val |= RT1019_I2S_DL_8;
		cl = RT1019_TDM_CL_8;
		break;
	case 16:
		break;
@@ -470,8 +470,10 @@ static int rt1019_set_tdm_slot(struct snd_soc_dai *dai, unsigned int tx_mask,
		goto _set_tdm_err_;
	}

	snd_soc_component_update_bits(component, RT1019_TDM_1,
		RT1019_TDM_CL_MASK, cl);
	snd_soc_component_update_bits(component, RT1019_TDM_2,
		RT1019_I2S_CH_TX_MASK | RT1019_I2S_DF_MASK, val);
		RT1019_I2S_CH_TX_MASK, cn);

_set_tdm_err_:
	return ret;
+6 −0
Original line number Diff line number Diff line
@@ -95,6 +95,12 @@
#define RT1019_TDM_BCLK_MASK		(0x1 << 6)
#define RT1019_TDM_BCLK_NORM		(0x0 << 6)
#define RT1019_TDM_BCLK_INV			(0x1 << 6)
#define RT1019_TDM_CL_MASK			(0x7)
#define RT1019_TDM_CL_8				(0x4)
#define RT1019_TDM_CL_32			(0x3)
#define RT1019_TDM_CL_24			(0x2)
#define RT1019_TDM_CL_20			(0x1)
#define RT1019_TDM_CL_16			(0x0)

/* 0x0401 TDM Control-2 */
#define RT1019_I2S_CH_TX_MASK		(0x3 << 6)
Loading