alder_lake_bios/Board/Oem/L05AlderLakePMultiBoardPkg/Library/PeiOemSvcKernelLib/OemSvcGetVerbTable.c

4584 lines
87 KiB
C

/** @file
This OemService is part of setting Verb Table. The function is created for setting verb table
to support Multi-Sku and return the table to common code to program.
;******************************************************************************
;* Copyright (c) 2014 - 2017, Insyde Software Corp. All Rights Reserved.
;*
;* You may not reproduce, distribute, publish, display, perform, modify, adapt,
;* transmit, broadcast, present, recite, release, license or otherwise exploit
;* any part of this publication in any form, by any means, without the prior
;* written permission of Insyde Software Corporation.
;*
;******************************************************************************
*/
#include <MultiSkuInfoCommonDef.h>
#include <Ppi/VerbTable.h>
#include <Library/PeiOemSvcKernelLib.h>
#include <Library/PeiInsydeChipsetLib.h>
#include <Library/DebugLib.h>
//[-start-210528-FLINT00001-add]//
#ifdef C970_SUPPORT
#include <Library/GpioLib.h>
#define GPIO_VER2_LP_GPP_A21 0x09020015 //SPK board ID
#endif
//[-start-210729-YUNLEI0117-modify]//
//[start-210720-STORM1100-modify]//
#ifdef C770_SUPPORT
#include <Library/GpioLib.h>
#define GPIO_VER2_LP_GPP_A21 0x09020015 //SPK board ID
#include <Library/OemSvcLfcPeiGetBoardID.h>
#endif
//[end-210720-STORM1100-modify]//
//[-end-210729-YUNLEI0117-modify]//
//[-end-210528-FLINT00001-add]//
//[-start-210803-QINGLIN0008-add]//
#ifdef S370_SUPPORT
#include <Library/OemSvcLfcPeiGetBoardID.h>
#endif
//[-end-210803-QINGLIN0008-add]//
//[-start-211108-Dennis0008-add]//
#include <Ppi/ReadOnlyVariable2.h>
#include <Library/PeiServicesLib.h>
#include <Guid/DebugMask.h>
//[-end-211108-Dennis0008-add]//
//
// data type definitions
//
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Sample : //
// //
// #define OEM_VERB_TABLE_ID_(n) n //
// //
// #define OEM_VERB_TABLE_(n)_HEADER(a) 0x10EC0880, // Vendor ID / Device ID //
// 0x00000000, // SubSystem ID //
// 0x02, // RevisionId //
// 0x01, // Front panel support ( 1 = Yes, 2 = No ) //
// 0x000A, // Number of Rear Jacks = 10 //
// 0x0002 // Number of Front Jacks = 2 //
// //
// #define OEM_VERB_TABLE_(n)_DATA(a) 0x01171CF0,0x01171D11,0x01171E11,0x01171F41, // NID(0x11): 0x411111F0 //
// 0x01271C40,0x01271D09,0x01271EA3,0x01271F99, // NID(0x12): 0x99A30940 //
// //
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// To define Verb Table ID.
//
#if 0
// Sample code for VerbTable
// HdaVerbTableAlc700
#define OEM_VERB_TABLE_ID_1 1
//
// VerbTable: (Realtek ALC700) CNL RVP
// Revision ID = 0xff
// Codec Verb Table for CNL PCH boards
// Codec Address: CAd value (0/1/2)
// Codec Vendor: 0x10EC0700
//
#define OEM_VERB_TABLE_1_HEADER1 0x10EC0700, \
0x00000000, \
0xFF, \
0x01, \
161, \
0x0
//===================================================================================================
//
// Realtek Semiconductor Corp.
//
//===================================================================================================
//Realtek High Definition Audio Configuration - Version : 5.0.3.0
//Realtek HD Audio Codec : ALC700
//PCI PnP ID : PCI\VEN_8086&DEV_2668&SUBSYS_72708086
//HDA Codec PnP ID : HDAUDIO\FUNC_01&VEN_10EC&DEV_0700&SUBSYS_10EC10F2
//The number of verb command block : 17
// NID 0x12 : 0x411111F0
// NID 0x13 : 0x40000000
// NID 0x14 : 0x411111F0
// NID 0x15 : 0x411111F0
// NID 0x16 : 0x411111F0
// NID 0x17 : 0x90170110
// NID 0x18 : 0x411111F0
// NID 0x19 : 0x04A11030
// NID 0x1A : 0x411111F0
// NID 0x1B : 0x411111F0
// NID 0x1D : 0x40622005
// NID 0x1E : 0x411111F0
// NID 0x1F : 0x411111F0
// NID 0x21 : 0x04211020
// NID 0x29 : 0x411111F0
//===== HDA Codec Subsystem ID Verb-table =====
//HDA Codec Subsystem ID : 0x10EC10F2
#define OEM_VERB_TABLE_1_DATA1 0x001720F2, \
0x00172110, \
0x001722EC, \
0x00172310, \
0x0017FF00, \
0x0017FF00, \
0x0017FF00, \
0x0017FF00, \
0x01271C00, \
0x01271D00, \
0x01271E00, \
0x01271F40, \
0x01371C00, \
0x01371D00, \
0x01371E00, \
0x01371F40, \
0x01471CF0, \
0x01471D11, \
0x01471E11, \
0x01471F41, \
0x01571CF0, \
0x01571D11, \
0x01571E11, \
0x01571F41, \
0x01671CF0, \
0x01671D11, \
0x01671E11, \
0x01671F41, \
0x01771C10, \
0x01771D01, \
0x01771E17, \
0x01771F90, \
0x01871CF0, \
0x01871D11, \
0x01871E11, \
0x01871F41, \
0x01971C30, \
0x01971D10, \
0x01971EA1, \
0x01971F04, \
0x01A71CF0, \
0x01A71D11, \
0x01A71E11, \
0x01A71F41, \
0x01B71CF0, \
0x01B71D11, \
0x01B71E11, \
0x01B71F41, \
0x01D71C05, \
0x01D71D20, \
0x01D71E62, \
0x01D71F40, \
0x01E71CF0, \
0x01E71D11, \
0x01E71E11, \
0x01E71F41, \
0x01F71CF0, \
0x01F71D11, \
0x01F71E11, \
0x01F71F41, \
0x02171C20, \
0x02171D10, \
0x02171E21, \
0x02171F04, \
0x02971CF0, \
0x02971D11, \
0x02971E11, \
0x02971F41, \
0x02050045, \
0x02045289, \
0x0205004A, \
0x0204201B, \
0x05850000, \
0x05843888, \
0x0205006F, \
0x02042C0B, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040000, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040004, \
0x02050028, \
0x02040600, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204003C, \
0x02050028, \
0x0204FFD0, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040080, \
0x02050028, \
0x02040080, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040080, \
0x02050028, \
0x02040880, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204003A, \
0x02050028, \
0x02040DFE, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006A, \
0x02050028, \
0x0204005D, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006C, \
0x02050028, \
0x02040442, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040005, \
0x02050028, \
0x02040880, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040006, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040008, \
0x02050028, \
0x0204B000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204002E, \
0x02050028, \
0x02040800, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006A, \
0x02050028, \
0x020400C3, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006C, \
0x02050028, \
0x0204D4A0, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006A, \
0x02050028, \
0x020400CC, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006C, \
0x02050028, \
0x0204400A, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006A, \
0x02050028, \
0x020400C1, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006C, \
0x02050028, \
0x02040320, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040039, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204003B, \
0x02050028, \
0x0204FFFF, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204003C, \
0x02050028, \
0x0204FC20, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204003A, \
0x02050028, \
0x02041DFE, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C0, \
0x02050028, \
0x020401FA, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C1, \
0x02050028, \
0x0204DE23, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C2, \
0x02050028, \
0x02041C00, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C3, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C4, \
0x02050028, \
0x02040200, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C5, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C6, \
0x02050028, \
0x020403F5, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C7, \
0x02050028, \
0x0204AF1B, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C8, \
0x02050028, \
0x02041E0A, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400C9, \
0x02050028, \
0x0204368E, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400CA, \
0x02050028, \
0x020401FA, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400CB, \
0x02050028, \
0x0204DE23, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400CC, \
0x02050028, \
0x02041C00, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400CD, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400CE, \
0x02050028, \
0x02040200, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400CF, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400D0, \
0x02050028, \
0x020403F5, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400D1, \
0x02050028, \
0x0204AF1B, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400D2, \
0x02050028, \
0x02041E0A, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x020400D3, \
0x02050028, \
0x0204368E, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040040, \
0x02050028, \
0x0204800F, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040062, \
0x02050028, \
0x02048000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040063, \
0x02050028, \
0x02044848, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040064, \
0x02050028, \
0x02040800, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040065, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040066, \
0x02050028, \
0x02044004, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040067, \
0x02050028, \
0x02040802, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040068, \
0x02050028, \
0x0204890F, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040069, \
0x02050028, \
0x0204E021, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040070, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040071, \
0x02050000, \
0x02043330, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040072, \
0x02050000, \
0x02043333, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040073, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040074, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040075, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040076, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040050, \
0x02050028, \
0x020402EC, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040051, \
0x02050028, \
0x02044909, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040052, \
0x02050028, \
0x020440B0, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040046, \
0x02050028, \
0x0204C22E, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040047, \
0x02050028, \
0x02040C00, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040048, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040049, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204004A, \
0x02050028, \
0x02040000, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204004B, \
0x02050028, \
0x02041C00, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006A, \
0x02050028, \
0x02040090, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204006C, \
0x02050028, \
0x0204721F, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x0204009E, \
0x02050028, \
0x02040001, \
0x02050029, \
0x0204B024, \
0x02050024, \
0x02040010, \
0x02050026, \
0x02040004, \
0x02050028, \
0x02040500, \
0x02050029, \
0x0204B024
//
// To include verb table 1 with 1 codec header/data
// To congregate the verb table header/data.
//
#ifdef OEM_VERB_TABLE_ID_1
DEFINE_VERB_TABLE_LOCAL_HEADER_DATA_1(OEM_VERB_TABLE_ID_1);
COLLECT_DEFINE_VERB_TABLE_LOCAL_HEADER_DATA_1(OEM_VERB_TABLE_ID_1);
#endif
#endif
//[-start-210616-FLINT00005-modify]//
//[-start-210519-KEBIN00001-modify]//
#ifdef C970_SUPPORT
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mYogaC970VerbTableHeader = {
0x10EC0287,\
0x00000000,\
0xFF, \
0x01, \
0x003D, \
0x0000
};
//[-end-210616-FLINT00005-modify]//
//;Realtek High Definition Audio Configuration - Version : 5.0.3.2
//;Realtek HD Audio Codec : ALC287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_381C17AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0287&SUBSYS_17AA3863
//;The number of verb command block : 13
//
//; NID 0x12 : 0x40000000
//; NID 0x13 : 0x411111F0
//; NID 0x14 : 0x90170120
//; NID 0x17 : 0x411111F0
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11030
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4047BA45
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
//[-start-210616-FLINT00005-modify]//
UINT32 mYogaC970_Data[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3863
0x00172063,
0x00172138,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;===== 1bit reset =====
0x0205001A,
0x0204C003,
0x0205001A,
0x02048003,
//;==========Class D power on Reset
0x0205003C,
0x0204F254,
0x0205003C,
0x0204F214,
//;Pin widget 0x12 - DMIC
0x01271C00,
0x01271D00,
0x01271E00,
0x01271F40,
//;Pin widget 0x13 - DMIC
0x01371CF0,
0x01371D11,
0x01371E11,
0x01371F41,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x17 - I2S OUT
//[-start-210630-FLINT00008-modify]//
0x01771CF0,
0x01771D11,
0x01771E11,
0x01771F41,
//[-end-210630-FLINT00008-modify]//
//;Pin widget 0x18 - I2S IN
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C30,
0x01971D10,
0x01971EA1,
0x01971F03,
//;Pin widget 0x1A - NPC
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C6D,
0x01D71D1A,
0x01D71E47,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F03,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode and pull up internally)
0x02050009,
0x02040000,
0x0205000A,
0x0204777A,
//;==========ADC09h gain resolution select 0.75db/step & Class D output power
0x05C5000F,
0x05C40000,
0x02050038,
0x02048909,
//;Pin widget 0x20 -
0x02050045,
0x02045289,
0x0205004A,
0x02042030,
//;Pin widget 0x20
0x02050040,
0x02048800,
0x02050010,
0x02048B06,
//;Pin widget 0x20 - 1
0x0205004A,
0x02042020,
0x0205000C, //:beeppath
0x0204813F,
//;delay 1ms
//;DOS BEEP PATH
//EQVerbtable
//disable EQ first
0x05350000,
0x0534202A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001E,
0x05340800,
//48K
0x05350005,
0x05340344,
0x05350006,
0x053412B0,
0x05350007,
0x05341E9E,
0x05350008,
0x05346EFE,
0x05350009,
0x053401A9,
0x0535000A,
0x053468EC,
0x0535000B,
0x05341C00,
0x0535000C,
0x05340000,
0x0535000D,
0x05340200,
0x0535000E,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05440000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
//48K
0x05450005,
0x05440344,
0x05450006,
0x054412B0,
0x05450007,
0x05441E9E,
0x05450008,
0x05446EFE,
0x05450009,
0x054401A9,
0x0545000A,
0x054468EC,
0x0545000B,
0x05441C00,
0x0545000C,
0x05440000,
0x0545000D,
0x05440200,
0x0545000E,
0x05440000,
0x05350000,
0x0534C02A,
0x02050038,
0x02047909,
0x05350002,
0x05348000,
//!delay:1
//DOS BEEP PATH
0x01D70700,
0x02337100,
0x00820031,
0x00870610,
0x00837017,
0x01770103,
0x01770700,
0x0173B000,
//TI AMP INIT
0x02050024,
0x02040041,
0x02050026,
0x02040000,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x0204007F,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040001,
0x02050028,
0x02040001,
0x02050029,
0x0204B020,
0x02050024,
0x02040046,
0x02050026,
0x02040000,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x0204007F,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040001,
0x02050028,
0x02040001,
0x02050029,
0x0204B020,
0x05A50004,
0x05A41113,
0x05A50004,
0x05A41113,
//delay:1
0x02050024,
0x02040041,
0x02050026,
0x0204003C,
0x02050028,
0x02040011,
0x02050029,
0x0204B020,
0x02050026,
0x0204000C,
0x02050028,
0x0204001A,
0x02050029,
0x0204B020,
0x02050026,
0x02040003,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040002,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050024,
0x02040046,
0x02050026,
0x0204003C,
0x02050028,
0x02040011,
0x02050029,
0x0204B020,
0x02050026,
0x0204000C,
0x02050028,
0x0204002A,
0x02050029,
0x0204B020,
0x02050026,
0x02040003,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040002,
0x02050028,
0x02040000,
0x02050029,
0x0204B020
};
//[-end-210616-FLINT00005-modify]//
//[-start-210528-FLINT00001-modify]//
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableYogaC970_ADL_Luxshare[]={
{&mYogaC970VerbTableHeader,mYogaC970_Data},
{NULL,NULL}
};
//[-end-210528-FLINT00001-modify]//
//[-end-210519-KEBIN00001-add]//
//[-start-210528-FLINT00001-add]//
//[-start-210616-FLINT00005-modify]//
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mYogaC970SPK22VerbTableHeader = {
0x10EC0287,\
0x00000000,\
0xFF, \
0x01, \
0x003D, \
0x0000
};
//[-end-210616-FLINT00005-modify]//
//;Realtek High Definition Audio Configuration - Version : 5.0.3.2
//;Realtek HD Audio Codec : ALC287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_381C17AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0287&SUBSYS_17AA3801
//;The number of verb command block : 13
//; NID 0x12 : 0x40000000
//; NID 0x13 : 0x411111F0
//; NID 0x14 : 0x90170120
//; NID 0x17 : 0x411111F0
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11030
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4047BA45
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
//[-start-210616-FLINT00005-modify]//
UINT32 mYogaC970SPK22_Data[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3801
0x00172001,
0x00172138,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;===== 1bit reset =====
0x0205001A,
0x0204C003,
0x0205001A,
0x02048003,
//;==========Class D power on Reset
0x0205003C,
0x0204F254,
0x0205003C,
0x0204F214,
//;Pin widget 0x12 - DMIC
0x01271C00,
0x01271D00,
0x01271E00,
0x01271F40,
//;Pin widget 0x13 - DMIC
0x01371CF0,
0x01371D11,
0x01371E11,
0x01371F41,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x17 - I2S OUT
//[-start-210630-FLINT00008-modify]//
0x01771CF0,
0x01771D11,
0x01771E11,
0x01771F41,
//[-end-210630-FLINT00008-modify]//
//;Pin widget 0x18 - I2S IN
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C30,
0x01971D10,
0x01971EA1,
0x01971F03,
//;Pin widget 0x1A - NPC
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C6D,
0x01D71D1A,
0x01D71E47,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F03,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode and pull up internally)
0x02050009,
0x02040000,
0x0205000A,
0x0204777A,
//;==========ADC09h gain resolution select 0.75db/step & Class D output power
0x05C5000F,
0x05C40000,
0x02050038,
0x02048909,
//;Pin widget 0x20 -
0x02050045,
0x02045289,
0x0205004A,
0x02042030,
//;Pin widget 0x20
0x02050040,
0x02048800,
0x02050010,
0x02048B06,
//;Pin widget 0x20 - 1
0x0205004A,
0x02042020,
0x0205000C, //:beeppath
0x0204813F,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534202A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
//48K
0x05350005,
0x05340344,
0x05350006,
0x053412B0,
0x05350007,
0x05341E9E,
0x05350008,
0x05346EFE,
0x05350009,
0x053401A9,
0x0535000A,
0x053468EC,
0x0535000B,
0x05341C00,
0x0535000C,
0x05340000,
0x0535000D,
0x05340200,
0x0535000E,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05440000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
//48K
0x05450005,
0x05440344,
0x05450006,
0x054412B0,
0x05450007,
0x05441E9E,
0x05450008,
0x05446EFE,
0x05450009,
0x054401A9,
0x0545000A,
0x054468EC,
0x0545000B,
0x05441C00,
0x0545000C,
0x05440000,
0x0545000D,
0x05440200,
0x0545000E,
0x05440000,
0x05350000,
0x0534C02A,
0x02050038,
0x02047909,
0x05350002,
0x05348000,
//;delay 1ms
//;DOS BEEP PATH
0x01D70700,
0x02337100,
0x00820031,
0x00870610,
0x00837017,
0x01770103,
0x01770700,
0x0173B000,
//;TI AMP INIT
0x02050024,
0x02040041,
0x02050026,
0x02040000,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x0204007F,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040001,
0x02050028,
0x02040001,
0x02050029,
0x0204B020,
0x02050024,
0x02040046,
0x02050026,
0x02040000,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x0204007F,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040001,
0x02050028,
0x02040001,
0x02050029,
0x0204B020,
0x05A50004,
0x05A41113,
0x05A50004,
0x05A41113,
//!delay:1
0x02050024,
0x02040041,
0x02050026,
0x0204003C,
0x02050028,
0x02040011,
0x02050029,
0x0204B020,
0x02050026,
0x0204000C,
0x02050028,
0x0204001A,
0x02050029,
0x0204B020,
0x02050026,
0x02040003,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040002,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050024,
0x02040046,
0x02050026,
0x0204003C,
0x02050028,
0x02040011,
0x02050029,
0x0204B020,
0x02050026,
0x0204000C,
0x02050028,
0x0204002A,
0x02050029,
0x0204B020,
0x02050026,
0x02040003,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040002,
0x02050028,
0x02040000,
0x02050029,
0x0204B020
};
//[-end-210616-FLINT00005-modify]//
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableYogaC970_ADL_YC[]={
{&mYogaC970VerbTableHeader,mYogaC970SPK22_Data},
{NULL,NULL}
};
#endif
//[-end-210528-FLINT00001-add]//
//[-start-210701-YUNLEI0107-add]//
#ifdef C770_SUPPORT
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mYogaC770VerbTableHeader = {
0x10EC0287,\
0x00000000,\
0xFF, \
0x01, \
0x003D, \
0x0000
};
UINT32 mYogaC770_V14_Data[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3869
0x00172069,
0x00172138,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;===== 1bit reset =====
0x0205001A,
0x0204C003,
0x0205001A,
0x02048003,
//;==========Class D power on Reset
0x0205003C,
0x0204F254,
0x0205003C,
0x0204F214,
//;Pin widget 0x12 - DMIC
0x01271C00,
0x01271D00,
0x01271E00,
0x01271F40,
//;Pin widget 0x13 - DMIC
0x01371CF0,
0x01371D11,
0x01371E11,
0x01371F41,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x17 - I2S OUT
//[-start-210630-FLINT00008-modify]//
0x01771CF0,
0x01771D11,
0x01771E11,
0x01771F41,
//[-end-210630-FLINT00008-modify]//
//;Pin widget 0x18 - I2S IN
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C30,
0x01971D10,
0x01971EA1,
0x01971F03,
//;Pin widget 0x1A - NPC
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C6D,
0x01D71D1A,
0x01D71E47,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F03,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode and pull up internally)
0x02050009,
0x02040000,
0x0205000A,
0x0204777A,
//;==========ADC09h gain resolution select 0.75db/step & Class D output power
0x05C5000F,
0x05C40000,
0x02050038,
0x02048909,
//;Pin widget 0x20 -
0x02050045,
0x02045289,
0x0205004A,
0x02042030,
//;Pin widget 0x20
0x02050040,
0x02048800,
0x02050010,
0x02048B06,
//;Pin widget 0x20 - 1
0x0205004A,
0x02042020,
0x0205000C, //:beeppath
0x0204813F,
//;delay 1ms
//;DOS BEEP PATH
0x01D70720,
0x02337100,
0x00820031,
0x00870610,
0x00837017,
0x01770103,
0x01770740,
0x0173B000,
0x05A50004,
0x05A41113,
0x05A50004,
0x05A41113,
//[-start-211027-YULU0002-add]//
//EQVerbtable
//disable EQ first
0x05350000,
0x0534002A,
0x05350000,
0x0534002A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
//48K
0x05350005,
0x05340344,
0x05350006,
0x053412B0,
0x05350007,
0x05341E9E,
0x05350008,
0x05346EFE,
0x05350009,
0x053401A9,
0x0535000A,
0x053468EC,
0x0535000B,
0x05341C00,
0x0535000C,
0x05340000,
0x0535000D,
0x05340200,
0x0535000E,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05440000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
//48K
0x05450005,
0x05440344,
0x05450006,
0x054412B0,
0x05450007,
0x05441E9E,
0x05450008,
0x05446EFE,
0x05450009,
0x054401A9,
0x0545000A,
0x054468EC,
0x0545000B,
0x05441C00,
0x0545000C,
0x05440000,
0x0545000D,
0x05440200,
0x0545000E,
0x05440000,
0x05350000,
0x0534C02A,
0x02050038,
0x02047909,
0x05350002,
0x05348000,
//[-end-211027-YULU0002-add]//
//;TI AMP INIT
0x02050024,
0x02040041,
0x02050026,
0x02040000,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x0204007F,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040001,
0x02050028,
0x02040001,
0x02050029,
0x0204B020,
0x02050024,
0x02040046,
0x02050026,
0x02040000,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x0204007F,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040001,
0x02050028,
0x02040001,
0x02050029,
0x0204B020,
//!delay:1
0x02050024,
0x02040041,
0x02050026,
0x0204003C,
0x02050028,
0x02040011,
0x02050029,
0x0204B020,
0x02050026,
0x0204000C,
0x02050028,
0x0204001A,
0x02050029,
0x0204B020,
0x02050026,
0x02040003,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040002,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050024,
0x02040046,
0x02050026,
0x0204003C,
0x02050028,
0x02040011,
0x02050029,
0x0204B020,
0x02050026,
0x0204000C,
0x02050028,
0x0204002A,
0x02050029,
0x0204B020,
0x02050026,
0x02040003,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040002,
0x02050028,
0x02040000,
0x02050029,
0x0204B020
};
UINT32 mYogaC770_V16_Data[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA386A
0x0017206A,
0x00172138,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;===== 1bit reset =====
0x0205001A,
0x0204C003,
0x0205001A,
0x02048003,
//;==========Class D power on Reset
0x0205003C,
0x0204F254,
0x0205003C,
0x0204F214,
//;Pin widget 0x12 - DMIC
0x01271C00,
0x01271D00,
0x01271E00,
0x01271F40,
//;Pin widget 0x13 - DMIC
0x01371CF0,
0x01371D11,
0x01371E11,
0x01371F41,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x17 - I2S OUT
//[-start-210630-FLINT00008-modify]//
0x01771CF0,
0x01771D11,
0x01771E11,
0x01771F41,
//[-end-210630-FLINT00008-modify]//
//;Pin widget 0x18 - I2S IN
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C30,
0x01971D10,
0x01971EA1,
0x01971F03,
//;Pin widget 0x1A - NPC
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C6D,
0x01D71D1A,
0x01D71E47,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F03,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode and pull up internally)
0x02050009,
0x02040000,
0x0205000A,
0x0204777A,
//;==========ADC09h gain resolution select 0.75db/step & Class D output power
0x05C5000F,
0x05C40000,
0x02050038,
0x02048909,
//;Pin widget 0x20 -
0x02050045,
0x02045289,
0x0205004A,
0x02042030,
//;Pin widget 0x20
0x02050040,
0x02048800,
0x02050010,
0x02048B06,
//;Pin widget 0x20 - 1
0x0205004A,
0x02042020,
0x0205000C, //:beeppath
0x0204813F,
//;delay 1ms
//;DOS BEEP PATH
0x01D70720,
0x02337100,
0x00820031,
0x00870610,
0x00837017,
0x01770103,
0x01770740,
0x0173B000,
0x05A50004,
0x05A41113,
0x05A50004,
0x05A41113,
//[-start-211027-YULU0002-add]//
//EQVerbtable
//disable EQ first
0x05350000,
0x0534002A,
0x05350000,
0x0534002A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
//48K
0x05350005,
0x05340344,
0x05350006,
0x053412B0,
0x05350007,
0x05341E9E,
0x05350008,
0x05346EFE,
0x05350009,
0x053401A9,
0x0535000A,
0x053468EC,
0x0535000B,
0x05341C00,
0x0535000C,
0x05340000,
0x0535000D,
0x05340200,
0x0535000E,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05440000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
//48K
0x05450005,
0x05440344,
0x05450006,
0x054412B0,
0x05450007,
0x05441E9E,
0x05450008,
0x05446EFE,
0x05450009,
0x054401A9,
0x0545000A,
0x054468EC,
0x0545000B,
0x05441C00,
0x0545000C,
0x05440000,
0x0545000D,
0x05440200,
0x0545000E,
0x05440000,
0x05350000,
0x0534C02A,
0x02050038,
0x02047909,
0x05350002,
0x05348000,
//[-end-211027-YULU0002-add]//
//;TI AMP INIT
0x02050024,
0x02040041,
0x02050026,
0x02040000,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x0204007F,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040001,
0x02050028,
0x02040001,
0x02050029,
0x0204B020,
0x02050024,
0x02040046,
0x02050026,
0x02040000,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x0204007F,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040001,
0x02050028,
0x02040001,
0x02050029,
0x0204B020,
//!delay:1
0x02050024,
0x02040041,
0x02050026,
0x0204003C,
0x02050028,
0x02040011,
0x02050029,
0x0204B020,
0x02050026,
0x0204000C,
0x02050028,
0x0204001A,
0x02050029,
0x0204B020,
0x02050026,
0x02040003,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040002,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050024,
0x02040046,
0x02050026,
0x0204003C,
0x02050028,
0x02040011,
0x02050029,
0x0204B020,
0x02050026,
0x0204000C,
0x02050028,
0x0204002A,
0x02050029,
0x0204B020,
0x02050026,
0x02040003,
0x02050028,
0x02040000,
0x02050029,
0x0204B020,
0x02050026,
0x02040002,
0x02050028,
0x02040000,
0x02050029,
0x0204B020
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableYogaC770_V14[]={
{&mYogaC770VerbTableHeader,mYogaC770_V14_Data},
{NULL,NULL}
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableYogaC770_V16[]={
{&mYogaC770VerbTableHeader,mYogaC770_V16_Data},
{NULL,NULL}
};
#endif
//[-end-210701-YUNLEI0107-add]//
//[-start-210817-DABING0002-modify]//
#ifdef S77014_SUPPORT
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mS77014VerbTableHeader = {
0x10EC0257,\
0x00000000,\
0xFF, \
0x01, \
0x001C, \
0x0000
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388217AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA3985
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x40000000
//; NID 0x13 : 0x411111F0
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS77014VerbTableData[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3985
0x00172085,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C00,
0x01271D00,
0x01271E00,
0x01271F40,
//;Pin widget 0x13 - DMIC
0x01371CF0,
0x01371D11,
0x01371E11,
0x01371F41,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 2W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x02048981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS77014[]={
{&mS77014VerbTableHeader, mS77014VerbTableData},
{NULL,NULL}
};
#endif
//[-end-210817-DABING0002-modify]//
//[-start-220318-Ching000037-modify]//
#ifdef S77014IAH_SUPPORT
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mS77014IAHVerbTableHeader = {
0x10EC0257,\
0x00000000,\
0xFF, \
0x01, \
0x001C, \
0x0000
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_389717AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA3A03
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x40000000
//; NID 0x13 : 0x411111F0
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS77014IAHVerbTableData[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3A03
0x00172003,
0x0017213A,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C00,
0x01271D00,
0x01271E00,
0x01271F40,
//;Pin widget 0x13 - DMIC
0x01371CF0,
0x01371D11,
0x01371E11,
0x01371F41,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 2.0W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x02048981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS77014IAH[]={
{&mS77014IAHVerbTableHeader, mS77014IAHVerbTableData},
{NULL,NULL}
};
#endif
//[-end-220318-Ching000037-modify]//
//[-start-210914-DABING0006-modify]//
//[-start-210917-DABING0008-modify]//
//[-start-220124-DABING0035-modify]//
#ifdef S77013_SUPPORT
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mS77013VerbTableHeader = {
0x10EC0257,\
0x00000000,\
0xFF, \
0x01, \
0x0027, \
0x0000
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388F17AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA39ED
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x40000000
//; NID 0x13 : 0x411111F0
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS77013VerbTableData[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA39ED
0x001720ED,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C00,
0x01271D00,
0x01271E00,
0x01271F40,
//;Pin widget 0x13 - DMIC
0x01371CF0,
0x01371D11,
0x01371E11,
0x01371F41,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 2W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x02048981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534003A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341F61,
0x05350004,
0x05340000,
0x05350005,
0x053403F1,
0x05350006,
0x0534C814,
0x05350007,
0x05341E0E,
0x05350008,
0x05340614,
0x05350009,
0x053401F8,
0x0535000A,
0x0534F080,
0x0535000B,
0x05341C00,
0x0535000C,
0x05340000,
0x0535000D,
0x05340200,
0x0535000E,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05440000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441F64,
0x05450004,
0x0544FFA3,
0x05450005,
0x054403F1,
0x05450006,
0x0544C814,
0x05450007,
0x05441E0E,
0x05450008,
0x05440614,
0x05450009,
0x054401F8,
0x0545000A,
0x0544F080,
0x0545000B,
0x05441C00,
0x0545000C,
0x05440000,
0x0545000D,
0x05440200,
0x0545000E,
0x05440000,
0x05350000,
0x0534C03A,
0x02050038,
0x02048901,
0x02050013,
0x0204292F,
0x02050016,
0x02044C50,
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS77013[]={
{&mS77013VerbTableHeader, mS77013VerbTableData},
{NULL,NULL}
};
#endif
//[-end-220124-DABING0035-modify]//
//[-end-210917-DABING0008-modify]//
//[-end-210914-DABING0006-modify]//
//[-start-210723-QINGLIN0001-add]//
#ifdef S570_SUPPORT
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mS570VerbTableHeader = {
0x10EC0257,\
0x00000000,\
0xFF, \
0x01, \
0x001C, \
0x0000
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_387D17AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA3974
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x40000000
//; NID 0x13 : 0x411111F0
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS570VerbTableData[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3974
0x00172074,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C00,
0x01271D00,
0x01271E00,
0x01271F41,
//;Pin widget 0x13 - DMIC
0x01371CF0,
0x01371D11,
0x01371E11,
0x01371F41,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 2W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x02048981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS570[]={
{&mS570VerbTableHeader, mS570VerbTableData},
{NULL,NULL}
};
#endif
//[-end-210723-QINGLIN0001-add]//
//[-start-210803-QINGLIN0008-add]//
#ifdef S370_SUPPORT
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mS370VerbTableHeader = {
0x10EC0257,\
0x00000000,\
0xFF, \
0x01, \
0x001C, \
0x0000
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388117AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA397F
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x90A60130
//; NID 0x13 : 0x40000000
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS370VerbTableData_V14[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA397F
0x0017207F,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C30,
0x01271D01,
0x01271EA6,
0x01271F90,
//;Pin widget 0x13 - DMIC
0x01371C00,
0x01371D00,
0x01371E00,
0x01371F40,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 1.5W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x0204A981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388117AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA3980
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x90A60130
//; NID 0x13 : 0x40000000
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS370VerbTableData_V15[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3980
0x00172080,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C30,
0x01271D01,
0x01271EA6,
0x01271F90,
//;Pin widget 0x13 - DMIC
0x01371C00,
0x01371D00,
0x01371E00,
0x01371F40,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 1.5W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x0204A981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388117AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA3981
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x90A60130
//; NID 0x13 : 0x40000000
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS370VerbTableData_V17[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3981
0x00172081,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C30,
0x01271D01,
0x01271EA6,
0x01271F90,
//;Pin widget 0x13 - DMIC
0x01371C00,
0x01371D00,
0x01371E00,
0x01371F40,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 1.5W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x0204A981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS370_V14[]={
{&mS370VerbTableHeader, mS370VerbTableData_V14},
{NULL,NULL}
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS370_V15[]={
{&mS370VerbTableHeader, mS370VerbTableData_V15},
{NULL,NULL}
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS370_V17[]={
{&mS370VerbTableHeader, mS370VerbTableData_V17},
{NULL,NULL}
};
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mV141517VerbTableHeader = {
0x10EC0257,\
0x00000000,\
0xFF, \
0x01, \
0x001C, \
0x0000
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388117AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA3982
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x90A60130
//; NID 0x13 : 0x40000000
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mV141517VerbTableData_V14[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3982
0x00172082,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C30,
0x01271D01,
0x01271EA6,
0x01271F90,
//;Pin widget 0x13 - DMIC
0x01371C00,
0x01371D00,
0x01371E00,
0x01371F40,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 1.5W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x0204A981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388117AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA3983
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x90A60130
//; NID 0x13 : 0x40000000
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mV141517VerbTableData_V15[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3983
0x00172083,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C30,
0x01271D01,
0x01271EA6,
0x01271F90,
//;Pin widget 0x13 - DMIC
0x01371C00,
0x01371D00,
0x01371E00,
0x01371F40,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 1.5W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x0204A981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388117AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA3984
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x90A60130
//; NID 0x13 : 0x40000000
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mV141517VerbTableData_V17[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA3984
0x00172084,
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C30,
0x01271D01,
0x01271EA6,
0x01271F90,
//;Pin widget 0x13 - DMIC
0x01371C00,
0x01371D00,
0x01371E00,
0x01371F40,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 1.5W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x0204A981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableV141517_V14[]={
{&mV141517VerbTableHeader, mV141517VerbTableData_V14},
{NULL,NULL}
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableV141517_V15[]={
{&mV141517VerbTableHeader, mV141517VerbTableData_V15},
{NULL,NULL}
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableV141517_V17[]={
{&mV141517VerbTableHeader, mV141517VerbTableData_V17},
{NULL,NULL}
};
//[-start-210809-QINGLIN0012-add]//
COMMON_CHIPSET_AZALIA_VERB_TABLE_HEADER mS170VerbTableHeader = {
0x10EC0257,\
0x00000000,\
0xFF, \
0x01, \
0x001C, \
0x0000
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388117AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA39EC
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x90A60130
//; NID 0x13 : 0x40000000
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS170VerbTableData_V14[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA39EC
//[-start-210908-QINGLIN0049-modify]//
0x001720EC,
//[-end-210908-QINGLIN0049-modify]//
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C30,
0x01271D01,
0x01271EA6,
0x01271F90,
//;Pin widget 0x13 - DMIC
0x01371C00,
0x01371D00,
0x01371E00,
0x01371F40,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 1.5W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x0204A981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
//;Realtek High Definition Audio Configuration - Version : 5.0.2.8
//;Realtek HD Audio Codec : ALC3287
//;PCI PnP ID : PCI\VEN_8086&DEV_51C8&SUBSYS_388117AA
//;HDA Codec PnP ID : INTELAUDIO\FUNC_01&VEN_10EC&DEV_0257&SUBSYS_17AA397E
//;The number of verb command block : 22(Hexadecimal)
//
//
//; NID 0x12 : 0x90A60130
//; NID 0x13 : 0x40000000
//; NID 0x14 : 0x90170120
//; NID 0x18 : 0x411111F0
//; NID 0x19 : 0x04A11040
//; NID 0x1A : 0x411111F0
//; NID 0x1B : 0x411111F0
//; NID 0x1D : 0x4066B905
//; NID 0x1E : 0x411111F0
//; NID 0x21 : 0x04211010
UINT32 mS170VerbTableData_V15[] = {
//;===== HDA Codec Subsystem ID Verb-table =====
//;HDA Codec Subsystem ID : 0x17AA39EB
//[-start-210908-QINGLIN0049-modify]//
0x001720EB,
//[-end-210908-QINGLIN0049-modify]//
0x00172139,
0x001722AA,
0x00172317,
//;===== Pin Widget Verb-table =====
//;Widget node 0x01 :
0x0017FF00,
0x0017FF00,
0x0017FF00,
0x0017FF00,
//;Pin widget 0x12 - DMIC
0x01271C30,
0x01271D01,
0x01271EA6,
0x01271F90,
//;Pin widget 0x13 - DMIC
0x01371C00,
0x01371D00,
0x01371E00,
0x01371F40,
//;Pin widget 0x14 - Front (Port-D)
0x01471C20,
0x01471D01,
0x01471E17,
0x01471F90,
//;Pin widget 0x18 - NPC
0x01871CF0,
0x01871D11,
0x01871E11,
0x01871F41,
//;Pin widget 0x19 - MIC2 (Port-F)
0x01971C40,
0x01971D10,
0x01971EA1,
0x01971F04,
//;Pin widget 0x1A - LINE1 (Port-C)
0x01A71CF0,
0x01A71D11,
0x01A71E11,
0x01A71F41,
//;Pin widget 0x1B - LINE2 (Port-E)
0x01B71CF0,
0x01B71D11,
0x01B71E11,
0x01B71F41,
//;Pin widget 0x1D - BEEP-IN
0x01D71C05,
0x01D71DB9,
0x01D71E66,
0x01D71F40,
//;Pin widget 0x1E - S/PDIF-OUT
0x01E71CF0,
0x01E71D11,
0x01E71E11,
0x01E71F41,
//;Pin widget 0x21 - HP1-OUT (Port-I)
0x02171C10,
0x02171D10,
0x02171E21,
0x02171F04,
//;==========Widget node 0x20 : (JD1 Enable for 1 JD mode )
0x02050009,
0x02040003,
0x02050004,
0x0204AA49,
//;==========Widget node 0x20 : (JD1 pull up internally )
0x0205000A,
0x02047778,
0x02050010,
0x02040020,
//;Pin widget 0x20 - 1 Class D power on Reset
0x0205003C,
0x02043154,
0x0205003C,
0x02043114,
//;==========Widget node 0x20 - 2 :Widget node 0x20 : Enable GHS Detect
0x0205001B,
0x02040A4B,
0x02050008,
0x02046A6C,
//;==========Widget node 0x20 - 3 :
0x02050046,
0x02040004,
0x05750003,
0x057409A3,
//;==========Widget node 0x20 - 4 : Set Output Power 1.5W@4ohm & AGC Limit Gain to 0dB
0x02050038,
0x0204A981,
0x02050012,
0x0204D780,
//;==========Widget node 0x20 - 5 : Set AGC Post Gain to 0dB / HPF--->300Hz
0x02050013,
0x0204201F,
0x02050016,
0x02044C50,
//;==========Widget node 0x20 - 6 : DMIC CLK driving
0x02050035,
0x02048E6A,
0x02050035,
0x02048E6A,
//EQVerbtable
//disable EQ first
0x05350000,
0x0534201A,
0x05350000,
0x0534201A,
//Left Channel
//==============
0x0535001d,
0x05340800,
0x0535001e,
0x05340800,
0x05350003,
0x05341EC4,
0x05350004,
0x05340000,
//Right Channel
//==============
0x05450000,
0x05442000,
0x0545001d,
0x05440800,
0x0545001e,
0x05440800,
0x05450003,
0x05441EC4,
0x05450004,
0x05440000,
0x05350000,
0x0534601A,
//Enable EQ
//;==========Dos beep path - 1 :
0x01470C00,
0x02050036,
0x02047151,
0x01470740,
//;==========Dos beep path - 2 :
0x0143b000,
0x01470C02,
0x01470C02,
0x01470C02,
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS170_V14[]={
{&mS170VerbTableHeader, mS170VerbTableData_V14},
{NULL,NULL}
};
COMMON_CHIPSET_AZALIA_VERB_TABLE OemVerbTableS170_V15[]={
{&mS170VerbTableHeader, mS170VerbTableData_V15},
{NULL,NULL}
};
//[-end-210809-QINGLIN0012-add]//
#endif
//[-end-210803-QINGLIN0008-add]//
//[-start-211108-Dennis0008-add]//
EFI_STATUS
LfcGetAndSetPanelSize(
VOID
)
{
#if defined(S370_SUPPORT)
UINTN VarSize;
EFI_PEI_READ_ONLY_VARIABLE2_PPI *PeiReadOnliVariable2;
EFI_STATUS Status;
UINT8 LFCMachinesize;
Status = PeiServicesLocatePpi (
&gEfiPeiReadOnlyVariable2PpiGuid,
0,
NULL,
&PeiReadOnliVariable2
);
if (EFI_ERROR (Status)) {
goto S370DefaultPanelSize;
}
VarSize = (UINTN)sizeof (LFCMachinesize);
Status = PeiReadOnliVariable2->GetVariable(
PeiReadOnliVariable2,
L"MachineSize",
&gEfiGenericVariableGuid,
NULL,
&VarSize,
&LFCMachinesize
);
if (EFI_ERROR (Status)) {
goto S370DefaultPanelSize;
}
switch (LFCMachinesize) {
case 0x14:
PcdSet8S(Pcd14inchSku, 1);
break;
case 0x15:
PcdSet8S(Pcd15inchSku, 1);
break;
case 0x17:
PcdSet8S(Pcd17inchSku, 1);
break;
default:
goto S370DefaultPanelSize;
break;
}
return EFI_SUCCESS;
S370DefaultPanelSize:
PcdSet8S(Pcd14inchSku, 1);
return EFI_SUCCESS;
#endif
}
//[-end-211108-Dennis0008-add]//
/**
This OemService is part of setting Verb Table. The function is created for setting verb table
to support Multi-Sku and return the table to common code to program.
@param *VerbTableHeaderDataAddress A pointer to VerbTable data/header
@retval EFI_MEDIA_CHANGED Get verb table data/header success.
@retval Others Base on OEM design.
**/
EFI_STATUS
OemSvcGetVerbTable (
OUT COMMON_CHIPSET_AZALIA_VERB_TABLE **VerbTableHeaderDataAddress
)
{
#if 0
// Sample code for VerbTable
EFI_STATUS Status;
PCH_SETUP PchSetup;
Status = GetChipsetPchSetupVariablePei (&PchSetup);
ASSERT_EFI_ERROR (Status);
if (PchSetup.PchHdAudioCodecSelect == 0) {
// BoardIdCannonlakeUDdr4Rvp
*VerbTableHeaderDataAddress = VERB_TABLE_HEADER_DATA_BUFFER_ADDRESS(OEM_VERB_TABLE_ID_1);
} else {
*VerbTableHeaderDataAddress = VERB_TABLE_HEADER_DATA_BUFFER_ADDRESS(OEM_VERB_TABLE_ID_1);
}
#endif
//[-start-210519-KEBIN00001-add]//
//[-start-210723-QINGLIN0001-modify]//
//[-start-210528-FLINT00001-modify]//
#if defined(C970_SUPPORT)
UINT32 SKP_ID;
GpioGetInputValue(GPIO_VER2_LP_GPP_A21,&SKP_ID);
if(SKP_ID == 1) // highvideo
*VerbTableHeaderDataAddress = OemVerbTableYogaC970_ADL_YC;
else //low
*VerbTableHeaderDataAddress = OemVerbTableYogaC970_ADL_Luxshare;
//[-end-210528-FLINT00001-modify]//
return EFI_MEDIA_CHANGED;
#elif defined(C770_SUPPORT)
//[-start-210729-YUNLEI0117-modify]//
UINT8 Panel_Size;
OemSvcLfcGetBoardID(PANEL_SIZE, &Panel_Size);
if(Panel_Size==PANEL_SIZE_16)
{
*VerbTableHeaderDataAddress = OemVerbTableYogaC770_V16;
}else{
*VerbTableHeaderDataAddress = OemVerbTableYogaC770_V14;
}
return EFI_MEDIA_CHANGED;
//[-end-210729-YUNLEI0117-modify]//
#elif defined(S570_SUPPORT)
*VerbTableHeaderDataAddress = OemVerbTableS570;
return EFI_MEDIA_CHANGED;
//[-start-210803-QINGLIN0008-add]//
#elif defined(S370_SUPPORT)
//[-start-211108-Dennis0008-add]//
LfcGetAndSetPanelSize();
//[-end-211108-Dennis0008-add]//
UINT8 Project_Type = 0;
UINT8 Panel_Size = 0;
OemSvcLfcGetBoardID(PROJECT_ID, &Project_Type);
OemSvcLfcGetBoardID(PANEL_SIZE, &Panel_Size);
if (Project_Type == PROJECT_ID_S370) { //S370
if(Panel_Size == PANEL_SIZE_14) { //14'
*VerbTableHeaderDataAddress = OemVerbTableS370_V14;
} else if (Panel_Size == PANEL_SIZE_15) { //15'
*VerbTableHeaderDataAddress = OemVerbTableS370_V15;
} else { //17'
*VerbTableHeaderDataAddress = OemVerbTableS370_V17;
}
//[-start-210908-QINGLIN0049-add]//
} else if (Project_Type == PROJECT_ID_S170) {
if(Panel_Size == PANEL_SIZE_14) { //14'
*VerbTableHeaderDataAddress = OemVerbTableS170_V14;
} else { //15'
*VerbTableHeaderDataAddress = OemVerbTableS170_V15;
}
//[-end-210908-QINGLIN0049-add]//
} else { //V141517 or S1415
if(Panel_Size == PANEL_SIZE_14) { //14'
*VerbTableHeaderDataAddress = OemVerbTableV141517_V14;
} else if (Panel_Size == PANEL_SIZE_15) { //15'
*VerbTableHeaderDataAddress = OemVerbTableV141517_V15;
} else { //17'
*VerbTableHeaderDataAddress = OemVerbTableV141517_V17;
}
}
return EFI_MEDIA_CHANGED;
//[-end-210803-QINGLIN0008-add]//
//[-start-210817-DABING0002-modify]//
#elif defined(S77014_SUPPORT)
*VerbTableHeaderDataAddress = OemVerbTableS77014;
return EFI_MEDIA_CHANGED;
//[-end-210817-DABING0002-modify]//
//[-start-220318-Ching000037-modify]//
#elif defined(S77014IAH_SUPPORT)
*VerbTableHeaderDataAddress = OemVerbTableS77014IAH;
return EFI_MEDIA_CHANGED;
//[-end-220318-Ching000037-modify]//
//[-start-210914-DABING0006-modify]//
#elif defined(S77013_SUPPORT)
*VerbTableHeaderDataAddress = OemVerbTableS77013;
return EFI_MEDIA_CHANGED;
//[-end-210914-DABING0006-modify]//
#else
return EFI_UNSUPPORTED;
#endif
//[-end-210723-QINGLIN0001-modify]//
//[-end-210519-KEBIN00001-modify]//
}