hc
2024-03-25 edb30157bad0c0001c32b854271ace01d3b9a16a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/** @file
  PCH HD Audio Sx handler implementation.
 
  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>
  SPDX-License-Identifier: BSD-2-Clause-Patent
**/
 
#include "PchInitSmm.h"
#include <Register/PchRegs.h>
#include <Register/HdaRegs.h>
#include <Library/PchPciBdfLib.h>
 
GLOBAL_REMOVE_IF_UNREFERENCED UINT64  mHdaPciBase;
GLOBAL_REMOVE_IF_UNREFERENCED BOOLEAN mHdaCodecSxWakeCapability = FALSE;
 
/**
  Updates Codec Sx Wake Capability setting: disabled/enabled
**/
VOID
UpdateHdaCodecSxWakeCapabilitySetting (
  VOID
  )
{
  mHdaPciBase = HdaPciCfgBase ();
 
  if ((mPchConfigHob->HdAudio.CodecSxWakeCapability == FALSE) ||
      (PciSegmentRead16 (mHdaPciBase + PCI_VENDOR_ID_OFFSET) == 0xFFFF)) {
    mHdaCodecSxWakeCapability = FALSE;
  } else {
    mHdaCodecSxWakeCapability = TRUE;
  }
}