usb: device: Add usb_transfer_is_busy() function
Add usb_transfer_is_busy() function to check if there is ongoing transfer. Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
This commit is contained in:
parent
cc1b2c70cc
commit
2c672b92c8
2 changed files with 21 additions and 0 deletions
|
@ -418,6 +418,16 @@ int usb_transfer_sync(u8_t ep, u8_t *data, size_t dlen, unsigned int flags);
|
||||||
*/
|
*/
|
||||||
void usb_cancel_transfer(u8_t ep);
|
void usb_cancel_transfer(u8_t ep);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Check that transfer is ongoing for the endpoint
|
||||||
|
*
|
||||||
|
* @param[in] ep Endpoint address corresponding to the one
|
||||||
|
* listed in the device configuration table
|
||||||
|
*
|
||||||
|
* @return true if transfer is ongoing, false otherwise.
|
||||||
|
*/
|
||||||
|
bool usb_transfer_is_busy(u8_t ep);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Start the USB remote wakeup procedure
|
* @brief Start the USB remote wakeup procedure
|
||||||
*
|
*
|
||||||
|
|
|
@ -1194,6 +1194,17 @@ static struct usb_transfer_data *usb_ep_get_transfer(u8_t ep)
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool usb_transfer_is_busy(u8_t ep)
|
||||||
|
{
|
||||||
|
struct usb_transfer_data *trans = usb_ep_get_transfer(ep);
|
||||||
|
|
||||||
|
if (trans && trans->status == -EBUSY) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
static void usb_transfer_work(struct k_work *item)
|
static void usb_transfer_work(struct k_work *item)
|
||||||
{
|
{
|
||||||
struct usb_transfer_data *trans;
|
struct usb_transfer_data *trans;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue