MdeModulePkg UsbBotPei: The UsbBotPei module contains the private structure definition used by the UsbBusPei module.

If the structure layout in UsbBusPei is changed, then the UsbBotPei will not work.

1. As the maximum number of endpoints is 16, use UINT16 type rather than UINT8 for DataToggle.
2. DataToggle needs to be reset to 0 when endpoint stall is cleared, do it in PeiUsbControlTransfer().

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15185 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Star Zeng
2014-01-26 02:49:41 +00:00
committed by lzeng14
parent 6ddc2ff3ef
commit 506560e75a
6 changed files with 67 additions and 254 deletions

View File

@@ -1,7 +1,7 @@
/** @file
Common Libarary for PEI USB
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved. <BR>
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved. <BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions
@@ -187,25 +187,6 @@ PeiUsbSetConfiguration (
IN PEI_USB_IO_PPI *UsbIoPpi
);
/**
Clear Endpoint Halt.
@param PeiServices General-purpose services that are available to every PEIM.
@param UsbIoPpi Indicates the PEI_USB_IO_PPI instance.
@param EndpointAddress The endpoint address.
@retval EFI_SUCCESS Endpoint halt is cleared successfully.
@retval EFI_DEVICE_ERROR Cannot clear the endpoint halt status due to a hardware error.
@retval Others Other failure occurs.
**/
EFI_STATUS
PeiUsbClearEndpointHalt (
IN EFI_PEI_SERVICES **PeiServices,
IN PEI_USB_IO_PPI *UsbIoPpi,
IN UINT8 EndpointAddress
);
/**
Judge if the port is connected with a usb device or not.