]> git.proxmox.com Git - mirror_edk2.git/blob - IntelFrameworkModulePkg/Bus/Pci/VgaMiniPortDxe/VgaMiniPort.h
630f73f649ede66d8c58dc95fa2db9c191c4cf07
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Pci / VgaMiniPortDxe / VgaMiniPort.h
1 /** @file
2
3 Copyright (c) 2006 - 2007 Intel Corporation. All rights reserved
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 **/
13
14 #ifndef _VGA_MINIPORT_H
15 #define _VGA_MINIPORT_H
16
17 //
18 // The package level header files this module uses
19 //
20 #include <PiDxe.h>
21 //
22 // The protocols, PPI and GUID defintions for this module
23 //
24 #include <Protocol/PciIo.h>
25 #include <Protocol/VgaMiniPort.h>
26 #include <Protocol/ComponentName2.h>
27
28
29 //
30 // The Library classes this module consumes
31 //
32 #include <Library/DebugLib.h>
33 #include <Library/BaseMemoryLib.h>
34 #include <Library/UefiDriverEntryPoint.h>
35 #include <Library/UefiBootServicesTableLib.h>
36 #include <Library/UefiLib.h>
37
38 #include <IndustryStandard/Pci22.h>
39
40 //
41 // PCI VGA MiniPort Device Structure
42 //
43 #define PCI_VGA_MINI_PORT_DEV_SIGNATURE EFI_SIGNATURE_32('P','V','M','P')
44
45 typedef struct {
46 UINTN Signature;
47 EFI_HANDLE Handle;
48 EFI_VGA_MINI_PORT_PROTOCOL VgaMiniPort;
49 EFI_PCI_IO_PROTOCOL *PciIo;
50 } PCI_VGA_MINI_PORT_DEV;
51
52 #define PCI_VGA_MINI_PORT_DEV_FROM_THIS(a) CR(a, PCI_VGA_MINI_PORT_DEV, VgaMiniPort, PCI_VGA_MINI_PORT_DEV_SIGNATURE)
53
54 //
55 // Global Variables
56 //
57 extern EFI_DRIVER_BINDING_PROTOCOL gPciVgaMiniPortDriverBinding;
58 extern EFI_COMPONENT_NAME_PROTOCOL gPciVgaMiniPortComponentName;
59
60 //
61 // Driver Binding Protocol functions
62 //
63 EFI_STATUS
64 PciVgaMiniPortDriverBindingSupported (
65 IN EFI_DRIVER_BINDING_PROTOCOL *This,
66 IN EFI_HANDLE Controller,
67 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
68 );
69
70 EFI_STATUS
71 PciVgaMiniPortDriverBindingStart (
72 IN EFI_DRIVER_BINDING_PROTOCOL *This,
73 IN EFI_HANDLE Controller,
74 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
75 );
76
77 EFI_STATUS
78 PciVgaMiniPortDriverBindingStop (
79 IN EFI_DRIVER_BINDING_PROTOCOL *This,
80 IN EFI_HANDLE Controller,
81 IN UINTN NumberOfChildren,
82 IN EFI_HANDLE *ChildHandleBuffer
83 );
84
85 //
86 // VGA Mini Port Protocol functions
87 //
88 EFI_STATUS
89 EFIAPI
90 PciVgaMiniPortSetMode (
91 IN EFI_VGA_MINI_PORT_PROTOCOL *This,
92 IN UINTN ModeNumber
93 );
94
95 #endif