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

Commit fc7a1627 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge branch 'fix/hda' into topic/hda

Conflicts:
	sound/pci/hda/patch_realtek.c
parents 78f8baf1 526af6eb
Loading
Loading
Loading
Loading
+17 −0
Original line number Original line Diff line number Diff line
@@ -2052,12 +2052,16 @@ static int alc_build_controls(struct hda_codec *codec)


static void alc_init_special_input_src(struct hda_codec *codec);
static void alc_init_special_input_src(struct hda_codec *codec);
static void alc_auto_init_std(struct hda_codec *codec);
static void alc_auto_init_std(struct hda_codec *codec);
static int alc269_fill_coef(struct hda_codec *codec);


static int alc_init(struct hda_codec *codec)
static int alc_init(struct hda_codec *codec)
{
{
	struct alc_spec *spec = codec->spec;
	struct alc_spec *spec = codec->spec;
	unsigned int i;
	unsigned int i;


	if (codec->vendor_id == 0x10ec0269)
		alc269_fill_coef(codec);

	alc_fix_pll(codec);
	alc_fix_pll(codec);
	alc_auto_init_amp(codec, spec->init_amp);
	alc_auto_init_amp(codec, spec->init_amp);


@@ -5005,6 +5009,7 @@ enum {
	ALC882_FIXUP_PB_M5210,
	ALC882_FIXUP_PB_M5210,
	ALC882_FIXUP_ACER_ASPIRE_7736,
	ALC882_FIXUP_ACER_ASPIRE_7736,
	ALC882_FIXUP_ASUS_W90V,
	ALC882_FIXUP_ASUS_W90V,
	ALC889_FIXUP_CD,
	ALC889_FIXUP_VAIO_TT,
	ALC889_FIXUP_VAIO_TT,
	ALC888_FIXUP_EEE1601,
	ALC888_FIXUP_EEE1601,
	ALC882_FIXUP_EAPD,
	ALC882_FIXUP_EAPD,
@@ -5181,6 +5186,13 @@ static const struct alc_fixup alc882_fixups[] = {
			{ }
			{ }
		}
		}
	},
	},
	[ALC889_FIXUP_CD] = {
		.type = ALC_FIXUP_PINS,
		.v.pins = (const struct alc_pincfg[]) {
			{ 0x1c, 0x993301f0 }, /* CD */
			{ }
		}
	},
	[ALC889_FIXUP_VAIO_TT] = {
	[ALC889_FIXUP_VAIO_TT] = {
		.type = ALC_FIXUP_PINS,
		.type = ALC_FIXUP_PINS,
		.v.pins = (const struct alc_pincfg[]) {
		.v.pins = (const struct alc_pincfg[]) {
@@ -5372,6 +5384,7 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {


	SND_PCI_QUIRK(0x1071, 0x8258, "Evesham Voyaeger", ALC882_FIXUP_EAPD),
	SND_PCI_QUIRK(0x1071, 0x8258, "Evesham Voyaeger", ALC882_FIXUP_EAPD),
	SND_PCI_QUIRK_VENDOR(0x1462, "MSI", ALC882_FIXUP_GPIO3),
	SND_PCI_QUIRK_VENDOR(0x1462, "MSI", ALC882_FIXUP_GPIO3),
	SND_PCI_QUIRK(0x1458, 0xa002, "Gigabyte EP45-DS3", ALC889_FIXUP_CD),
	SND_PCI_QUIRK(0x147b, 0x107a, "Abit AW9D-MAX", ALC882_FIXUP_ABIT_AW9D_MAX),
	SND_PCI_QUIRK(0x147b, 0x107a, "Abit AW9D-MAX", ALC882_FIXUP_ABIT_AW9D_MAX),
	SND_PCI_QUIRK_VENDOR(0x1558, "Clevo laptop", ALC882_FIXUP_EAPD),
	SND_PCI_QUIRK_VENDOR(0x1558, "Clevo laptop", ALC882_FIXUP_EAPD),
	SND_PCI_QUIRK(0x161f, 0x2054, "Medion laptop", ALC883_FIXUP_EAPD),
	SND_PCI_QUIRK(0x161f, 0x2054, "Medion laptop", ALC883_FIXUP_EAPD),
@@ -6113,8 +6126,12 @@ static const struct alc_model_fixup alc269_fixup_models[] = {


static int alc269_fill_coef(struct hda_codec *codec)
static int alc269_fill_coef(struct hda_codec *codec)
{
{
	struct alc_spec *spec = codec->spec;
	int val;
	int val;


	if (spec->codec_variant != ALC269_TYPE_ALC269VB)
		return 0;

	if ((alc_get_coef0(codec) & 0x00ff) < 0x015) {
	if ((alc_get_coef0(codec) & 0x00ff) < 0x015) {
		alc_write_coef_idx(codec, 0xf, 0x960b);
		alc_write_coef_idx(codec, 0xf, 0x960b);
		alc_write_coef_idx(codec, 0xe, 0x8817);
		alc_write_coef_idx(codec, 0xe, 0x8817);
+2 −2
Original line number Original line Diff line number Diff line
@@ -367,7 +367,7 @@ static struct snd_soc_dai_link neo1973_dai[] = {
	.platform_name = "samsung-audio",
	.platform_name = "samsung-audio",
	.cpu_dai_name = "s3c24xx-iis",
	.cpu_dai_name = "s3c24xx-iis",
	.codec_dai_name = "wm8753-hifi",
	.codec_dai_name = "wm8753-hifi",
	.codec_name = "wm8753-codec.0-001a",
	.codec_name = "wm8753.0-001a",
	.init = neo1973_wm8753_init,
	.init = neo1973_wm8753_init,
	.ops = &neo1973_hifi_ops,
	.ops = &neo1973_hifi_ops,
},
},
@@ -376,7 +376,7 @@ static struct snd_soc_dai_link neo1973_dai[] = {
	.stream_name = "Voice",
	.stream_name = "Voice",
	.cpu_dai_name = "dfbmcs320-pcm",
	.cpu_dai_name = "dfbmcs320-pcm",
	.codec_dai_name = "wm8753-voice",
	.codec_dai_name = "wm8753-voice",
	.codec_name = "wm8753-codec.0-001a",
	.codec_name = "wm8753.0-001a",
	.ops = &neo1973_voice_ops,
	.ops = &neo1973_voice_ops,
},
},
};
};