Repostiory containing DAPLink source code with Reset Pin workaround for HANI_IOT board.

Upstream: https://github.com/ARMmbed/DAPLink

Committer:
Pawel Zarembski
Date:
Tue Apr 07 12:55:42 2020 +0200
Revision:
0:01f31e923fe2
hani: DAPLink with reset workaround

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Pawel Zarembski 0:01f31e923fe2 1 /**
Pawel Zarembski 0:01f31e923fe2 2 * @file usbd_core.h
Pawel Zarembski 0:01f31e923fe2 3 * @brief USB Device Core header
Pawel Zarembski 0:01f31e923fe2 4 *
Pawel Zarembski 0:01f31e923fe2 5 * DAPLink Interface Firmware
Pawel Zarembski 0:01f31e923fe2 6 * Copyright (c) 2009-2016, ARM Limited, All Rights Reserved
Pawel Zarembski 0:01f31e923fe2 7 * SPDX-License-Identifier: Apache-2.0
Pawel Zarembski 0:01f31e923fe2 8 *
Pawel Zarembski 0:01f31e923fe2 9 * Licensed under the Apache License, Version 2.0 (the "License"); you may
Pawel Zarembski 0:01f31e923fe2 10 * not use this file except in compliance with the License.
Pawel Zarembski 0:01f31e923fe2 11 * You may obtain a copy of the License at
Pawel Zarembski 0:01f31e923fe2 12 *
Pawel Zarembski 0:01f31e923fe2 13 * http://www.apache.org/licenses/LICENSE-2.0
Pawel Zarembski 0:01f31e923fe2 14 *
Pawel Zarembski 0:01f31e923fe2 15 * Unless required by applicable law or agreed to in writing, software
Pawel Zarembski 0:01f31e923fe2 16 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
Pawel Zarembski 0:01f31e923fe2 17 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Pawel Zarembski 0:01f31e923fe2 18 * See the License for the specific language governing permissions and
Pawel Zarembski 0:01f31e923fe2 19 * limitations under the License.
Pawel Zarembski 0:01f31e923fe2 20 */
Pawel Zarembski 0:01f31e923fe2 21
Pawel Zarembski 0:01f31e923fe2 22 #ifndef __USBD_CORE_H__
Pawel Zarembski 0:01f31e923fe2 23 #define __USBD_CORE_H__
Pawel Zarembski 0:01f31e923fe2 24
Pawel Zarembski 0:01f31e923fe2 25
Pawel Zarembski 0:01f31e923fe2 26 /*--------------------------- Data structures --------------------------------*/
Pawel Zarembski 0:01f31e923fe2 27
Pawel Zarembski 0:01f31e923fe2 28 /* USB Device Core Endpoint Data Structure */
Pawel Zarembski 0:01f31e923fe2 29 typedef struct _USBD_EP_DATA {
Pawel Zarembski 0:01f31e923fe2 30 U8 *pData;
Pawel Zarembski 0:01f31e923fe2 31 U16 Count;
Pawel Zarembski 0:01f31e923fe2 32 } USBD_EP_DATA;
Pawel Zarembski 0:01f31e923fe2 33
Pawel Zarembski 0:01f31e923fe2 34
Pawel Zarembski 0:01f31e923fe2 35 /*--------------------------- Global variables -------------------------------*/
Pawel Zarembski 0:01f31e923fe2 36
Pawel Zarembski 0:01f31e923fe2 37 /* USB Device Core Global Variables */
Pawel Zarembski 0:01f31e923fe2 38 extern U16 USBD_DeviceStatus;
Pawel Zarembski 0:01f31e923fe2 39 extern U8 USBD_DeviceAddress;
Pawel Zarembski 0:01f31e923fe2 40 extern U8 USBD_Configuration;
Pawel Zarembski 0:01f31e923fe2 41 extern U32 USBD_EndPointMask;
Pawel Zarembski 0:01f31e923fe2 42 extern U32 USBD_EndPointHalt;
Pawel Zarembski 0:01f31e923fe2 43 extern U32 USBD_EndPointStall;
Pawel Zarembski 0:01f31e923fe2 44 extern U8 USBD_NumInterfaces;
Pawel Zarembski 0:01f31e923fe2 45 extern U8 USBD_HighSpeed;
Pawel Zarembski 0:01f31e923fe2 46 extern U8 USBD_ZLP;
Pawel Zarembski 0:01f31e923fe2 47
Pawel Zarembski 0:01f31e923fe2 48 extern USBD_EP_DATA USBD_EP0Data;
Pawel Zarembski 0:01f31e923fe2 49 extern USB_SETUP_PACKET USBD_SetupPacket;
Pawel Zarembski 0:01f31e923fe2 50
Pawel Zarembski 0:01f31e923fe2 51 #ifdef __RTX
Pawel Zarembski 0:01f31e923fe2 52 extern OS_TID USBD_RTX_DevTask;
Pawel Zarembski 0:01f31e923fe2 53 extern OS_TID USBD_RTX_EPTask[];
Pawel Zarembski 0:01f31e923fe2 54 extern OS_TID USBD_RTX_CoreTask;
Pawel Zarembski 0:01f31e923fe2 55 #endif
Pawel Zarembski 0:01f31e923fe2 56
Pawel Zarembski 0:01f31e923fe2 57 /*--------------------------- Functions exported to class specific files -----*/
Pawel Zarembski 0:01f31e923fe2 58
Pawel Zarembski 0:01f31e923fe2 59 extern void USBD_SetupStage(void);
Pawel Zarembski 0:01f31e923fe2 60 extern void USBD_DataInStage(void);
Pawel Zarembski 0:01f31e923fe2 61 extern void USBD_DataOutStage(void);
Pawel Zarembski 0:01f31e923fe2 62 extern void USBD_StatusInStage(void);
Pawel Zarembski 0:01f31e923fe2 63 extern void USBD_StatusOutStage(void);
Pawel Zarembski 0:01f31e923fe2 64
Pawel Zarembski 0:01f31e923fe2 65
Pawel Zarembski 0:01f31e923fe2 66 /*--------------------------- Event handling routines ------------------------*/
Pawel Zarembski 0:01f31e923fe2 67
Pawel Zarembski 0:01f31e923fe2 68 extern void usbd_class_init(void);
Pawel Zarembski 0:01f31e923fe2 69 extern void USBD_EndPoint0(U32 event);
Pawel Zarembski 0:01f31e923fe2 70
Pawel Zarembski 0:01f31e923fe2 71 #ifdef __RTX
Pawel Zarembski 0:01f31e923fe2 72 extern void USBD_RTX_EndPoint0(void);
Pawel Zarembski 0:01f31e923fe2 73 #endif
Pawel Zarembski 0:01f31e923fe2 74
Pawel Zarembski 0:01f31e923fe2 75 #endif /* __USBD_CORE_H__ */