summaryrefslogtreecommitdiff
path: root/ReferenceCode/Chipset/SystemAgent/SaInit/Dxe/AudioInit.h
blob: cd7bc3362efcf58a8577b9eae4b50453a66c1dee (plain)
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/** @file
  Header file for initialization of CPU Audio device.

@copyright
  Copyright (c) 1999 - 2013 Intel Corporation. All rights reserved
  This software and associated documentation (if any) is furnished
  under a license and may only be used or copied in accordance
  with the terms of the license. Except as permitted by such
  license, no part of this software or documentation may be
  reproduced, stored in a retrieval system, or transmitted in any
  form or by any means without the express written consent of
  Intel Corporation.

  This file contains an 'Intel Peripheral Driver' and uniquely
  identified as "Intel Reference Module" and is
  licensed for Intel CPUs and chipsets under the terms of your
  license agreement with Intel or your vendor.  This file may
  be modified by the user, subject to additional terms of the
  license agreement
**/
#ifndef _AUDIO_INIT_H_
#define _AUDIO_INIT_H_

#include "EdkIIGlueDxe.h"
#include "Pci22.h"
#include "SaAccess.h"
#include "PchAccess.h"
#include "PchPlatformLib.h"
#include "EfiScriptLib.h"
#include "CpuRegs.h"
#include "CpuPlatformLib.h"

#include EFI_PROTOCOL_DEPENDENCY (BootScriptSave)
#include EFI_PROTOCOL_DEFINITION (SaPlatformPolicy)
#include EFI_PROTOCOL_DEFINITION (PciHostBridgeResourceAllocation)
#include EFI_PROTOCOL_DEPENDENCY (SaGlobalNvsArea)

#define SA_HDA_MAX_LOOP_TIME  10
#define SA_HDA_WAIT_PERIOD    100
#define SA_HDA_MAX_SID_NUMBER 4
#define SA_HDA_MAX_SID_MASK   ((1 << SA_HDA_MAX_SID_NUMBER) - 1)

#define AUDIO_CODEC_MAX_SIZE  0x80

#define SA_HDA_ENABLE_3RD_PIN_WIDGET  0x00878101
#define SA_HDA_DISABLE_3RD_PIN_WIDGET 0x00878100

///
/// Functions
///
/**
  Initialize SystemAgent Audio Device/Codec.

  @param[in] ImageHandle             Handle for the image of this driver
  @param[in] DxePlatformSaPolicy     SA DxePlatformPolicy protocol

  @retval EFI_SUCCESS - Audio/Codec initialization Done.
**/
EFI_STATUS
AudioInit (
  IN EFI_HANDLE                      ImageHandle,
  IN DXE_PLATFORM_SA_POLICY_PROTOCOL *DxePlatformSaPolicy
  )
;

#endif