Snitch Runtime
Loading...
Searching...
No Matches
dma_decls.h
1// Copyright 2023 ETH Zurich and University of Bologna.
2// Licensed under the Apache License, Version 2.0, see LICENSE for details.
3// SPDX-License-Identifier: Apache-2.0
4
5#pragma once
6
7#include <stdint.h>
8
10typedef uint32_t snrt_dma_txid_t;
11
12static inline uint32_t snrt_dma_busy(const uint32_t channel = 0);
13
14static inline uint32_t snrt_dma_would_block(const uint32_t channel = 0);
15
16inline snrt_dma_txid_t snrt_dma_start_2d(uint64_t dst, uint64_t src,
17 size_t size, size_t dst_stride,
18 size_t src_stride, size_t repeat,
19 const uint32_t channel = 0);
20
21inline uint32_t snrt_dma_start_1d(uint64_t dst, uint64_t src, size_t size,
22 const uint32_t channel = 0);
23
24inline void snrt_dma_memset(void *ptr, uint8_t value, uint32_t len);