3 Copyright (c) 2006 - 2007, Intel Corporation. All rights reserved.
4 This software and associated documentation (if any) is furnished
5 under a license and may only be used or copied in accordance
6 with the terms of the license. Except as permitted by such
7 license, no part of this software or documentation may be
8 reproduced, stored in a retrieval system, or transmitted in any
9 form or by any means without the express written consent of
19 PS/2 Mouse driver header file
29 // Include common header file for this module.
31 #include "CommonHeader.h"
34 // PS/2 mouse sample rate
48 // PS/2 mouse resolution
67 // Driver Private Data
69 #define PS2_MOUSE_DEV_SIGNATURE EFI_SIGNATURE_32 ('p', 's', '2', 'm')
75 EFI_SIMPLE_POINTER_PROTOCOL SimplePointerProtocol
;
76 EFI_SIMPLE_POINTER_STATE State
;
77 EFI_SIMPLE_POINTER_MODE Mode
;
81 // PS2 Mouse device specific information
86 UINT8 DataPackageSize
;
88 EFI_ISA_IO_PROTOCOL
*IsaIo
;
92 EFI_UNICODE_STRING_TABLE
*ControllerNameTable
;
93 EFI_DEVICE_PATH_PROTOCOL
*DevicePath
;
96 #define PS2_MOUSE_DEV_FROM_THIS(a) CR (a, PS2_MOUSE_DEV, SimplePointerProtocol, PS2_MOUSE_DEV_SIGNATURE)
101 extern EFI_DRIVER_BINDING_PROTOCOL gPS2MouseDriver
;
102 extern EFI_COMPONENT_NAME_PROTOCOL gPs2MouseComponentName
;
105 // Function prototypes
109 PS2MouseDriverSupported (
110 IN EFI_DRIVER_BINDING_PROTOCOL
*This
,
111 IN EFI_HANDLE Controller
,
112 IN EFI_DEVICE_PATH_PROTOCOL
*RemainingDevicePath
117 PS2MouseDriverStart (
118 IN EFI_DRIVER_BINDING_PROTOCOL
*This
,
119 IN EFI_HANDLE Controller
,
120 IN EFI_DEVICE_PATH_PROTOCOL
*RemainingDevicePath
126 IN EFI_DRIVER_BINDING_PROTOCOL
*This
,
127 IN EFI_HANDLE Controller
,
128 IN UINTN NumberOfChildren
,
129 IN EFI_HANDLE
*ChildHandleBuffer
133 // EFI Component Name Functions
137 Ps2MouseComponentNameGetDriverName (
138 IN EFI_COMPONENT_NAME_PROTOCOL
*This
,
140 OUT CHAR16
**DriverName
145 Ps2MouseComponentNameGetControllerName (
146 IN EFI_COMPONENT_NAME_PROTOCOL
*This
,
147 IN EFI_HANDLE ControllerHandle
,
148 IN EFI_HANDLE ChildHandle OPTIONAL
,
150 OUT CHAR16
**ControllerName
156 IN EFI_SIMPLE_POINTER_PROTOCOL
*This
,
157 IN BOOLEAN ExtendedVerification
163 IN EFI_SIMPLE_POINTER_PROTOCOL
*This
,
164 IN OUT EFI_SIMPLE_POINTER_STATE
*State
183 IN EFI_ISA_IO_PROTOCOL
*IsaIo
,
188 IN PS2_MOUSE_DEV
*MouseDev