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
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.
14 #ifndef _VGA_MINIPORT_H
15 #define _VGA_MINIPORT_H
18 // The package level header files this module uses
22 // The protocols, PPI and GUID defintions for this module
24 #include <Protocol/PciIo.h>
25 #include <Protocol/VgaMiniPort.h>
26 #include <Protocol/ComponentName2.h>
30 // The Library classes this module consumes
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>
38 #include <IndustryStandard/Pci22.h>
41 // PCI VGA MiniPort Device Structure
43 #define PCI_VGA_MINI_PORT_DEV_SIGNATURE EFI_SIGNATURE_32('P','V','M','P')
48 EFI_VGA_MINI_PORT_PROTOCOL VgaMiniPort
;
49 EFI_PCI_IO_PROTOCOL
*PciIo
;
50 } PCI_VGA_MINI_PORT_DEV
;
52 #define PCI_VGA_MINI_PORT_DEV_FROM_THIS(a) CR(a, PCI_VGA_MINI_PORT_DEV, VgaMiniPort, PCI_VGA_MINI_PORT_DEV_SIGNATURE)
57 extern EFI_DRIVER_BINDING_PROTOCOL gPciVgaMiniPortDriverBinding
;
58 extern EFI_COMPONENT_NAME_PROTOCOL gPciVgaMiniPortComponentName
;
61 // Driver Binding Protocol functions
64 PciVgaMiniPortDriverBindingSupported (
65 IN EFI_DRIVER_BINDING_PROTOCOL
*This
,
66 IN EFI_HANDLE Controller
,
67 IN EFI_DEVICE_PATH_PROTOCOL
*RemainingDevicePath
71 PciVgaMiniPortDriverBindingStart (
72 IN EFI_DRIVER_BINDING_PROTOCOL
*This
,
73 IN EFI_HANDLE Controller
,
74 IN EFI_DEVICE_PATH_PROTOCOL
*RemainingDevicePath
78 PciVgaMiniPortDriverBindingStop (
79 IN EFI_DRIVER_BINDING_PROTOCOL
*This
,
80 IN EFI_HANDLE Controller
,
81 IN UINTN NumberOfChildren
,
82 IN EFI_HANDLE
*ChildHandleBuffer
86 // VGA Mini Port Protocol functions
90 PciVgaMiniPortSetMode (
91 IN EFI_VGA_MINI_PORT_PROTOCOL
*This
,