Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
bfbbfb26
Commit
bfbbfb26
authored
Sep 20, 2022
by
Takashi Iwai
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'for-linus' into for-next
parents
7883017b
49632230
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
49 additions
and
7 deletions
+49
-7
sound/pci/hda/patch_hdmi.c
sound/pci/hda/patch_hdmi.c
+20
-4
sound/pci/hda/patch_realtek.c
sound/pci/hda/patch_realtek.c
+29
-3
No files found.
sound/pci/hda/patch_hdmi.c
View file @
bfbbfb26
...
...
@@ -170,6 +170,8 @@ struct hdmi_spec {
bool
dyn_pcm_no_legacy
;
/* hdmi interrupt trigger control flag for Nvidia codec */
bool
hdmi_intr_trig_ctrl
;
bool
nv_dp_workaround
;
/* workaround DP audio infoframe for Nvidia */
bool
intel_hsw_fixup
;
/* apply Intel platform-specific fixups */
/*
* Non-generic VIA/NVIDIA specific
...
...
@@ -679,15 +681,24 @@ static void hdmi_pin_setup_infoframe(struct hda_codec *codec,
int
ca
,
int
active_channels
,
int
conn_type
)
{
struct
hdmi_spec
*
spec
=
codec
->
spec
;
union
audio_infoframe
ai
;
memset
(
&
ai
,
0
,
sizeof
(
ai
));
if
(
conn_type
==
0
)
{
/* HDMI */
if
((
conn_type
==
0
)
||
/* HDMI */
/* Nvidia DisplayPort: Nvidia HW expects same layout as HDMI */
(
conn_type
==
1
&&
spec
->
nv_dp_workaround
))
{
struct
hdmi_audio_infoframe
*
hdmi_ai
=
&
ai
.
hdmi
;
if
(
conn_type
==
0
)
{
/* HDMI */
hdmi_ai
->
type
=
0x84
;
hdmi_ai
->
ver
=
0x01
;
hdmi_ai
->
len
=
0x0a
;
}
else
{
/* Nvidia DP */
hdmi_ai
->
type
=
0x84
;
hdmi_ai
->
ver
=
0x1b
;
hdmi_ai
->
len
=
0x11
<<
2
;
}
hdmi_ai
->
CC02_CT47
=
active_channels
-
1
;
hdmi_ai
->
CA
=
ca
;
hdmi_checksum_audio_infoframe
(
hdmi_ai
);
...
...
@@ -1267,6 +1278,7 @@ static int hdmi_pcm_open(struct hda_pcm_stream *hinfo,
set_bit
(
pcm_idx
,
&
spec
->
pcm_in_use
);
per_pin
=
get_pin
(
spec
,
pin_idx
);
per_pin
->
cvt_nid
=
per_cvt
->
cvt_nid
;
per_pin
->
silent_stream
=
false
;
hinfo
->
nid
=
per_cvt
->
cvt_nid
;
/* flip stripe flag for the assigned stream if supported */
...
...
@@ -3617,6 +3629,7 @@ static int patch_nvhdmi_2ch(struct hda_codec *codec)
spec
->
pcm_playback
.
rates
=
SUPPORTED_RATES
;
spec
->
pcm_playback
.
maxbps
=
SUPPORTED_MAXBPS
;
spec
->
pcm_playback
.
formats
=
SUPPORTED_FORMATS
;
spec
->
nv_dp_workaround
=
true
;
return
0
;
}
...
...
@@ -3756,6 +3769,7 @@ static int patch_nvhdmi(struct hda_codec *codec)
spec
->
chmap
.
ops
.
chmap_cea_alloc_validate_get_type
=
nvhdmi_chmap_cea_alloc_validate_get_type
;
spec
->
chmap
.
ops
.
chmap_validate
=
nvhdmi_chmap_validate
;
spec
->
nv_dp_workaround
=
true
;
codec
->
link_down_at_suspend
=
1
;
...
...
@@ -3779,6 +3793,7 @@ static int patch_nvhdmi_legacy(struct hda_codec *codec)
spec
->
chmap
.
ops
.
chmap_cea_alloc_validate_get_type
=
nvhdmi_chmap_cea_alloc_validate_get_type
;
spec
->
chmap
.
ops
.
chmap_validate
=
nvhdmi_chmap_validate
;
spec
->
nv_dp_workaround
=
true
;
codec
->
link_down_at_suspend
=
1
;
...
...
@@ -3993,6 +4008,7 @@ static int tegra_hdmi_init(struct hda_codec *codec)
spec
->
chmap
.
ops
.
chmap_cea_alloc_validate_get_type
=
nvhdmi_chmap_cea_alloc_validate_get_type
;
spec
->
chmap
.
ops
.
chmap_validate
=
nvhdmi_chmap_validate
;
spec
->
nv_dp_workaround
=
true
;
return
0
;
}
...
...
sound/pci/hda/patch_realtek.c
View file @
bfbbfb26
...
...
@@ -7067,6 +7067,8 @@ enum {
ALC294_FIXUP_ASUS_GU502_HP
,
ALC294_FIXUP_ASUS_GU502_PINS
,
ALC294_FIXUP_ASUS_GU502_VERBS
,
ALC294_FIXUP_ASUS_G513_PINS
,
ALC285_FIXUP_ASUS_G533Z_PINS
,
ALC285_FIXUP_HP_GPIO_LED
,
ALC285_FIXUP_HP_MUTE_LED
,
ALC236_FIXUP_HP_GPIO_LED
,
...
...
@@ -8405,6 +8407,24 @@ static const struct hda_fixup alc269_fixups[] = {
[
ALC294_FIXUP_ASUS_GU502_HP
]
=
{
.
type
=
HDA_FIXUP_FUNC
,
.
v
.
func
=
alc294_fixup_gu502_hp
,
},
[
ALC294_FIXUP_ASUS_G513_PINS
]
=
{
.
type
=
HDA_FIXUP_PINS
,
.
v
.
pins
=
(
const
struct
hda_pintbl
[])
{
{
0x19
,
0x03a11050
},
/* front HP mic */
{
0x1a
,
0x03a11c30
},
/* rear external mic */
{
0x21
,
0x03211420
},
/* front HP out */
{
}
},
},
[
ALC285_FIXUP_ASUS_G533Z_PINS
]
=
{
.
type
=
HDA_FIXUP_PINS
,
.
v
.
pins
=
(
const
struct
hda_pintbl
[])
{
{
0x14
,
0x90170120
},
{
}
},
.
chained
=
true
,
.
chain_id
=
ALC294_FIXUP_ASUS_G513_PINS
,
},
[
ALC294_FIXUP_ASUS_COEF_1B
]
=
{
.
type
=
HDA_FIXUP_VERBS
,
...
...
@@ -9149,6 +9169,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK
(
0x1028
,
0x0871
,
"Dell Precision 3630"
,
ALC255_FIXUP_DELL_HEADSET_MIC
),
SND_PCI_QUIRK
(
0x1028
,
0x0872
,
"Dell Precision 3630"
,
ALC255_FIXUP_DELL_HEADSET_MIC
),
SND_PCI_QUIRK
(
0x1028
,
0x0873
,
"Dell Precision 3930"
,
ALC255_FIXUP_DUMMY_LINEOUT_VERB
),
SND_PCI_QUIRK
(
0x1028
,
0x087d
,
"Dell Precision 5530"
,
ALC289_FIXUP_DUAL_SPK
),
SND_PCI_QUIRK
(
0x1028
,
0x08ad
,
"Dell WYSE AIO"
,
ALC225_FIXUP_DELL_WYSE_AIO_MIC_NO_PRESENCE
),
SND_PCI_QUIRK
(
0x1028
,
0x08ae
,
"Dell WYSE NB"
,
ALC225_FIXUP_DELL1_MIC_NO_PRESENCE
),
SND_PCI_QUIRK
(
0x1028
,
0x0935
,
"Dell"
,
ALC274_FIXUP_DELL_AIO_LINEOUT_VERB
),
...
...
@@ -9165,6 +9186,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK
(
0x1028
,
0x0a9d
,
"Dell Latitude 5430"
,
ALC269_FIXUP_DELL4_MIC_NO_PRESENCE
),
SND_PCI_QUIRK
(
0x1028
,
0x0a9e
,
"Dell Latitude 5430"
,
ALC269_FIXUP_DELL4_MIC_NO_PRESENCE
),
SND_PCI_QUIRK
(
0x1028
,
0x0b19
,
"Dell XPS 15 9520"
,
ALC289_FIXUP_DUAL_SPK
),
SND_PCI_QUIRK
(
0x1028
,
0x0b1a
,
"Dell Precision 5570"
,
ALC289_FIXUP_DUAL_SPK
),
SND_PCI_QUIRK
(
0x1028
,
0x164a
,
"Dell"
,
ALC293_FIXUP_DELL1_MIC_NO_PRESENCE
),
SND_PCI_QUIRK
(
0x1028
,
0x164b
,
"Dell"
,
ALC293_FIXUP_DELL1_MIC_NO_PRESENCE
),
SND_PCI_QUIRK
(
0x103c
,
0x1586
,
"HP"
,
ALC269_FIXUP_HP_MUTE_LED_MIC2
),
...
...
@@ -9292,6 +9314,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK
(
0x103c
,
0x8896
,
"HP EliteBook 855 G8 Notebook PC"
,
ALC285_FIXUP_HP_MUTE_LED
),
SND_PCI_QUIRK
(
0x103c
,
0x8898
,
"HP EliteBook 845 G8 Notebook PC"
,
ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST
),
SND_PCI_QUIRK
(
0x103c
,
0x88d0
,
"HP Pavilion 15-eh1xxx (mainboard 88D0)"
,
ALC287_FIXUP_HP_GPIO_LED
),
SND_PCI_QUIRK
(
0x103c
,
0x8902
,
"HP OMEN 16"
,
ALC285_FIXUP_HP_MUTE_LED
),
SND_PCI_QUIRK
(
0x103c
,
0x896e
,
"HP EliteBook x360 830 G9"
,
ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED
),
SND_PCI_QUIRK
(
0x103c
,
0x8971
,
"HP EliteBook 830 G9"
,
ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED
),
SND_PCI_QUIRK
(
0x103c
,
0x8972
,
"HP EliteBook 840 G9"
,
ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED
),
...
...
@@ -9339,10 +9362,11 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK
(
0x1043
,
0x13b0
,
"ASUS Z550SA"
,
ALC256_FIXUP_ASUS_MIC
),
SND_PCI_QUIRK
(
0x1043
,
0x1427
,
"Asus Zenbook UX31E"
,
ALC269VB_FIXUP_ASUS_ZENBOOK
),
SND_PCI_QUIRK
(
0x1043
,
0x1517
,
"Asus Zenbook UX31A"
,
ALC269VB_FIXUP_ASUS_ZENBOOK_UX31A
),
SND_PCI_QUIRK
(
0x1043
,
0x1662
,
"ASUS GV301QH"
,
ALC294_FIXUP_ASUS_DUAL_SPK
),
SND_PCI_QUIRK
(
0x1043
,
0x16b2
,
"ASUS GU603"
,
ALC289_FIXUP_ASUS_GA401
),
SND_PCI_QUIRK
(
0x1043
,
0x16e3
,
"ASUS UX50"
,
ALC269_FIXUP_STEREO_DMIC
),
SND_PCI_QUIRK
(
0x1043
,
0x1740
,
"ASUS UX430UA"
,
ALC295_FIXUP_ASUS_DACS
),
SND_PCI_QUIRK
(
0x1043
,
0x17d1
,
"ASUS UX431FL"
,
ALC294_FIXUP_ASUS_DUAL_SPK
),
SND_PCI_QUIRK
(
0x1043
,
0x1662
,
"ASUS GV301QH"
,
ALC294_FIXUP_ASUS_DUAL_SPK
),
SND_PCI_QUIRK
(
0x1043
,
0x1881
,
"ASUS Zephyrus S/M"
,
ALC294_FIXUP_ASUS_GX502_PINS
),
SND_PCI_QUIRK
(
0x1043
,
0x18b1
,
"Asus MJ401TA"
,
ALC256_FIXUP_ASUS_HEADSET_MIC
),
SND_PCI_QUIRK
(
0x1043
,
0x18f1
,
"Asus FX505DT"
,
ALC256_FIXUP_ASUS_HEADSET_MIC
),
...
...
@@ -9358,14 +9382,16 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK
(
0x1043
,
0x1b13
,
"Asus U41SV"
,
ALC269_FIXUP_INV_DMIC
),
SND_PCI_QUIRK
(
0x1043
,
0x1bbd
,
"ASUS Z550MA"
,
ALC255_FIXUP_ASUS_MIC_NO_PRESENCE
),
SND_PCI_QUIRK
(
0x1043
,
0x1c23
,
"Asus X55U"
,
ALC269_FIXUP_LIMIT_INT_MIC_BOOST
),
SND_PCI_QUIRK
(
0x1043
,
0x1c92
,
"ASUS ROG Strix G15"
,
ALC285_FIXUP_ASUS_G533Z_PINS
),
SND_PCI_QUIRK
(
0x1043
,
0x1ccd
,
"ASUS X555UB"
,
ALC256_FIXUP_ASUS_MIC
),
SND_PCI_QUIRK
(
0x1043
,
0x1d42
,
"ASUS Zephyrus G14 2022"
,
ALC289_FIXUP_ASUS_GA401
),
SND_PCI_QUIRK
(
0x1043
,
0x1d4e
,
"ASUS TM420"
,
ALC256_FIXUP_ASUS_HPE
),
SND_PCI_QUIRK
(
0x1043
,
0x1e11
,
"ASUS Zephyrus G15"
,
ALC289_FIXUP_ASUS_GA502
),
SND_PCI_QUIRK
(
0x1043
,
0x1e51
,
"ASUS Zephyrus M15"
,
ALC294_FIXUP_ASUS_GU502_PINS
),
SND_PCI_QUIRK
(
0x1043
,
0x1e5e
,
"ASUS ROG Strix G513"
,
ALC294_FIXUP_ASUS_G513_PINS
),
SND_PCI_QUIRK
(
0x1043
,
0x1e8e
,
"ASUS Zephyrus G15"
,
ALC289_FIXUP_ASUS_GA401
),
SND_PCI_QUIRK
(
0x1043
,
0x1c52
,
"ASUS Zephyrus G15 2022"
,
ALC289_FIXUP_ASUS_GA401
),
SND_PCI_QUIRK
(
0x1043
,
0x1f11
,
"ASUS Zephyrus G14"
,
ALC289_FIXUP_ASUS_GA401
),
SND_PCI_QUIRK
(
0x1043
,
0x1d42
,
"ASUS Zephyrus G14 2022"
,
ALC289_FIXUP_ASUS_GA401
),
SND_PCI_QUIRK
(
0x1043
,
0x16b2
,
"ASUS GU603"
,
ALC289_FIXUP_ASUS_GA401
),
SND_PCI_QUIRK
(
0x1043
,
0x3030
,
"ASUS ZN270IE"
,
ALC256_FIXUP_ASUS_AIO_GPIO2
),
SND_PCI_QUIRK
(
0x1043
,
0x831a
,
"ASUS P901"
,
ALC269_FIXUP_STEREO_DMIC
),
SND_PCI_QUIRK
(
0x1043
,
0x834a
,
"ASUS S101"
,
ALC269_FIXUP_STEREO_DMIC
),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment