summaryrefslogtreecommitdiff
path: root/ReferenceCode/Chipset/LynxPoint/SampleCode/Ppi/UsbController/UsbController.h
blob: 2fec82fa57a56496af931656f540b4a919f7ba42 (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
/** @file
  Usb Controller PPI as defined in EFI 2.0

  This code abstracts the PEI core to provide Usb Controller Info from Chipset.

@copyright
  Copyright (c) 1999 - 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 'Framework Code' and is licensed as such
  under the terms of your license agreement with Intel or your
  vendor. This file may not be modified, except as allowed by
  additional terms of your license agreement.
**/
#ifndef _PEI_USB_CONTROLLER_PPI_H_
#define _PEI_USB_CONTROLLER_PPI_H_

#define PEI_USB_CONTROLLER_PPI_GUID \
  { \
    0x3bc1f6de, 0x693e, 0x4547, 0xa3, 0x0, 0x21, 0x82, 0x3c, 0xa4, 0x20, 0xb2 \
  }

#define PEI_EHCI_CONTROLLER 0x03

EFI_FORWARD_DECLARATION (PEI_USB_CONTROLLER_PPI);

typedef
EFI_STATUS
(EFIAPI *PEI_GET_USB_CONTROLLER) (
  IN  EFI_PEI_SERVICES               **PeiServices,
  IN  PEI_USB_CONTROLLER_PPI         *This,
  IN  UINT8                          UsbControllerId,
  OUT UINTN                          *ControllerType,
  OUT UINTN                          *BaseAddress
  );

struct _PEI_USB_CONTROLLER_PPI {
  PEI_GET_USB_CONTROLLER  GetUsbController;
};

extern EFI_GUID gPeiUsbControllerPpiGuid;

#endif