Skip to content

Commit 5e18d47

Browse files
HarleyGodfreytlaurion
authored andcommitted
* Adding patch to fix t480s headphone jack.
Repro: go to https://review.coreboot.org/c/coreboot/+/90482, click download, check command line for "Format Patch"; redirect the patch to file patches/coreboot-25.09/0013-mb-lenovo-t480s-Fix-headphone-jack.diff: git fetch https://review.coreboot.org/coreboot refs/changes/82/90482/5 && git format-patch -1 --stdout FETCH_HEAD > patches/coreboot-25.09/0013-mb-lenovo-t480s-Fix-headphone-jack.diff Signed-off-by: Harley Godfrey <harley@godfrey.online> Signed-off-by: Thierry Laurion <insurgo@riseup.net>
1 parent 3b656d0 commit 5e18d47

1 file changed

Lines changed: 191 additions & 0 deletions

File tree

Lines changed: 191 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,191 @@
1+
From a5d3c4c119ae81030c9904b1e671c75bf8fb9293 Mon Sep 17 00:00:00 2001
2+
From: "Johann C. Rode" <jcrode@gmx.net>
3+
Date: Thu, 11 Dec 2025 16:59:43 -0800
4+
Subject: [PATCH] mb/lenovo/sklkbl: Fix headphone jack
5+
6+
This proliferates the fixes from commit e5d10e5d23d3, CB:90023 ("mb/
7+
lenovo/t480: Fix headphone jack") to the other SKL/KBL Thinkpad
8+
variants T580, T470s, and T480s. This has been only validated on the
9+
former two machines, but since the hardware changes between the
10+
different models appear to be minimal, it should be safe to deploy
11+
this fix to the T480s variant blindly.
12+
13+
Change-Id: I1edf8dc33231b9d1e1cf2eaf3f4f296736b7be32
14+
Signed-off-by: Johann C. Rode <jcrode@gmx.net>
15+
Reviewed-on: https://review.coreboot.org/c/coreboot/+/90482
16+
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
17+
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
18+
---
19+
.../sklkbl_thinkpad/variants/t470s/hda_verb.c | 37 ++++++++++++++++++-
20+
.../sklkbl_thinkpad/variants/t480s/hda_verb.c | 37 ++++++++++++++++++-
21+
.../sklkbl_thinkpad/variants/t580/hda_verb.c | 37 ++++++++++++++++++-
22+
3 files changed, 108 insertions(+), 3 deletions(-)
23+
24+
diff --git a/src/mainboard/lenovo/sklkbl_thinkpad/variants/t470s/hda_verb.c b/src/mainboard/lenovo/sklkbl_thinkpad/variants/t470s/hda_verb.c
25+
index 1901127390..952ace72f4 100644
26+
--- a/src/mainboard/lenovo/sklkbl_thinkpad/variants/t470s/hda_verb.c
27+
+++ b/src/mainboard/lenovo/sklkbl_thinkpad/variants/t470s/hda_verb.c
28+
@@ -5,7 +5,7 @@
29+
const u32 cim_verb_data[] = {
30+
0x10ec0298, // Vendor/Device ID: Realtek ALC298
31+
0x17aa224b, // Subsystem ID
32+
- 12,
33+
+ 19,
34+
AZALIA_SUBVENDOR(0, 0x17aa224b),
35+
36+
AZALIA_PIN_CFG(0, 0x12, AZALIA_PIN_DESC(
37+
@@ -52,6 +52,41 @@ const u32 cim_verb_data[] = {
38+
2, 0
39+
)),
40+
41+
+ //==========Widget node 0x20 - 0 :Hidden register SW reset
42+
+ 0x0205001A,
43+
+ 0x0204C003,
44+
+ 0x0205001A,
45+
+ 0x0204C003,
46+
+ 0x05850000,
47+
+ 0x0584F880,
48+
+ 0x05850000,
49+
+ 0x0584F880,
50+
+ //==========Widget node 0x20 - 1 : ClassD 2W
51+
+ 0x02050038,
52+
+ 0x02048981,
53+
+ 0x0205001B,
54+
+ 0x02040A4B,
55+
+ //==========Widget node 0x20 - 2
56+
+ 0x0205003C,
57+
+ 0x02043154,
58+
+ 0x0205003C,
59+
+ 0x02043114,
60+
+ //==========Widget node 0x20 - 3 :
61+
+ 0x02050046,
62+
+ 0x02040004,
63+
+ 0x05750003,
64+
+ 0x057409A3,
65+
+ //==========Widget node 0x20 - 4 :JD1 enable 1JD port for HP JD
66+
+ 0x02050009,
67+
+ 0x02046003,
68+
+ 0x0205000A,
69+
+ 0x02047770,
70+
+ //==========Widget node 0x20 - 5 : Silence data mode Threshold (-84dB)
71+
+ 0x02050037,
72+
+ 0x0204FE15,
73+
+ 0x02050030,
74+
+ 0x02049004,
75+
+
76+
0x80862809, // Vendor/Device ID: Intel Skylake HDMI
77+
0x80860101, // Subsystem ID
78+
4,
79+
diff --git a/src/mainboard/lenovo/sklkbl_thinkpad/variants/t480s/hda_verb.c b/src/mainboard/lenovo/sklkbl_thinkpad/variants/t480s/hda_verb.c
80+
index b1d96c5a76..9eb9287f9b 100644
81+
--- a/src/mainboard/lenovo/sklkbl_thinkpad/variants/t480s/hda_verb.c
82+
+++ b/src/mainboard/lenovo/sklkbl_thinkpad/variants/t480s/hda_verb.c
83+
@@ -5,7 +5,7 @@
84+
const u32 cim_verb_data[] = {
85+
0x10ec0257, // Vendor/Device ID: Realtek ALC257
86+
0x17aa2258, // Subsystem ID
87+
- 11,
88+
+ 18,
89+
AZALIA_SUBVENDOR(0, 0x17aa2258),
90+
91+
AZALIA_PIN_CFG(0, 0x12, AZALIA_PIN_DESC(
92+
@@ -51,6 +51,41 @@ const u32 cim_verb_data[] = {
93+
1, 15
94+
)),
95+
96+
+ //==========Widget node 0x20 - 0 :Hidden register SW reset
97+
+ 0x0205001A,
98+
+ 0x0204C003,
99+
+ 0x0205001A,
100+
+ 0x0204C003,
101+
+ 0x05850000,
102+
+ 0x0584F880,
103+
+ 0x05850000,
104+
+ 0x0584F880,
105+
+ //==========Widget node 0x20 - 1 : ClassD 2W
106+
+ 0x02050038,
107+
+ 0x02048981,
108+
+ 0x0205001B,
109+
+ 0x02040A4B,
110+
+ //==========Widget node 0x20 - 2
111+
+ 0x0205003C,
112+
+ 0x02043154,
113+
+ 0x0205003C,
114+
+ 0x02043114,
115+
+ //==========Widget node 0x20 - 3 :
116+
+ 0x02050046,
117+
+ 0x02040004,
118+
+ 0x05750003,
119+
+ 0x057409A3,
120+
+ //==========Widget node 0x20 - 4 :JD1 enable 1JD port for HP JD
121+
+ 0x02050009,
122+
+ 0x02046003,
123+
+ 0x0205000A,
124+
+ 0x02047770,
125+
+ //==========Widget node 0x20 - 5 : Silence data mode Threshold (-84dB)
126+
+ 0x02050037,
127+
+ 0x0204FE15,
128+
+ 0x02050030,
129+
+ 0x02049004,
130+
+
131+
0x8086280b, // Vendor/Device ID: Intel Kabylake HDMI
132+
0x80860101, // Subsystem ID
133+
4,
134+
diff --git a/src/mainboard/lenovo/sklkbl_thinkpad/variants/t580/hda_verb.c b/src/mainboard/lenovo/sklkbl_thinkpad/variants/t580/hda_verb.c
135+
index 65245c8e21..943d1fbae9 100644
136+
--- a/src/mainboard/lenovo/sklkbl_thinkpad/variants/t580/hda_verb.c
137+
+++ b/src/mainboard/lenovo/sklkbl_thinkpad/variants/t580/hda_verb.c
138+
@@ -5,7 +5,7 @@
139+
const u32 cim_verb_data[] = {
140+
0x10ec0257, // Vendor/Device ID: Realtek ALC257
141+
0x17aa225a, // Subsystem ID
142+
- 11,
143+
+ 18,
144+
AZALIA_SUBVENDOR(0, 0x17aa225a),
145+
146+
AZALIA_PIN_CFG(0, 0x12, AZALIA_PIN_DESC(
147+
@@ -51,6 +51,41 @@ const u32 cim_verb_data[] = {
148+
1, 15
149+
)),
150+
151+
+ //==========Widget node 0x20 - 0 :Hidden register SW reset
152+
+ 0x0205001A,
153+
+ 0x0204C003,
154+
+ 0x0205001A,
155+
+ 0x0204C003,
156+
+ 0x05850000,
157+
+ 0x0584F880,
158+
+ 0x05850000,
159+
+ 0x0584F880,
160+
+ //==========Widget node 0x20 - 1 : ClassD 2W
161+
+ 0x02050038,
162+
+ 0x02048981,
163+
+ 0x0205001B,
164+
+ 0x02040A4B,
165+
+ //==========Widget node 0x20 - 2
166+
+ 0x0205003C,
167+
+ 0x02043154,
168+
+ 0x0205003C,
169+
+ 0x02043114,
170+
+ //==========Widget node 0x20 - 3 :
171+
+ 0x02050046,
172+
+ 0x02040004,
173+
+ 0x05750003,
174+
+ 0x057409A3,
175+
+ //==========Widget node 0x20 - 4 :JD1 enable 1JD port for HP JD
176+
+ 0x02050009,
177+
+ 0x02046003,
178+
+ 0x0205000A,
179+
+ 0x02047770,
180+
+ //==========Widget node 0x20 - 5 : Silence data mode Threshold (-84dB)
181+
+ 0x02050037,
182+
+ 0x0204FE15,
183+
+ 0x02050030,
184+
+ 0x02049004,
185+
+
186+
0x8086280b, // Vendor/Device ID: Intel Kabylake HDMI
187+
0x80860101, // Subsystem ID
188+
4,
189+
--
190+
2.47.3
191+

0 commit comments

Comments
 (0)