|
@@ -147,6 +147,17 @@ static const struct snd_kcontrol_new cht_mc_controls[] = {
|
|
|
SOC_DAPM_PIN_SWITCH("Ext Spk"),
|
|
|
};
|
|
|
|
|
|
+static struct snd_soc_jack_pin cht_bsw_jack_pins[] = {
|
|
|
+ {
|
|
|
+ .pin = "Headphone",
|
|
|
+ .mask = SND_JACK_HEADPHONE,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .pin = "Headset Mic",
|
|
|
+ .mask = SND_JACK_MICROPHONE,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
static int cht_aif1_hw_params(struct snd_pcm_substream *substream,
|
|
|
struct snd_pcm_hw_params *params)
|
|
|
{
|
|
@@ -202,9 +213,9 @@ static int cht_codec_init(struct snd_soc_pcm_runtime *runtime)
|
|
|
else
|
|
|
jack_type = SND_JACK_HEADPHONE | SND_JACK_MICROPHONE;
|
|
|
|
|
|
- ret = snd_soc_card_jack_new(runtime->card, "Headset Jack",
|
|
|
+ ret = snd_soc_card_jack_new(runtime->card, "Headset",
|
|
|
jack_type, &ctx->jack,
|
|
|
- NULL, 0);
|
|
|
+ cht_bsw_jack_pins, ARRAY_SIZE(cht_bsw_jack_pins));
|
|
|
if (ret) {
|
|
|
dev_err(runtime->dev, "Headset jack creation failed %d\n", ret);
|
|
|
return ret;
|