summaryrefslogtreecommitdiff
path: root/EdkModulePkg/Library/EdkUsbLib/hid.c
diff options
context:
space:
mode:
Diffstat (limited to 'EdkModulePkg/Library/EdkUsbLib/hid.c')
-rw-r--r--EdkModulePkg/Library/EdkUsbLib/hid.c459
1 files changed, 0 insertions, 459 deletions
diff --git a/EdkModulePkg/Library/EdkUsbLib/hid.c b/EdkModulePkg/Library/EdkUsbLib/hid.c
deleted file mode 100644
index edf9a94efc..0000000000
--- a/EdkModulePkg/Library/EdkUsbLib/hid.c
+++ /dev/null
@@ -1,459 +0,0 @@
-/*++
-
-Copyright (c) 2006, Intel Corporation
-All rights reserved. This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
- Module Name:
-
- hid.c
-
- Abstract:
-
- HID class request
-
- Revision History
-
---*/
-
-//
-// Function to get HID descriptor
-//
-EFI_STATUS
-UsbGetHidDescriptor (
- IN EFI_USB_IO_PROTOCOL *UsbIo,
- IN UINT8 InterfaceNum,
- OUT EFI_USB_HID_DESCRIPTOR *HidDescriptor
- )
-/*++
-
- Routine Description:
- Get Hid Descriptor
-
- Arguments:
- UsbIo - EFI_USB_IO_PROTOCOL
- InterfaceNum - Hid interface number
- HidDescriptor - Caller allocated buffer to store Usb hid descriptor
- if successfully returned.
-
- Returns:
- EFI_SUCCESS
- EFI_DEVICE_ERROR
- EFI_TIMEOUT
-
---*/
-{
- UINT32 Status;
- EFI_STATUS Result;
- EFI_USB_DEVICE_REQUEST Request;
-
- Request.RequestType = 0x81;
- Request.Request = 0x06;
- Request.Value = (UINT16) (0x21 << 8);
- Request.Index = InterfaceNum;
- Request.Length = sizeof (EFI_USB_HID_DESCRIPTOR);
-
- Result = UsbIo->UsbControlTransfer (
- UsbIo,
- &Request,
- EfiUsbDataIn,
- TIMEOUT_VALUE,
- HidDescriptor,
- sizeof (EFI_USB_HID_DESCRIPTOR),
- &Status
- );
-
- return Result;
-
-}
-//
-// Function to get Report Class descriptor
-//
-EFI_STATUS
-UsbGetReportDescriptor (
- IN EFI_USB_IO_PROTOCOL *UsbIo,
- IN UINT8 InterfaceNum,
- IN UINT16 DescriptorSize,
- OUT UINT8 *DescriptorBuffer
- )
-/*++
-
- Routine Description:
- get Report Class descriptor
-
- Arguments:
- UsbIo - EFI_USB_IO_PROTOCOL.
- InterfaceNum - Report interface number.
- DescriptorSize - Length of DescriptorBuffer.
- DescriptorBuffer - Caller allocated buffer to store Usb report descriptor
- if successfully returned.
-
- Returns:
- EFI_SUCCESS
- EFI_DEVICE_ERROR
- EFI_TIMEOUT
-
---*/
-{
- UINT32 Status;
- EFI_STATUS Result;
- EFI_USB_DEVICE_REQUEST Request;
-
- //
- // Fill Device request packet
- //
- Request.RequestType = 0x81;
- Request.Request = 0x06;
- Request.Value = (UINT16) (0x22 << 8);
- Request.Index = InterfaceNum;
- Request.Length = DescriptorSize;
-
- Result = UsbIo->UsbControlTransfer (
- UsbIo,
- &Request,
- EfiUsbDataIn,
- TIMEOUT_VALUE,
- DescriptorBuffer,
- DescriptorSize,
- &Status
- );
-
- return Result;
-
-}
-//
-// Following are HID class request
-//
-EFI_STATUS
-UsbGetProtocolRequest (
- IN EFI_USB_IO_PROTOCOL *UsbIo,
- IN UINT8 Interface,
- IN UINT8 *Protocol
- )
-/*++
-
- Routine Description:
- Get Hid Protocol Request
-
- Arguments:
- UsbIo - EFI_USB_IO_PROTOCOL
- Interface - Which interface the caller wants to get protocol
- Protocol - Protocol value returned.
-
- Returns:
- EFI_SUCCESS
- EFI_DEVICE_ERROR
- EFI_TIMEOUT
-
---*/
-{
- UINT32 Status;
- EFI_STATUS Result;
- EFI_USB_DEVICE_REQUEST Request;
-
- //
- // Fill Device request packet
- //
- Request.RequestType = 0xa1;
- //
- // 10100001b;
- //
- Request.Request = EFI_USB_GET_PROTOCOL_REQUEST;
- Request.Value = 0;
- Request.Index = Interface;
- Request.Length = 1;
-
- Result = UsbIo->UsbControlTransfer (
- UsbIo,
- &Request,
- EfiUsbDataIn,
- TIMEOUT_VALUE,
- Protocol,
- sizeof (UINT8),
- &Status
- );
-
- return Result;
-}
-
-
-EFI_STATUS
-UsbSetProtocolRequest (
- IN EFI_USB_IO_PROTOCOL *UsbIo,
- IN UINT8 Interface,
- IN UINT8 Protocol
- )
-/*++
-
- Routine Description:
- Set Hid Protocol Request
-
- Arguments:
- UsbIo - EFI_USB_IO_PROTOCOL
- Interface - Which interface the caller wants to set protocol
- Protocol - Protocol value the caller wants to set.
-
- Returns:
- EFI_SUCCESS
- EFI_DEVICE_ERROR
- EFI_TIMEOUT
-
---*/
-{
- UINT32 Status;
- EFI_STATUS Result;
- EFI_USB_DEVICE_REQUEST Request;
-
- //
- // Fill Device request packet
- //
- Request.RequestType = 0x21;
- //
- // 00100001b;
- //
- Request.Request = EFI_USB_SET_PROTOCOL_REQUEST;
- Request.Value = Protocol;
- Request.Index = Interface;
- Request.Length = 0;
-
- Result = UsbIo->UsbControlTransfer (
- UsbIo,
- &Request,
- EfiUsbNoData,
- TIMEOUT_VALUE,
- NULL,
- 0,
- &Status
- );
- return Result;
-}
-
-
-EFI_STATUS
-UsbSetIdleRequest (
- IN EFI_USB_IO_PROTOCOL *UsbIo,
- IN UINT8 Interface,
- IN UINT8 ReportId,
- IN UINT8 Duration
- )
-/*++
-
- Routine Description:
- Set Idel request.
-
- Arguments:
- UsbIo - EFI_USB_IO_PROTOCOL
- Interface - Which interface the caller wants to set.
- ReportId - Which report the caller wants to set.
- Duration - Idle rate the caller wants to set.
-
- Returns:
- EFI_SUCCESS
- EFI_DEVICE_ERROR
- EFI_TIMEOUT
-
---*/
-{
- UINT32 Status;
- EFI_STATUS Result;
- EFI_USB_DEVICE_REQUEST Request;
-
- //
- // Fill Device request packet
- //
- Request.RequestType = 0x21;
- //
- // 00100001b;
- //
- Request.Request = EFI_USB_SET_IDLE_REQUEST;
- Request.Value = (UINT16) ((Duration << 8) | ReportId);
- Request.Index = Interface;
- Request.Length = 0;
-
- Result = UsbIo->UsbControlTransfer (
- UsbIo,
- &Request,
- EfiUsbNoData,
- TIMEOUT_VALUE,
- NULL,
- 0,
- &Status
- );
- return Result;
-}
-
-EFI_STATUS
-UsbGetIdleRequest (
- IN EFI_USB_IO_PROTOCOL *UsbIo,
- IN UINT8 Interface,
- IN UINT8 ReportId,
- OUT UINT8 *Duration
- )
-/*++
-
- Routine Description:
- Get Idel request.
-
- Arguments:
- UsbIo - EFI_USB_IO_PROTOCOL
- Interface - Which interface the caller wants to get.
- ReportId - Which report the caller wants to get.
- Duration - Idle rate the caller wants to get.
-
- Returns:
- EFI_SUCCESS
- EFI_DEVICE_ERROR
- EFI_TIMEOUT
-
---*/
-{
- UINT32 Status;
- EFI_STATUS Result;
- EFI_USB_DEVICE_REQUEST Request;
-
- //
- // Fill Device request packet
- //
- Request.RequestType = 0xa1;
- //
- // 10100001b;
- //
- Request.Request = EFI_USB_GET_IDLE_REQUEST;
- Request.Value = ReportId;
- Request.Index = Interface;
- Request.Length = 1;
-
- Result = UsbIo->UsbControlTransfer (
- UsbIo,
- &Request,
- EfiUsbDataIn,
- TIMEOUT_VALUE,
- Duration,
- 1,
- &Status
- );
-
- return Result;
-}
-
-
-EFI_STATUS
-UsbSetReportRequest (
- IN EFI_USB_IO_PROTOCOL *UsbIo,
- IN UINT8 Interface,
- IN UINT8 ReportId,
- IN UINT8 ReportType,
- IN UINT16 ReportLen,
- IN UINT8 *Report
- )
-/*++
-
- Routine Description:
- Hid Set Report request.
-
- Arguments:
- UsbIo - EFI_USB_IO_PROTOCOL
- Interface - Which interface the caller wants to set.
- ReportId - Which report the caller wants to set.
- ReportType - Type of report.
- ReportLen - Length of report descriptor.
- Report - Report Descriptor buffer.
-
- Returns:
- EFI_SUCCESS
- EFI_DEVICE_ERROR
- EFI_TIMEOUT
-
---*/
-{
- UINT32 Status;
- EFI_STATUS Result;
- EFI_USB_DEVICE_REQUEST Request;
-
- //
- // Fill Device request packet
- //
- Request.RequestType = 0x21;
- //
- // 00100001b;
- //
- Request.Request = EFI_USB_SET_REPORT_REQUEST;
- Request.Value = (UINT16) ((ReportType << 8) | ReportId);
- Request.Index = Interface;
- Request.Length = ReportLen;
-
- Result = UsbIo->UsbControlTransfer (
- UsbIo,
- &Request,
- EfiUsbDataOut,
- TIMEOUT_VALUE,
- Report,
- ReportLen,
- &Status
- );
-
- return Result;
-}
-
-EFI_STATUS
-UsbGetReportRequest (
- IN EFI_USB_IO_PROTOCOL *UsbIo,
- IN UINT8 Interface,
- IN UINT8 ReportId,
- IN UINT8 ReportType,
- IN UINT16 ReportLen,
- IN UINT8 *Report
- )
-/*++
-
- Routine Description:
- Hid Set Report request.
-
- Arguments:
- UsbIo - EFI_USB_IO_PROTOCOL
- Interface - Which interface the caller wants to set.
- ReportId - Which report the caller wants to set.
- ReportType - Type of report.
- ReportLen - Length of report descriptor.
- Report - Caller allocated buffer to store Report Descriptor.
-
- Returns:
- EFI_SUCCESS
- EFI_DEVICE_ERROR
- EFI_TIMEOUT
-
---*/
-{
- UINT32 Status;
- EFI_STATUS Result;
- EFI_USB_DEVICE_REQUEST Request;
-
- //
- // Fill Device request packet
- //
- Request.RequestType = 0xa1;
- //
- // 10100001b;
- //
- Request.Request = EFI_USB_GET_REPORT_REQUEST;
- Request.Value = (UINT16) ((ReportType << 8) | ReportId);
- Request.Index = Interface;
- Request.Length = ReportLen;
-
- Result = UsbIo->UsbControlTransfer (
- UsbIo,
- &Request,
- EfiUsbDataIn,
- TIMEOUT_VALUE,
- Report,
- ReportLen,
- &Status
- );
-
- return Result;
-}