VSF Documented
__vsf_musb_fdrc_common.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 __VSF_MUSB_FDRC_COMMON_H__
19#define __VSF_MUSB_FDRC_COMMON_H__
20
21/*============================ INCLUDES ======================================*/
22
24
25#if ( (VSF_USE_USB_DEVICE == ENABLED) \
26 && (VSF_USBD_USE_DCD_MUSB_FDRC == ENABLED)) \
27 || ( (VSF_USE_USB_HOST == ENABLED) \
28 && (VSF_USBH_USE_HCD_MUSB_FDRC == ENABLED))
29
30#include "hal/vsf_hal.h"
31#include "./vsf_musb_fdrc_hw.h"
32
33#ifdef __cplusplus
34extern "C" {
35#endif
36
37/*============================ MACROS ========================================*/
38/*============================ MACROFIED FUNCTIONS ===========================*/
39/*============================ TYPES =========================================*/
40/*============================ GLOBAL VARIABLES ==============================*/
41/*============================ INCLUDES ======================================*/
42/*============================ PROTOTYPES ====================================*/
43
45
46extern void vk_musb_fdrc_set_mask(volatile uint8_t *reg, uint_fast8_t ep);
47extern void vk_musb_fdrc_clear_mask(volatile uint8_t *reg, uint_fast8_t ep);
49
56
57#ifdef __cplusplus
58}
59#endif
60
61#endif
62#endif // __VSF_MUSB_FDRC_COMMON_H__
63/* EOF */
void vk_musb_fdrc_write_fifo(vk_musb_fdrc_reg_t *reg, uint_fast8_t ep, uint8_t *buffer, uint_fast16_t size)
Definition __vsf_musb_fdrc_common.c:172
void vk_musb_fdrc_set_mask(volatile uint8_t *reg, uint_fast8_t ep)
Definition __vsf_musb_fdrc_common.c:39
uint16_t vk_musb_fdrc_set_fifo(vk_musb_fdrc_reg_t *reg, uint_fast8_t ep, usb_ep_type_t type, uint16_t pos, uint_fast16_t size, uint_fast8_t size_msk)
Definition __vsf_musb_fdrc_common.c:105
void vk_musb_fdrc_clear_mask(volatile uint8_t *reg, uint_fast8_t ep)
Definition __vsf_musb_fdrc_common.c:49
void vk_musb_fdrc_interrupt_init(vk_musb_fdrc_reg_t *reg)
Definition __vsf_musb_fdrc_common.c:65
void vk_musb_fdrc_fifo_init(vk_musb_fdrc_reg_t *reg)
Definition __vsf_musb_fdrc_common.c:97
uint16_t vk_musb_fdrc_get_mask(volatile uint8_t *reg)
Definition __vsf_musb_fdrc_common.c:59
uint_fast8_t vk_musb_fdrc_set_ep(vk_musb_fdrc_reg_t *reg, uint_fast8_t ep)
Definition __vsf_musb_fdrc_common.c:192
void vk_musb_fdrc_read_fifo(vk_musb_fdrc_reg_t *reg, uint_fast8_t ep, uint8_t *buffer, uint_fast16_t size)
Definition __vsf_musb_fdrc_common.c:152
uint_fast16_t vk_musb_fdrc_rx_fifo_size(vk_musb_fdrc_reg_t *reg, uint_fast8_t ep)
Definition __vsf_musb_fdrc_common.c:74
unsigned short uint16_t
Definition stdint.h:7
unsigned char uint_fast8_t
Definition stdint.h:23
unsigned short uint_fast16_t
Definition stdint.h:25
unsigned char uint8_t
Definition stdint.h:5
Definition vsf_musb_fdrc_hw.h:255
class vsf_$ * reg
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