View | Details | Raw Unified | Return to bug 216139
Collapse All | Expand All

(-)a/sound/pci/hda/hp_89e9_helper.c (+72 lines)
Line 0 Link Here
1
// SPDX-License-Identifier: GPL-2.0
2
3
static void alc274_fixup_hp_89e9(struct hda_codec *codec,
4
				 const struct hda_fixup *fix, int action)
5
{
6
	static const struct hda_pintbl pincfgs_hp_89e9[] = {
7
		{ 0x18, 0x81d111f0 },
8
		{}
9
	};
10
	static const struct coef_fw alc274_hp_89e9_coefs[] = {
11
		WRITE_COEF(0x00, 0x1004), WRITE_COEF(0x01, 0xAAAA),
12
		WRITE_COEF(0x02, 0x88AA), WRITE_COEF(0x03, 0x0002),
13
		WRITE_COEF(0x04, 0xAA09), WRITE_COEF(0x05, 0x0700),
14
		WRITE_COEF(0x06, 0x6110), WRITE_COEF(0x07, 0x0200),
15
		WRITE_COEF(0x08, 0xA825), WRITE_COEF(0x09, 0x0021),
16
		WRITE_COEF(0x0A, 0x7770), WRITE_COEF(0x0B, 0x7778),
17
		WRITE_COEF(0x0C, 0x002B), WRITE_COEF(0x0D, 0x2420),
18
		WRITE_COEF(0x0E, 0x65C0), WRITE_COEF(0x0F, 0x7770),
19
		WRITE_COEF(0x10, 0xC580), WRITE_COEF(0x11, 0x7418),
20
		WRITE_COEF(0x12, 0x6BD0), WRITE_COEF(0x13, 0x645F),
21
		WRITE_COEF(0x14, 0x0400), WRITE_COEF(0x15, 0x8CCC),
22
		WRITE_COEF(0x16, 0x4C50), WRITE_COEF(0x17, 0xFF00),
23
		WRITE_COEF(0x18, 0x0003), WRITE_COEF(0x19, 0x2C11),
24
		WRITE_COEF(0x1A, 0x830B), WRITE_COEF(0x1B, 0x4E4B),
25
		WRITE_COEF(0x20, 0x51FF), WRITE_COEF(0x21, 0x8000),
26
		WRITE_COEF(0x22, 0x8F00), WRITE_COEF(0x23, 0x88F4),
27
		WRITE_COEF(0x26, 0x5757), WRITE_COEF(0x29, 0x3000),
28
		WRITE_COEF(0x2C, 0x0F00), WRITE_COEF(0x2D, 0x1F4F),
29
		WRITE_COEF(0x2E, 0x2902), WRITE_COEF(0x2F, 0xE280),
30
		WRITE_COEF(0x30, 0x1000), WRITE_COEF(0x31, 0x8400),
31
		WRITE_COEF(0x32, 0x5AAA), WRITE_COEF(0x33, 0x8420),
32
		WRITE_COEF(0x34, 0xA30C), WRITE_COEF(0x35, 0x49A8),
33
		WRITE_COEF(0x36, 0x5717), WRITE_COEF(0x37, 0xFE05),
34
		WRITE_COEF(0x38, 0x4901), WRITE_COEF(0x39, 0x110A),
35
		WRITE_COEF(0x3A, 0x0010), WRITE_COEF(0x3B, 0x60D9),
36
		WRITE_COEF(0x3C, 0xF214), WRITE_COEF(0x3D, 0xC2BA),
37
		WRITE_COEF(0x3E, 0xA928), WRITE_COEF(0x40, 0x8800),
38
		WRITE_COEF(0x42, 0x2000), WRITE_COEF(0x43, 0x3D90),
39
		WRITE_COEF(0x44, 0x4900), WRITE_COEF(0x45, 0xB289),
40
		WRITE_COEF(0x46, 0x0004), WRITE_COEF(0x47, 0xA47A),
41
		WRITE_COEF(0x48, 0xD049), WRITE_COEF(0x49, 0x0049),
42
		WRITE_COEF(0x4A, 0x20FB), WRITE_COEF(0x4B, 0x0777),
43
		WRITE_COEF(0x4C, 0x065C), WRITE_COEF(0x4D, 0x7FFF),
44
		WRITE_COEF(0x4E, 0x7FFF), WRITE_COEF(0x52, 0xBF5F),
45
		WRITE_COEF(0x53, 0x3320), WRITE_COEF(0x54, 0xCC00),
46
		WRITE_COEF(0x56, 0x3F00), WRITE_COEF(0x5A, 0x1300),
47
		WRITE_COEF(0x5B, 0x005F), WRITE_COEF(0x5D, 0x1001),
48
		WRITE_COEF(0x5E, 0x1000), WRITE_COEF(0x60, 0x0016),
49
		WRITE_COEF(0x61, 0xFFC0), WRITE_COEF(0x62, 0xA007),
50
		WRITE_COEF(0x63, 0xD010), WRITE_COEF(0x65, 0x3FB1),
51
		WRITE_COEF(0x66, 0x1881), WRITE_COEF(0x67, 0xC010),
52
		WRITE_COEF(0x68, 0x2000), WRITE_COEF(0x69, 0xFFF0),
53
		WRITE_COEF(0x6A, 0x0300), WRITE_COEF(0x6B, 0x0060),
54
		WRITE_COEF(0x6E, 0x0C25), WRITE_COEF(0x6F, 0x0D0B),
55
		WRITE_COEF(0x70, 0x8000), WRITE_COEF(0x71, 0x4008),
56
		WRITE_COEF(0x73, 0x0800), WRITE_COEF(0x74, 0xA28F),
57
		WRITE_COEF(0x75, 0xA050), WRITE_COEF(0x76, 0x7FE8),
58
		WRITE_COEF(0x77, 0xDB8C), WRITE_COEF(0x7A, 0x2A96),
59
		WRITE_COEF(0x7B, 0x800F), WRITE_COEF(0x7C, 0x0200),
60
		WRITE_COEF(0x7D, 0x1600),
61
	};
62
63
	printk("HELLO PATCH\n");
64
	switch (action) {
65
	case HDA_FIXUP_ACT_PRE_PROBE:
66
		snd_hda_apply_pincfgs(codec, pincfgs_hp_89e9);
67
		break;
68
	case HDA_FIXUP_ACT_INIT:
69
		alc_process_coef_fw(codec, alc274_hp_89e9_coefs);
70
		break;
71
	}
72
}
(-)a/sound/pci/hda/patch_realtek.c (-1 / +12 lines)
Lines 6817-6822 static void alc287_fixup_legion_16ithg6_speakers(struct hda_codec *cdc, const st Link Here
6817
/* for alc295_fixup_hp_top_speakers */
6817
/* for alc295_fixup_hp_top_speakers */
6818
#include "hp_x360_helper.c"
6818
#include "hp_x360_helper.c"
6819
6819
6820
/* for alc274_fixup_hp_89e9 */
6821
#include "hp_89e9_helper.c"
6822
6820
/* for alc285_fixup_ideapad_s740_coef() */
6823
/* for alc285_fixup_ideapad_s740_coef() */
6821
#include "ideapad_s740_helper.c"
6824
#include "ideapad_s740_helper.c"
6822
6825
Lines 7124-7129 enum { Link Here
7124
	ALC256_FIXUP_HUAWEI_MACH_WX9_PINS,
7127
	ALC256_FIXUP_HUAWEI_MACH_WX9_PINS,
7125
	ALC298_FIXUP_HUAWEI_MBX_STEREO,
7128
	ALC298_FIXUP_HUAWEI_MBX_STEREO,
7126
	ALC295_FIXUP_HP_X360,
7129
	ALC295_FIXUP_HP_X360,
7130
	ALC274_FIXUP_HP_89E9,
7127
	ALC221_FIXUP_HP_HEADSET_MIC,
7131
	ALC221_FIXUP_HP_HEADSET_MIC,
7128
	ALC285_FIXUP_LENOVO_HEADPHONE_NOISE,
7132
	ALC285_FIXUP_LENOVO_HEADPHONE_NOISE,
7129
	ALC295_FIXUP_HP_AUTO_MUTE,
7133
	ALC295_FIXUP_HP_AUTO_MUTE,
Lines 8298-8303 static const struct hda_fixup alc269_fixups[] = { Link Here
8298
		.chained = true,
8302
		.chained = true,
8299
		.chain_id = ALC269_FIXUP_HP_MUTE_LED_MIC3
8303
		.chain_id = ALC269_FIXUP_HP_MUTE_LED_MIC3
8300
	},
8304
	},
8305
	[ALC274_FIXUP_HP_89E9] = {
8306
		.type = HDA_FIXUP_FUNC,
8307
		.v.func = alc274_fixup_hp_89e9,
8308
		.chained = true,
8309
		.chain_id = ALC269_FIXUP_HP_MUTE_LED_MIC3 // ??? No idea what to put here
8310
	},
8301
	[ALC221_FIXUP_HP_HEADSET_MIC] = {
8311
	[ALC221_FIXUP_HP_HEADSET_MIC] = {
8302
		.type = HDA_FIXUP_PINS,
8312
		.type = HDA_FIXUP_PINS,
8303
		.v.pins = (const struct hda_pintbl[]) {
8313
		.v.pins = (const struct hda_pintbl[]) {
Lines 9590-9595 static const struct snd_pci_quirk alc269_fixup_tbl[] = { Link Here
9590
	SND_PCI_QUIRK(0x103c, 0x89c6, "Zbook Fury 17 G9", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED),
9600
	SND_PCI_QUIRK(0x103c, 0x89c6, "Zbook Fury 17 G9", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED),
9591
	SND_PCI_QUIRK(0x103c, 0x89ca, "HP", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF),
9601
	SND_PCI_QUIRK(0x103c, 0x89ca, "HP", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF),
9592
	SND_PCI_QUIRK(0x103c, 0x89d3, "HP EliteBook 645 G9 (MB 89D2)", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF),
9602
	SND_PCI_QUIRK(0x103c, 0x89d3, "HP EliteBook 645 G9 (MB 89D2)", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF),
9603
	SND_PCI_QUIRK(0x103c, 0x89e9, "HP Pavilion All-in-One Desktop 27-ca1xxx", ALC274_FIXUP_HP_89E9),
9593
	SND_PCI_QUIRK(0x103c, 0x8a78, "HP Dev One", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST),
9604
	SND_PCI_QUIRK(0x103c, 0x8a78, "HP Dev One", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST),
9594
	SND_PCI_QUIRK(0x103c, 0x8aa0, "HP ProBook 440 G9 (MB 8A9E)", ALC236_FIXUP_HP_GPIO_LED),
9605
	SND_PCI_QUIRK(0x103c, 0x8aa0, "HP ProBook 440 G9 (MB 8A9E)", ALC236_FIXUP_HP_GPIO_LED),
9595
	SND_PCI_QUIRK(0x103c, 0x8aa3, "HP ProBook 450 G9 (MB 8AA1)", ALC236_FIXUP_HP_GPIO_LED),
9606
	SND_PCI_QUIRK(0x103c, 0x8aa3, "HP ProBook 450 G9 (MB 8AA1)", ALC236_FIXUP_HP_GPIO_LED),
Lines 10130-10135 static const struct hda_model_fixup alc269_fixup_models[] = { Link Here
10130
	{.id = ALC623_FIXUP_LENOVO_THINKSTATION_P340, .name = "alc623-lenovo-thinkstation-p340"},
10141
	{.id = ALC623_FIXUP_LENOVO_THINKSTATION_P340, .name = "alc623-lenovo-thinkstation-p340"},
10131
	{.id = ALC255_FIXUP_ACER_HEADPHONE_AND_MIC, .name = "alc255-acer-headphone-and-mic"},
10142
	{.id = ALC255_FIXUP_ACER_HEADPHONE_AND_MIC, .name = "alc255-acer-headphone-and-mic"},
10132
	{.id = ALC285_FIXUP_HP_GPIO_AMP_INIT, .name = "alc285-hp-amp-init"},
10143
	{.id = ALC285_FIXUP_HP_GPIO_AMP_INIT, .name = "alc285-hp-amp-init"},
10144
	{.id = ALC274_FIXUP_HP_89E9, .name = "alc274-hp-89e9"},
10133
	{}
10145
	{}
10134
};
10146
};
10135
#define ALC225_STANDARD_PINS \
10147
#define ALC225_STANDARD_PINS \
10136
- 

Return to bug 216139