SyterKit 0.4.0.x
SyterKit is a bare-metal framework
Loading...
Searching...
No Matches
usb_dma.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: GPL-2.0+ */
2
3#ifndef __USB_DMA_H__
4#define __USB_DMA_H__
5
6#include <stdarg.h>
7#include <stdbool.h>
8#include <stddef.h>
9#include <stdint.h>
10#include <types.h>
11
12#include "reg/reg-usb.h"
13
23int usb_dma_init(uint64_t husb);
24
32int usb_dma_request(void);
33
43int usb_dma_release(uint32_t dma_index);
44
56int usb_dma_setting(uint32_t dma_index, uint32_t trans_dir, uint32_t ep);
57
68int usb_dma_set_pktlen(uint32_t dma_index, uint32_t pkt_len);
69
81int usb_dma_start(uint32_t dma_index, uint32_t addr, uint32_t bytes);
82
92int usb_dma_stop(uint32_t dma_index);
93
103int usb_dma_int_query(uint32_t dma_index);
104
112int usb_dma_int_clear(void);
113
114#endif// __USB_DMA_H__
unsigned char bytes[UL_LEN/8]
Definition memtester.c:32
u64_t uint64_t
Definition stdint.h:16
u32_t uint32_t
Definition stdint.h:13
int usb_dma_release(uint32_t dma_index)
Release a USB DMA channel.
Definition usb_dma.c:228
int usb_dma_setting(uint32_t dma_index, uint32_t trans_dir, uint32_t ep)
Set the parameters of a USB DMA channel.
Definition usb_dma.c:239
int usb_dma_start(uint32_t dma_index, uint32_t addr, uint32_t bytes)
Start a USB DMA transfer.
Definition usb_dma.c:257
int usb_dma_stop(uint32_t dma_index)
Stop a USB DMA transfer.
Definition usb_dma.c:266
int usb_dma_int_clear(void)
Clear the interrupt status of all USB DMA channels.
Definition usb_dma.c:279
int usb_dma_request(void)
Request a USB DMA channel.
Definition usb_dma.c:217
int usb_dma_int_query(uint32_t dma_index)
Query the interrupt status of a USB DMA channel.
Definition usb_dma.c:275
int usb_dma_set_pktlen(uint32_t dma_index, uint32_t pkt_len)
Set the packet length of a USB DMA channel.
Definition usb_dma.c:248
int usb_dma_init(uint64_t husb)
Initialize USB DMA.
Definition usb_dma.c:211