• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /** @file
2 Define private data structure for UHCI and EHCI.
3 
4 Copyright (c) 2013-2015 Intel Corporation.
5 
6 This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution.  The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
10 
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 
14 **/
15 
16 #ifndef _USB_PEI_H
17 #define _USB_PEI_H
18 
19 #include "Ioh.h"
20 
21 #define PEI_IOH_OHCI_SIGNATURE          SIGNATURE_32 ('O', 'H', 'C', 'I')
22 #define PEI_IOH_EHCI_SIGNATURE          SIGNATURE_32 ('E', 'H', 'C', 'I')
23 
24 typedef struct {
25   UINTN                   Signature;
26   PEI_USB_CONTROLLER_PPI  UsbControllerPpi;
27   EFI_PEI_PPI_DESCRIPTOR  PpiList;
28   UINTN                   MmioBase[IOH_MAX_OHCI_USB_CONTROLLERS];
29 } IOH_OHCI_DEVICE;
30 
31 typedef struct {
32   UINTN                   Signature;
33   PEI_USB_CONTROLLER_PPI  UsbControllerPpi;
34   EFI_PEI_PPI_DESCRIPTOR  PpiList;
35   UINTN                   MmioBase[IOH_MAX_EHCI_USB_CONTROLLERS];
36 } IOH_EHCI_DEVICE;
37 
38 #define IOH_OHCI_DEVICE_FROM_THIS(a) \
39   CR(a, IOH_OHCI_DEVICE, UsbControllerPpi, PEI_IOH_OHCI_SIGNATURE)
40 
41 #define IOH_EHCI_DEVICE_FROM_THIS(a) \
42   CR (a, IOH_EHCI_DEVICE, UsbControllerPpi, PEI_IOH_EHCI_SIGNATURE)
43 
44 #endif
45