Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions blobs/xx80/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,3 +54,7 @@ A guide on how to flash this board (both the Heads rom and the Thunderbolt `tb.b
https://osresearch.net/T480-maximized-flashing/

The upstream documentation is available here. It includes a list of known issues: https://doc.coreboot.org/mainboard/lenovo/t480.html
Please note that some of the listed issues have been fixed under heads by using patches that are not yet merged upstream:
* headphone jack works as expected and is automatically detected when plugged in
* thunderbolt works
* lower USB-C port works
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
From 95532d31c348cfa3d847885e7c4d7d2b97b1d7d7 Mon Sep 17 00:00:00 2001
From: Arthur Heymans <arthur@aheymans.xyz>
Date: Thu, 13 Nov 2025 15:45:46 +0100
Subject: [PATCH] mb/lenovo/t480: Fix headphone jack

Add additional register configuration for the Realtek ALC257 audio
codec on the Lenovo ThinkPad T480. This includes:

- Hidden register SW reset sequence
- ClassD 2W amplifier configuration
- Jack detection (JD1) setup for headphone port
- Silence data mode threshold setting at -84dB

Shamelessly taken from google/brya/variants/pujjolo/hda_verb.c

Change-Id: Ib77138d782ceb9feeaef82935bc1c0d5c3066183
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
---
.../sklkbl_thinkpad/variants/t480/hda_verb.c | 37 ++++++++++++++++++-
1 file changed, 36 insertions(+), 1 deletion(-)

diff --git a/src/mainboard/lenovo/sklkbl_thinkpad/variants/t480/hda_verb.c b/src/mainboard/lenovo/sklkbl_thinkpad/variants/t480/hda_verb.c
index 3a951ce0da..e0caff3db5 100644
--- a/src/mainboard/lenovo/sklkbl_thinkpad/variants/t480/hda_verb.c
+++ b/src/mainboard/lenovo/sklkbl_thinkpad/variants/t480/hda_verb.c
@@ -5,7 +5,7 @@
const u32 cim_verb_data[] = {
0x10ec0257, // Vendor/Device ID: Realtek ALC257
0x17aa225d, // Subsystem ID
- 11,
+ 18,
AZALIA_SUBVENDOR(0, 0x17aa225d),

AZALIA_PIN_CFG(0, 0x12, AZALIA_PIN_DESC(
@@ -51,6 +51,41 @@ const u32 cim_verb_data[] = {
1, 15
)),

+ //==========Widget node 0x20 - 0 :Hidden register SW reset
+ 0x0205001A,
+ 0x0204C003,
+ 0x0205001A,
+ 0x0204C003,
+ 0x05850000,
+ 0x0584F880,
+ 0x05850000,
+ 0x0584F880,
+ //==========Widget node 0x20 - 1 : ClassD 2W
+ 0x02050038,
+ 0x02048981,
+ 0x0205001B,
+ 0x02040A4B,
+ //==========Widget node 0x20 - 2
+ 0x0205003C,
+ 0x02043154,
+ 0x0205003C,
+ 0x02043114,
+ //==========Widget node 0x20 - 3 :
+ 0x02050046,
+ 0x02040004,
+ 0x05750003,
+ 0x057409A3,
+ //==========Widget node 0x20 - 4 :JD1 enable 1JD port for HP JD
+ 0x02050009,
+ 0x02046003,
+ 0x0205000A,
+ 0x02047770,
+ //==========Widget node 0x20 - 5 : Silence data mode Threshold (-84dB)
+ 0x02050037,
+ 0x0204FE15,
+ 0x02050030,
+ 0x02049004,
+
0x8086280b, // Vendor/Device ID: Intel Kabylake HDMI
0x80860101, // Subsystem ID
4,
--
2.47.3