mb/starlabs/starbook/tgl: Use macros for HDA verb table
Rework the HDA verb table using macros. Explicitly disable all pin widgets not used. Use consistent formatting and verbiage in comments. Update verb count. Add HDA verbs for Intel IGD HDMI audio output. TEST=build/boot Win11, ubuntu 25.04 on Starbook TGL, verify all audio inputs/outputs function as expected. Verify verbs loaded via cbmem log. Change-Id: Id9a08c8bd32e0c75f92e8d6b3b8ff6c033608a4f Signed-off-by: Matt DeVillier <matt.devillier@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/89083 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com> Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
This commit is contained in:
parent
15111ebb21
commit
c30163dace
1 changed files with 58 additions and 15 deletions
|
|
@ -1,31 +1,66 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#include <device/azalia_device.h>
|
||||
#include <device/azalia_codec/realtek.h>
|
||||
|
||||
const u32 cim_verb_data[] = {
|
||||
/* coreboot specific header */
|
||||
0x10ec0256, /* Codec Vendor / Device ID: Realtek ALC256 */
|
||||
0x10ec1200, /* Subsystem ID */
|
||||
38, /* Number of jacks (NID entries) */
|
||||
0x10ec0256, /* Codec Vendor / Device ID: Realtek ALC256 */
|
||||
0x10ec1200, /* Subsystem ID */
|
||||
36, /* Number of verb entries */
|
||||
|
||||
/* Reset Codec First */
|
||||
AZALIA_RESET(0x1),
|
||||
|
||||
/* HDA Codec Subsystem ID: 0x10EC1200 */
|
||||
/* HDA Codec Subsystem ID */
|
||||
AZALIA_SUBVENDOR(0, 0x10ec1200),
|
||||
|
||||
/* Pin Widget Verb-table */
|
||||
AZALIA_PIN_CFG(0, 0x01, 0x00000000),
|
||||
AZALIA_PIN_CFG(0, 0x12, 0x90a61120),
|
||||
AZALIA_PIN_CFG(0, 0x13, 0x40000000),
|
||||
AZALIA_PIN_CFG(0, 0x14, 0x90171110),
|
||||
AZALIA_PIN_CFG(0, 0x18, AZALIA_PIN_CFG_NC(0)),
|
||||
AZALIA_PIN_CFG(0, 0x19, 0x04ab1020),
|
||||
AZALIA_PIN_CFG(0, 0x1a, AZALIA_PIN_CFG_NC(0)),
|
||||
AZALIA_PIN_CFG(0, 0x1b, 0x40700001),
|
||||
AZALIA_PIN_CFG(0, 0x1d, AZALIA_PIN_CFG_NC(0)),
|
||||
AZALIA_PIN_CFG(0, 0x1e, AZALIA_PIN_CFG_NC(0)),
|
||||
AZALIA_PIN_CFG(0, 0x21, 0x042b1010),
|
||||
AZALIA_PIN_CFG(0, ALC256_DMIC12, AZALIA_PIN_DESC(
|
||||
AZALIA_INTEGRATED,
|
||||
AZALIA_MOBILE_LID_INSIDE,
|
||||
AZALIA_MIC_IN,
|
||||
AZALIA_OTHER_DIGITAL,
|
||||
AZALIA_COLOR_UNKNOWN,
|
||||
AZALIA_NO_JACK_PRESENCE_DETECT,
|
||||
3,
|
||||
0
|
||||
)),
|
||||
AZALIA_PIN_CFG(0, ALC256_SPEAKERS, AZALIA_PIN_DESC(
|
||||
AZALIA_INTEGRATED,
|
||||
AZALIA_INTERNAL | AZALIA_FRONT,
|
||||
AZALIA_SPEAKER,
|
||||
AZALIA_OTHER_ANALOG,
|
||||
AZALIA_COLOR_UNKNOWN,
|
||||
AZALIA_NO_JACK_PRESENCE_DETECT,
|
||||
1,
|
||||
0
|
||||
)),
|
||||
AZALIA_PIN_CFG(0, ALC256_MIC2, AZALIA_PIN_DESC(
|
||||
AZALIA_JACK,
|
||||
AZALIA_EXTERNAL_PRIMARY_CHASSIS | AZALIA_RIGHT,
|
||||
AZALIA_MIC_IN,
|
||||
AZALIA_STEREO_MONO_1_8,
|
||||
AZALIA_BLACK,
|
||||
AZALIA_JACK_PRESENCE_DETECT,
|
||||
2,
|
||||
0
|
||||
)),
|
||||
AZALIA_PIN_CFG(0, ALC256_HP_OUT, AZALIA_PIN_DESC(
|
||||
AZALIA_JACK,
|
||||
AZALIA_EXTERNAL_PRIMARY_CHASSIS | AZALIA_RIGHT,
|
||||
AZALIA_HP_OUT,
|
||||
AZALIA_STEREO_MONO_1_8,
|
||||
AZALIA_BLACK,
|
||||
AZALIA_JACK_PRESENCE_DETECT,
|
||||
1,
|
||||
0
|
||||
)),
|
||||
AZALIA_PIN_CFG(0, ALC256_DMIC34, AZALIA_PIN_CFG_NC(0)),
|
||||
AZALIA_PIN_CFG(0, ALC256_LINE1, AZALIA_PIN_CFG_NC(0)),
|
||||
AZALIA_PIN_CFG(0, ALC256_LINE2, AZALIA_PIN_CFG_NC(0)),
|
||||
AZALIA_PIN_CFG(0, ALC256_PC_BEEP, AZALIA_PIN_CFG_NC(0)),
|
||||
AZALIA_PIN_CFG(0, ALC256_SPDIF_OUT, AZALIA_PIN_CFG_NC(0)),
|
||||
|
||||
/* Reset to D0 */
|
||||
0x00170500,
|
||||
|
|
@ -204,6 +239,14 @@ const u32 cim_verb_data[] = {
|
|||
0x0204EBC4,
|
||||
0x02050020,
|
||||
0x020451FF,
|
||||
|
||||
/* Intel TGL IGD HDMI */
|
||||
0x80862812, /* Codec Vendor / Device ID: Intel */
|
||||
0x80860101, /* Subsystem ID */
|
||||
2, /* Number of 4 dword sets */
|
||||
|
||||
AZALIA_SUBVENDOR(2, 0x80860101),
|
||||
AZALIA_PIN_CFG(2, 0x04, 0x18560010),
|
||||
};
|
||||
|
||||
const u32 pc_beep_verbs[] = {};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue