hc
2024-03-22 a0752693d998599af469473b8dc239ef973a012f
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
/**
**/
/**
 
Copyright (c) 2012  - 2014, Intel Corporation. All rights reserved
 
  SPDX-License-Identifier: BSD-2-Clause-Patent
 
 
 
  @file
  PchUsbPolicy.h
 
  @brief
  PCH Usb policy PPI produced by a platform driver specifying
  various expected PCH Usb settings. This PPI is consumed by the
  PCH PEI drivers.
 
**/
#ifndef _PCH_USB_POLICY_H_
#define _PCH_USB_POLICY_H_
 
//
// PCH Usb policy provided by platform for PEI phase
//
 
#ifndef ECP_FLAG
#include <PiPei.h>
#endif
 
#include "PchRegs.h"
#include <Protocol/PchPlatformPolicy.h>
 
#define PCH_USB_POLICY_PPI_GUID \
  { \
    0xc02b0573, 0x2b4e, 0x4a31, 0xa3, 0x1a, 0x94, 0x56, 0x7b, 0x50, 0x44, 0x2c \
  }
 
extern EFI_GUID                     gPchUsbPolicyPpiGuid;
 
typedef struct _PCH_USB_POLICY_PPI  PCH_USB_POLICY_PPI;
 
///
/// PPI revision number
/// Any backwards compatible changes to this PPI will result in an update in the revision number
/// Major changes will require publication of a new PPI
///
/// Revision 1: Original version
///
#define PCH_USB_POLICY_PPI_REVISION_1 1
 
///
/// Generic definitions for device enabling/disabling used by PCH code.
///
#define PCH_DEVICE_ENABLE   1
#define PCH_DEVICE_DISABLE  0
 
#define EHCI_MODE           1
 
struct _PCH_USB_POLICY_PPI {
  UINT8           Revision;
  PCH_USB_CONFIG  *UsbConfig;
  UINT8           Mode;
  UINTN           EhciMemBaseAddr;
  UINT32          EhciMemLength;
  UINTN           XhciMemBaseAddr;
};
 
#endif