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

Commit f3b368d3 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branch 'asoc/topic/rt5645' into asoc-next

parents 977732b0 345b0f50
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -15,7 +15,6 @@ struct rt5645_platform_data {
	/* IN2 can optionally be differential */
	bool in2_diff;

	bool dmic_en;
	unsigned int dmic1_data_pin;
	/* 0 = IN2N; 1 = GPIO5; 2 = GPIO11 */
	unsigned int dmic2_data_pin;
@@ -24,8 +23,6 @@ struct rt5645_platform_data {
	unsigned int hp_det_gpio;
	bool gpio_hp_det_active_high;

	/* true if codec's jd function is used */
	bool en_jd_func;
	unsigned int jd_mode;
};

+829 −249

File changed.

Preview size limit exceeded, changes collapsed.

+17 −13
Original line number Diff line number Diff line
@@ -105,6 +105,7 @@
#define RT5645_TDM_CTRL_1			0x77
#define RT5645_TDM_CTRL_2			0x78
#define RT5645_TDM_CTRL_3			0x79
#define RT5650_TDM_CTRL_4			0x7a

/* Function - Analog */
#define RT5645_GLB_CLK				0x80
@@ -942,10 +943,6 @@
#define RT5645_I2S2_SDI_I2S2			(0x1 << 6)

/* ADC/DAC Clock Control 1 (0x73) */
#define RT5645_I2S_BCLK_MS1_MASK		(0x1 << 15)
#define RT5645_I2S_BCLK_MS1_SFT			15
#define RT5645_I2S_BCLK_MS1_32			(0x0 << 15)
#define RT5645_I2S_BCLK_MS1_64			(0x1 << 15)
#define RT5645_I2S_PD1_MASK			(0x7 << 12)
#define RT5645_I2S_PD1_SFT			12
#define RT5645_I2S_PD1_1			(0x0 << 12)
@@ -1067,13 +1064,14 @@
#define RT5645_SCLK_SRC_SFT			14
#define RT5645_SCLK_SRC_MCLK			(0x0 << 14)
#define RT5645_SCLK_SRC_PLL1			(0x1 << 14)
#define RT5645_SCLK_SRC_RCCLK			(0x2 << 14) /* 15MHz */
#define RT5645_PLL1_SRC_MASK			(0x3 << 12)
#define RT5645_PLL1_SRC_SFT			12
#define RT5645_PLL1_SRC_MCLK			(0x0 << 12)
#define RT5645_PLL1_SRC_BCLK1			(0x1 << 12)
#define RT5645_PLL1_SRC_BCLK2			(0x2 << 12)
#define RT5645_PLL1_SRC_BCLK3			(0x3 << 12)
#define RT5645_SCLK_SRC_RCCLK			(0x2 << 14)
#define RT5645_PLL1_SRC_MASK			(0x7 << 11)
#define RT5645_PLL1_SRC_SFT			11
#define RT5645_PLL1_SRC_MCLK			(0x0 << 11)
#define RT5645_PLL1_SRC_BCLK1			(0x1 << 11)
#define RT5645_PLL1_SRC_BCLK2			(0x2 << 11)
#define RT5645_PLL1_SRC_BCLK3			(0x3 << 11)
#define RT5645_PLL1_SRC_RCCLK			(0x4 << 11)
#define RT5645_PLL1_PD_MASK			(0x1 << 3)
#define RT5645_PLL1_PD_SFT			3
#define RT5645_PLL1_PD_1			(0x0 << 3)
@@ -2147,6 +2145,7 @@ enum {
};

enum {
	RT5645_DMIC1_DISABLE,
	RT5645_DMIC_DATA_IN2P,
	RT5645_DMIC_DATA_GPIO6,
	RT5645_DMIC_DATA_GPIO10,
@@ -2154,6 +2153,7 @@ enum {
};

enum {
	RT5645_DMIC2_DISABLE,
	RT5645_DMIC_DATA_IN2N,
	RT5645_DMIC_DATA_GPIO5,
	RT5645_DMIC_DATA_GPIO11,
@@ -2184,6 +2184,7 @@ struct rt5645_priv {
	struct i2c_client *i2c;
	struct snd_soc_jack *hp_jack;
	struct snd_soc_jack *mic_jack;
	struct snd_soc_jack *btn_jack;
	struct delayed_work jack_detect_work;

	int codec_type;
@@ -2196,9 +2197,12 @@ struct rt5645_priv {
	int pll_src;
	int pll_in;
	int pll_out;

	int jack_type;
	bool en_button_func;
};

int rt5645_set_jack_detect(struct snd_soc_codec *codec,
	struct snd_soc_jack *hp_jack, struct snd_soc_jack *mic_jack);

	struct snd_soc_jack *hp_jack, struct snd_soc_jack *mic_jack,
	struct snd_soc_jack *btn_jack);
#endif /* __RT5645_H__ */
+1 −1
Original line number Diff line number Diff line
@@ -185,7 +185,7 @@ static int cht_codec_init(struct snd_soc_pcm_runtime *runtime)
		return ret;
	}

	rt5645_set_jack_detect(codec, &ctx->hp_jack, &ctx->mic_jack);
	rt5645_set_jack_detect(codec, &ctx->hp_jack, &ctx->mic_jack, NULL);

	return ret;
}