msdbot.c File Reference
Implements the host side of the Bulk Only Transport protocol for USB Mass Storage class Devices.
- Version
- 5.4.0
License
Copyright 2015 Silicon Labs, Inc. http://www.silabs.com
This file is licensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.
Definition in file msdbot.c
.
#include "em_usb.h
"
#include "msdbot.h
"
Functions | |
int | MSDBOT_Init (USBH_Ep_TypeDef *out, USBH_Ep_TypeDef *in) |
MSDBOT module initialization. | |
int | MSDBOT_Xfer (void *cbw, void *data) |
Perform an MSD Bulk Only Transfer (BOT). | |
Function Documentation
int MSDBOT_Init | ( | USBH_Ep_TypeDef * | out, |
USBH_Ep_TypeDef * | in |
||
) |
MSDBOT module initialization.
- Parameters
-
[in] out
Pointer to an MSD bulk OUT endpoint structure. [in] in
Pointer to an MSD bulk IN endpoint structure.
- Returns
- MSDBOT_STATUS_OK on success, else MSDBOT_INIT_ERROR.
Definition at line 57
of file msdbot.c
.
References MSDBOT_INIT_ERROR, MSDBOT_STATUS_OK, and PORT_FULL_SPEED.
Referenced by MSDSCSI_Init().
int MSDBOT_Xfer | ( | void * | cbw, |
void * | data |
||
) |
Perform an MSD Bulk Only Transfer (BOT).
- Parameters
-
[in] cbw
Pointer to a Command Block Wrapper (CBW) data structure. [in] data
Data buffer for data to be transferred.
- Returns
- A positive (or zero) value indicating the number of bytes transferred.
A negative value indicates a transfer error code enumerated in MSDBOT_Status_TypeDef.
Definition at line 97
of file msdbot.c
.
References MSDBOT_CSW_TypeDef::bCSWStatus, MSDBOT_CBW_TypeDef::dCBWDataTransferLength, MSDBOT_CBW_TypeDef::Direction, MSDBOT_CMD_FAILED, MSDBOT_XFER_ERROR, USB_CLASS_MSD_CSW_CMDPASSED, and USB_STATUS_EP_STALLED.
Referenced by MSDSCSI_Inquiry(), MSDSCSI_Read10(), MSDSCSI_ReadCapacity(), MSDSCSI_RequestSense(), MSDSCSI_TestUnitReady(), and MSDSCSI_Write10().