VSF Documented
usbd.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Copyright(C)2009-2022 by VSF Team *
3 * *
4 * Licensed under the Apache License, Version 2.0 (the "License"); *
5 * you may not use this file except in compliance with the License. *
6 * You may obtain a copy of the License at *
7 * *
8 * http://www.apache.org/licenses/LICENSE-2.0 *
9 * *
10 * Unless required by applicable law or agreed to in writing, software *
11 * distributed under the License is distributed on an "AS IS" BASIS, *
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
13 * See the License for the specific language governing permissions and *
14 * limitations under the License. *
15 * *
16 ****************************************************************************/
17
18#ifndef __HAL_DRIVER_${SERIES}_USBD_H__
19#define __HAL_DRIVER_${SERIES}_USBD_H__
20
21/*============================ INCLUDES ======================================*/
22
23#include "hal/vsf_hal_cfg.h"
24
25#if VSF_HAL_USE_USBD == ENABLED
26
27#include "../usb.h"
28
29/*============================ MACROS ========================================*/
30
31#define vsf_hw_usbd_t vsf_hw_usb_t
32
33/*============================ MACROFIED FUNCTIONS ===========================*/
34/*============================ TYPES =========================================*/
35/*============================ GLOBAL VARIABLES ==============================*/
36/*============================ INCLUDES ======================================*/
37/*============================ PROTOTYPES ====================================*/
38
40extern void vsf_hw_usbd_fini(vsf_hw_usbd_t *usbd);
41extern void vsf_hw_usbd_reset(vsf_hw_usbd_t *usbd, usb_dc_cfg_t *cfg);
42
43extern void vsf_hw_usbd_connect(vsf_hw_usbd_t *usbd);
44extern void vsf_hw_usbd_disconnect(vsf_hw_usbd_t *usbd);
45extern void vsf_hw_usbd_wakeup(vsf_hw_usbd_t *usbd);
46
49
52
53extern void vsf_hw_usbd_get_setup(vsf_hw_usbd_t *usbd, uint8_t *buffer);
54extern void vsf_hw_usbd_status_stage(vsf_hw_usbd_t *usbd, bool is_in);
55
59
63
65
70
73
74extern void vsf_hw_usbd_irq(vsf_hw_usbd_t *usbd);
75
76#endif // VSF_HAL_USE_USBD
77#endif // __HAL_DRIVER_${SERIES}_USBD_H__
78/* EOF */
vsf_err_t
Definition __type.h:42
void vsf_hw_usbd_connect(vsf_hw_usb_t *dc)
Definition usbd.c:62
vsf_err_t vsf_hw_usbd_init(vsf_hw_usb_t *dc, usb_dc_ip_cfg_t *cfg)
Definition usbd.c:39
void vsf_hw_usbd_fini(vsf_hw_usb_t *dc)
Definition usbd.c:46
void vsf_hw_usbd_irq(vsf_hw_usb_t *dc)
Definition usbd.c:70
void vsf_hw_usbd_disconnect(vsf_hw_usb_t *dc)
Definition usbd.c:66
unsigned char uint_fast8_t
Definition stdint.h:23
unsigned int uint_fast32_t
Definition stdint.h:27
unsigned short uint_fast16_t
Definition stdint.h:25
unsigned char uint8_t
Definition stdint.h:5
Definition vsf_template_usb.h:316
void vsf_hw_usbd_status_stage(vsf_hw_usbd_t *usbd, bool is_in)
Definition usbd.c:90
vsf_err_t vsf_hw_usbd_ep_transfer_recv(vsf_hw_usbd_t *usbd, uint_fast8_t ep, uint8_t *buffer, uint_fast32_t size)
Definition usbd.c:150
vsf_err_t vsf_hw_usbd_ep_add(vsf_hw_usbd_t *usbd, uint_fast8_t ep, usb_ep_type_t type, uint_fast16_t size)
Definition usbd.c:100
uint_fast16_t vsf_hw_usbd_get_frame_number(vsf_hw_usbd_t *usbd)
Definition usbd.c:75
bool vsf_hw_usbd_ep_is_stalled(vsf_hw_usbd_t *usbd, uint_fast8_t ep)
Definition usbd.c:115
vsf_err_t vsf_hw_usbd_ep_transaction_write_buffer(vsf_hw_usbd_t *usbd, uint_fast8_t ep, uint8_t *buffer, uint_fast16_t size)
Definition usbd.c:145
vsf_err_t vsf_hw_usbd_ep_set_stall(vsf_hw_usbd_t *usbd, uint_fast8_t ep)
Definition usbd.c:110
uint_fast16_t vsf_hw_usbd_ep_get_size(vsf_hw_usbd_t *usbd, uint_fast8_t ep)
Definition usbd.c:105
vsf_err_t vsf_hw_usbd_ep_clear_stall(vsf_hw_usbd_t *usbd, uint_fast8_t ep)
Definition usbd.c:120
uint_fast8_t vsf_hw_usbd_get_mframe_number(vsf_hw_usbd_t *usbd)
Definition usbd.c:80
uint_fast8_t vsf_hw_usbd_get_address(vsf_hw_usbd_t *usbd)
Definition usbd.c:70
uint_fast32_t vsf_hw_usbd_ep_get_data_size(vsf_hw_usbd_t *usbd, uint_fast8_t ep)
Definition usbd.c:125
#define vsf_hw_usbd_t
Definition usbd.h:31
vsf_err_t vsf_hw_usbd_ep_transfer_send(vsf_hw_usbd_t *usbd, uint_fast8_t ep, uint8_t *buffer, uint_fast32_t size, bool zlp)
Definition usbd.c:155
void vsf_hw_usbd_wakeup(vsf_hw_usbd_t *usbd)
Definition usbd.c:60
void vsf_hw_usbd_get_setup(vsf_hw_usbd_t *usbd, uint8_t *buffer)
Definition usbd.c:85
void vsf_hw_usbd_set_address(vsf_hw_usbd_t *usbd, uint_fast8_t addr)
Definition usbd.c:65
uint_fast8_t vsf_hw_usbd_ep_get_feature(vsf_hw_usbd_t *usbd, uint_fast8_t ep, uint_fast8_t feature)
Definition usbd.c:95
vsf_err_t vsf_hw_usbd_ep_transaction_set_data_size(vsf_hw_usbd_t *usbd, uint_fast8_t ep, uint_fast16_t size)
Definition usbd.c:140
vsf_err_t vsf_hw_usbd_ep_transaction_read_buffer(vsf_hw_usbd_t *usbd, uint_fast8_t ep, uint8_t *buffer, uint_fast16_t size)
Definition usbd.c:130
vsf_err_t vsf_hw_usbd_ep_transaction_enable_out(vsf_hw_usbd_t *usbd, uint_fast8_t ep)
Definition usbd.c:135
void vsf_hw_usbd_reset(vsf_hw_usbd_t *usbd, usb_dc_cfg_t *cfg)
Definition usbd.c:45
vk_av_control_type_t type
Definition vsf_audio.h:170
uint32_t size
Definition vsf_memfs.h:50
usb_ep_type_t
Definition vsf_template_usb.h:277