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

Commit 10e5b9c2 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branches 'asoc/fix/rockchip', 'asoc/fix/rt5645',...

Merge remote-tracking branches 'asoc/fix/rockchip', 'asoc/fix/rt5645', 'asoc/fix/rt5663', 'asoc/fix/rt5670' and 'asoc/fix/zte' into asoc-linus
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -3897,6 +3897,7 @@ static int rt5645_i2c_remove(struct i2c_client *i2c)


	cancel_delayed_work_sync(&rt5645->jack_detect_work);
	cancel_delayed_work_sync(&rt5645->jack_detect_work);
	cancel_delayed_work_sync(&rt5645->rcclock_work);
	cancel_delayed_work_sync(&rt5645->rcclock_work);
	del_timer_sync(&rt5645->btn_check_timer);


	snd_soc_unregister_codec(&i2c->dev);
	snd_soc_unregister_codec(&i2c->dev);
	regulator_bulk_disable(ARRAY_SIZE(rt5645->supplies), rt5645->supplies);
	regulator_bulk_disable(ARRAY_SIZE(rt5645->supplies), rt5645->supplies);
+3 −1
Original line number Original line Diff line number Diff line
@@ -2847,6 +2847,8 @@ static int rt5663_resume(struct snd_soc_codec *codec)
	regcache_cache_only(rt5663->regmap, false);
	regcache_cache_only(rt5663->regmap, false);
	regcache_sync(rt5663->regmap);
	regcache_sync(rt5663->regmap);


	rt5663_irq(0, rt5663);

	return 0;
	return 0;
}
}
#else
#else
@@ -3141,7 +3143,7 @@ static int rt5663_i2c_probe(struct i2c_client *i2c,
		regmap_update_bits(rt5663->regmap, RT5663_DIG_MISC,
		regmap_update_bits(rt5663->regmap, RT5663_DIG_MISC,
			RT5663_DIG_GATE_CTRL_MASK, RT5663_DIG_GATE_CTRL_EN);
			RT5663_DIG_GATE_CTRL_MASK, RT5663_DIG_GATE_CTRL_EN);
		regmap_update_bits(rt5663->regmap, RT5663_AUTO_1MRC_CLK,
		regmap_update_bits(rt5663->regmap, RT5663_AUTO_1MRC_CLK,
			RT5663_IRQ_POW_SAV_MASK, RT5663_IRQ_POW_SAV_EN);
			RT5663_IRQ_MANUAL_MASK, RT5663_IRQ_MANUAL_EN);
		regmap_update_bits(rt5663->regmap, RT5663_IRQ_1,
		regmap_update_bits(rt5663->regmap, RT5663_IRQ_1,
			RT5663_EN_IRQ_JD1_MASK, RT5663_EN_IRQ_JD1_EN);
			RT5663_EN_IRQ_JD1_MASK, RT5663_EN_IRQ_JD1_EN);
		regmap_update_bits(rt5663->regmap, RT5663_GPIO_1,
		regmap_update_bits(rt5663->regmap, RT5663_GPIO_1,
+4 −0
Original line number Original line Diff line number Diff line
@@ -590,6 +590,10 @@
#define RT5663_IRQ_POW_SAV_JD1_SHIFT		14
#define RT5663_IRQ_POW_SAV_JD1_SHIFT		14
#define RT5663_IRQ_POW_SAV_JD1_DIS		(0x0 << 14)
#define RT5663_IRQ_POW_SAV_JD1_DIS		(0x0 << 14)
#define RT5663_IRQ_POW_SAV_JD1_EN		(0x1 << 14)
#define RT5663_IRQ_POW_SAV_JD1_EN		(0x1 << 14)
#define RT5663_IRQ_MANUAL_MASK			(0x1 << 8)
#define RT5663_IRQ_MANUAL_SHIFT			8
#define RT5663_IRQ_MANUAL_DIS			(0x0 << 8)
#define RT5663_IRQ_MANUAL_EN			(0x1 << 8)


/* IRQ Control 1 (0x00b6) */
/* IRQ Control 1 (0x00b6) */
#define RT5663_EN_CB_JD_MASK			(0x1 << 3)
#define RT5663_EN_CB_JD_MASK			(0x1 << 3)
+2 −3
Original line number Original line Diff line number Diff line
@@ -1717,7 +1717,6 @@ static const struct snd_soc_dapm_widget rt5670_dapm_widgets[] = {
	SND_SOC_DAPM_PGA("IF1_ADC1", SND_SOC_NOPM, 0, 0, NULL, 0),
	SND_SOC_DAPM_PGA("IF1_ADC1", SND_SOC_NOPM, 0, 0, NULL, 0),
	SND_SOC_DAPM_PGA("IF1_ADC2", SND_SOC_NOPM, 0, 0, NULL, 0),
	SND_SOC_DAPM_PGA("IF1_ADC2", SND_SOC_NOPM, 0, 0, NULL, 0),
	SND_SOC_DAPM_PGA("IF1_ADC3", SND_SOC_NOPM, 0, 0, NULL, 0),
	SND_SOC_DAPM_PGA("IF1_ADC3", SND_SOC_NOPM, 0, 0, NULL, 0),
	SND_SOC_DAPM_PGA("IF1_ADC4", SND_SOC_NOPM, 0, 0, NULL, 0),


	/* DSP */
	/* DSP */
	SND_SOC_DAPM_PGA("TxDP_ADC", SND_SOC_NOPM, 0, 0, NULL, 0),
	SND_SOC_DAPM_PGA("TxDP_ADC", SND_SOC_NOPM, 0, 0, NULL, 0),
@@ -2086,13 +2085,13 @@ static const struct snd_soc_dapm_route rt5670_dapm_routes[] = {
	{ "IF1 ADC1 IN1 Mux", "IF1_ADC3", "IF1_ADC3" },
	{ "IF1 ADC1 IN1 Mux", "IF1_ADC3", "IF1_ADC3" },


	{ "IF1 ADC1 IN2 Mux", "IF1_ADC1_IN1", "IF1 ADC1 IN1 Mux" },
	{ "IF1 ADC1 IN2 Mux", "IF1_ADC1_IN1", "IF1 ADC1 IN1 Mux" },
	{ "IF1 ADC1 IN2 Mux", "IF1_ADC4", "IF1_ADC4" },
	{ "IF1 ADC1 IN2 Mux", "IF1_ADC4", "TxDP_ADC" },


	{ "IF1 ADC2 IN Mux", "IF_ADC2", "IF_ADC2" },
	{ "IF1 ADC2 IN Mux", "IF_ADC2", "IF_ADC2" },
	{ "IF1 ADC2 IN Mux", "VAD_ADC", "VAD_ADC" },
	{ "IF1 ADC2 IN Mux", "VAD_ADC", "VAD_ADC" },


	{ "IF1 ADC2 IN1 Mux", "IF1_ADC2_IN", "IF1 ADC2 IN Mux" },
	{ "IF1 ADC2 IN1 Mux", "IF1_ADC2_IN", "IF1 ADC2 IN Mux" },
	{ "IF1 ADC2 IN1 Mux", "IF1_ADC4", "IF1_ADC4" },
	{ "IF1 ADC2 IN1 Mux", "IF1_ADC4", "TxDP_ADC" },


	{ "IF1_ADC1" , NULL, "IF1 ADC1 IN2 Mux" },
	{ "IF1_ADC1" , NULL, "IF1 ADC1 IN2 Mux" },
	{ "IF1_ADC2" , NULL, "IF1 ADC2 IN1 Mux" },
	{ "IF1_ADC2" , NULL, "IF1 ADC2 IN1 Mux" },
+2 −0
Original line number Original line Diff line number Diff line
@@ -116,6 +116,7 @@ static void rockchip_snd_txctrl(struct rk_i2s_dev *i2s, int on)
					   I2S_XFER_TXS_STOP |
					   I2S_XFER_TXS_STOP |
					   I2S_XFER_RXS_STOP);
					   I2S_XFER_RXS_STOP);


			udelay(150);
			regmap_update_bits(i2s->regmap, I2S_CLR,
			regmap_update_bits(i2s->regmap, I2S_CLR,
					   I2S_CLR_TXC | I2S_CLR_RXC,
					   I2S_CLR_TXC | I2S_CLR_RXC,
					   I2S_CLR_TXC | I2S_CLR_RXC);
					   I2S_CLR_TXC | I2S_CLR_RXC);
@@ -162,6 +163,7 @@ static void rockchip_snd_rxctrl(struct rk_i2s_dev *i2s, int on)
					   I2S_XFER_TXS_STOP |
					   I2S_XFER_TXS_STOP |
					   I2S_XFER_RXS_STOP);
					   I2S_XFER_RXS_STOP);


			udelay(150);
			regmap_update_bits(i2s->regmap, I2S_CLR,
			regmap_update_bits(i2s->regmap, I2S_CLR,
					   I2S_CLR_TXC | I2S_CLR_RXC,
					   I2S_CLR_TXC | I2S_CLR_RXC,
					   I2S_CLR_TXC | I2S_CLR_RXC);
					   I2S_CLR_TXC | I2S_CLR_RXC);
Loading