max4146x_comp
USBDevice/USBDevice/TARGET_Silicon_Labs/inc/em_usbh.h@0:0061165683ee, 2020-10-25 (annotated)
- Committer:
- sdivarci
- Date:
- Sun Oct 25 20:10:02 2020 +0000
- Revision:
- 0:0061165683ee
sdivarci
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| sdivarci | 0:0061165683ee | 1 | /***************************************************************************//** |
| sdivarci | 0:0061165683ee | 2 | * @file em_usbh.h |
| sdivarci | 0:0061165683ee | 3 | * @brief USB protocol stack library API for EFM32. |
| sdivarci | 0:0061165683ee | 4 | * @version 3.20.14 |
| sdivarci | 0:0061165683ee | 5 | ******************************************************************************* |
| sdivarci | 0:0061165683ee | 6 | * @section License |
| sdivarci | 0:0061165683ee | 7 | * <b>(C) Copyright 2014 Silicon Labs, http://www.silabs.com</b> |
| sdivarci | 0:0061165683ee | 8 | ******************************************************************************* |
| sdivarci | 0:0061165683ee | 9 | * |
| sdivarci | 0:0061165683ee | 10 | * Licensed under the Apache License, Version 2.0 (the "License"); |
| sdivarci | 0:0061165683ee | 11 | * you may not use this file except in compliance with the License. |
| sdivarci | 0:0061165683ee | 12 | * You may obtain a copy of the License at |
| sdivarci | 0:0061165683ee | 13 | * |
| sdivarci | 0:0061165683ee | 14 | * http://www.apache.org/licenses/LICENSE-2.0 |
| sdivarci | 0:0061165683ee | 15 | * |
| sdivarci | 0:0061165683ee | 16 | * Unless required by applicable law or agreed to in writing, software |
| sdivarci | 0:0061165683ee | 17 | * distributed under the License is distributed on an "AS IS" BASIS, |
| sdivarci | 0:0061165683ee | 18 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| sdivarci | 0:0061165683ee | 19 | * See the License for the specific language governing permissions and |
| sdivarci | 0:0061165683ee | 20 | * limitations under the License. |
| sdivarci | 0:0061165683ee | 21 | * |
| sdivarci | 0:0061165683ee | 22 | ******************************************************************************/ |
| sdivarci | 0:0061165683ee | 23 | |
| sdivarci | 0:0061165683ee | 24 | #ifndef __EM_USBH_H |
| sdivarci | 0:0061165683ee | 25 | #define __EM_USBH_H |
| sdivarci | 0:0061165683ee | 26 | |
| sdivarci | 0:0061165683ee | 27 | #include "em_device.h" |
| sdivarci | 0:0061165683ee | 28 | #if defined( USB_PRESENT ) && ( USB_COUNT == 1 ) |
| sdivarci | 0:0061165683ee | 29 | #include "em_usb.h" |
| sdivarci | 0:0061165683ee | 30 | #if defined( USB_HOST ) |
| sdivarci | 0:0061165683ee | 31 | |
| sdivarci | 0:0061165683ee | 32 | #ifdef __cplusplus |
| sdivarci | 0:0061165683ee | 33 | extern "C" { |
| sdivarci | 0:0061165683ee | 34 | #endif |
| sdivarci | 0:0061165683ee | 35 | |
| sdivarci | 0:0061165683ee | 36 | /** @cond DO_NOT_INCLUDE_WITH_DOXYGEN */ |
| sdivarci | 0:0061165683ee | 37 | |
| sdivarci | 0:0061165683ee | 38 | extern USBH_Hc_TypeDef hcs[]; |
| sdivarci | 0:0061165683ee | 39 | extern int USBH_attachRetryCount; |
| sdivarci | 0:0061165683ee | 40 | extern const USBH_AttachTiming_TypeDef USBH_attachTiming[]; |
| sdivarci | 0:0061165683ee | 41 | extern USBH_Init_TypeDef USBH_initData; |
| sdivarci | 0:0061165683ee | 42 | extern volatile USBH_PortState_TypeDef USBH_portStatus; |
| sdivarci | 0:0061165683ee | 43 | |
| sdivarci | 0:0061165683ee | 44 | USB_Status_TypeDef USBH_CtlSendSetup( USBH_Ep_TypeDef *ep ); |
| sdivarci | 0:0061165683ee | 45 | USB_Status_TypeDef USBH_CtlSendData( USBH_Ep_TypeDef *ep, uint16_t length ); |
| sdivarci | 0:0061165683ee | 46 | USB_Status_TypeDef USBH_CtlReceiveData( USBH_Ep_TypeDef *ep, uint16_t length ); |
| sdivarci | 0:0061165683ee | 47 | |
| sdivarci | 0:0061165683ee | 48 | #if defined( USB_RAW_API ) |
| sdivarci | 0:0061165683ee | 49 | int USBH_CtlRxRaw( uint8_t pid, USBH_Ep_TypeDef *ep, void *data, int byteCount ); |
| sdivarci | 0:0061165683ee | 50 | int USBH_CtlTxRaw( uint8_t pid, USBH_Ep_TypeDef *ep, void *data, int byteCount ); |
| sdivarci | 0:0061165683ee | 51 | #endif |
| sdivarci | 0:0061165683ee | 52 | |
| sdivarci | 0:0061165683ee | 53 | void USBHEP_EpHandler( USBH_Ep_TypeDef *ep, USB_Status_TypeDef result ); |
| sdivarci | 0:0061165683ee | 54 | void USBHEP_CtrlEpHandler( USBH_Ep_TypeDef *ep, USB_Status_TypeDef result ); |
| sdivarci | 0:0061165683ee | 55 | void USBHEP_TransferDone( USBH_Ep_TypeDef *ep, USB_Status_TypeDef result ); |
| sdivarci | 0:0061165683ee | 56 | |
| sdivarci | 0:0061165683ee | 57 | __STATIC_INLINE uint16_t USBH_GetFrameNum( void ) |
| sdivarci | 0:0061165683ee | 58 | { |
| sdivarci | 0:0061165683ee | 59 | return USBHHAL_GetFrameNum(); |
| sdivarci | 0:0061165683ee | 60 | } |
| sdivarci | 0:0061165683ee | 61 | |
| sdivarci | 0:0061165683ee | 62 | __STATIC_INLINE bool USBH_FrameNumIsEven( void ) |
| sdivarci | 0:0061165683ee | 63 | { |
| sdivarci | 0:0061165683ee | 64 | return ( USBHHAL_GetFrameNum() & 1 ) == 0; |
| sdivarci | 0:0061165683ee | 65 | } |
| sdivarci | 0:0061165683ee | 66 | |
| sdivarci | 0:0061165683ee | 67 | /** @endcond */ |
| sdivarci | 0:0061165683ee | 68 | |
| sdivarci | 0:0061165683ee | 69 | #ifdef __cplusplus |
| sdivarci | 0:0061165683ee | 70 | } |
| sdivarci | 0:0061165683ee | 71 | #endif |
| sdivarci | 0:0061165683ee | 72 | |
| sdivarci | 0:0061165683ee | 73 | #endif /* defined( USB_HOST ) */ |
| sdivarci | 0:0061165683ee | 74 | #endif /* defined( USB_PRESENT ) && ( USB_COUNT == 1 ) */ |
| sdivarci | 0:0061165683ee | 75 | #endif /* __EM_USBH_H */ |