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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
/** @file
This file defines the PCH DMI TC/VC mapping PPI
@copyright
Copyright (c) 2009 - 2012 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 a 'Sample Driver' and is licensed as such
under the terms of your license agreement with Intel or your
vendor. This file may be modified by the user, subject to
the additional terms of the license agreement
**/
#ifndef _PCH_DMI_TC_VC_MAP_H_
#define _PCH_DMI_TC_VC_MAP_H_
///
/// Define the PCH DMI TC VC Mapping PPI GUID
///
///
/// EDK and EDKII have different GUID formats
///
#if !defined(EDK_RELEASE_VERSION) || (EDK_RELEASE_VERSION < 0x00020000)
#define PCH_DMI_TC_VC_PPI_GUID \
{ \
0xed097352, 0x9041, 0x445a, 0x80, 0xb6, 0xb2, 0x9d, 0x50, 0x9e, 0x88, 0x45 \
}
#else
#define PCH_DMI_TC_VC_PPI_GUID \
{ \
0xed097352, 0x9041, 0x445a, \
{ \
0x80, 0xb6, 0xb2, 0x9d, 0x50, 0x9e, 0x88, 0x45 \
} \
}
#endif
//
// Extern the GUID for PPI users.
//
extern EFI_GUID gPchDmiTcVcMapPpiGuid;
//
// Forward reference for ANSI C compatibility
//
typedef struct _PCH_DMI_TC_VC_PPI PCH_DMI_TC_VC_PPI;
typedef enum {
DmiVcTypeVc0,
DmiVcTypeVc1,
DmiVcTypeVcp,
DmiVcTypeVcm,
DmiVcTypeMax
} PCH_DMI_VC_TYPE;
typedef struct {
PCH_DMI_VC_TYPE Vc; ///< The Virtual Channel to which the TC is mapped
} PCH_DMI_TC_CONFIG;
typedef struct {
BOOLEAN Enable; ///< 0: Disable; 1: Enable
UINT8 VcId; ///< Vc ID Encoding for the Virtual Channel
} PCH_DMI_VC_CONFIG;
#define DmiTcTypeMax 8
///
/// PCH_DMI_TC_VC_PPI Structure Definition
/// Note: The default DMI TC/VC mapping will be used if it's not initialized
///
struct _PCH_DMI_TC_VC_PPI {
PCH_DMI_TC_CONFIG DmiTc[DmiTcTypeMax]; ///< Configures PCH DMI Traffic class mapping.
PCH_DMI_VC_CONFIG DmiVc[DmiVcTypeMax]; ///< Configures PCH DMI Virtual Channel setting.
};
#endif
|