TT Zephyr Platforms 18.11.99
Tenstorrent Firmware
Loading...
Searching...
No Matches
arc_dma.h File Reference
#include <stdint.h>
#include <stdbool.h>

Go to the source code of this file.

Macros

#define DMA_AUX_BASE   (0xd00)
#define DMA_C_CTRL_AUX   (0xd00 + 0x0)
#define DMA_C_CHAN_AUX   (0xd00 + 0x1)
#define DMA_C_SRC_AUX   (0xd00 + 0x2)
#define DMA_C_SRC_HI_AUX   (0xd00 + 0x3)
#define DMA_C_DST_AUX   (0xd00 + 0x4)
#define DMA_C_DST_HI_AUX   (0xd00 + 0x5)
#define DMA_C_ATTR_AUX   (0xd00 + 0x6)
#define DMA_C_LEN_AUX   (0xd00 + 0x7)
#define DMA_C_HANDLE_AUX   (0xd00 + 0x8)
#define DMA_C_STAT_AUX   (0xd00 + 0xc)
#define DMA_S_CTRL_AUX   (0xd00 + 0x10)
#define DMA_S_BASEC_AUX(ch)
#define DMA_S_LASTC_AUX(ch)
#define DMA_S_STATC_AUX(ch)
#define DMA_S_DONESTATD_AUX(d)
#define DMA_S_DONESTATD_CLR_AUX(d)
#define ARC_DMA_NP_ATTR   (1 << 3) /*Enable non posted writes */
#define ARC_DMA_SET_DONE_ATTR   (1 << 0) /* Set done without triggering interrupt */

Functions

void ArcDmaConfig (void)
void ArcDmaInitCh (uint32_t dma_ch, uint32_t base, uint32_t last)
void ArcDmaStart (uint32_t dma_ch, const void *p_src, void *p_dest, uint32_t len, uint32_t attr)
void ArcDmaNext (const void *p_src, void *p_dest, uint32_t len, uint32_t attr)
uint32_t ArcDmaGetHandle (void)
uint32_t ArcDmaPollBusy (void)
void ArcDmaClearDone (uint32_t handle)
uint32_t ArcDmaGetDone (uint32_t handle)
bool ArcDmaTransfer (const void *src, void *dst, uint32_t size)

Macro Definition Documentation

◆ ARC_DMA_NP_ATTR

#define ARC_DMA_NP_ATTR   (1 << 3) /*Enable non posted writes */

◆ ARC_DMA_SET_DONE_ATTR

#define ARC_DMA_SET_DONE_ATTR   (1 << 0) /* Set done without triggering interrupt */

◆ DMA_AUX_BASE

#define DMA_AUX_BASE   (0xd00)

◆ DMA_C_ATTR_AUX

#define DMA_C_ATTR_AUX   (0xd00 + 0x6)

◆ DMA_C_CHAN_AUX

#define DMA_C_CHAN_AUX   (0xd00 + 0x1)

◆ DMA_C_CTRL_AUX

#define DMA_C_CTRL_AUX   (0xd00 + 0x0)

◆ DMA_C_DST_AUX

#define DMA_C_DST_AUX   (0xd00 + 0x4)

◆ DMA_C_DST_HI_AUX

#define DMA_C_DST_HI_AUX   (0xd00 + 0x5)

◆ DMA_C_HANDLE_AUX

#define DMA_C_HANDLE_AUX   (0xd00 + 0x8)

◆ DMA_C_LEN_AUX

#define DMA_C_LEN_AUX   (0xd00 + 0x7)

◆ DMA_C_SRC_AUX

#define DMA_C_SRC_AUX   (0xd00 + 0x2)

◆ DMA_C_SRC_HI_AUX

#define DMA_C_SRC_HI_AUX   (0xd00 + 0x3)

◆ DMA_C_STAT_AUX

#define DMA_C_STAT_AUX   (0xd00 + 0xc)

◆ DMA_S_BASEC_AUX

#define DMA_S_BASEC_AUX ( ch)
Value:
(0xd00 + 0x83 + (ch))

◆ DMA_S_CTRL_AUX

#define DMA_S_CTRL_AUX   (0xd00 + 0x10)

◆ DMA_S_DONESTATD_AUX

#define DMA_S_DONESTATD_AUX ( d)
Value:
(0xd00 + 0x20 + (d)) /* Descriptor seclection. Each D stores descriptors d*32 +: 32 */
irp nz macro MOVR cc d

◆ DMA_S_DONESTATD_CLR_AUX

#define DMA_S_DONESTATD_CLR_AUX ( d)
Value:
(0xd00 + 0x40 + (d))

◆ DMA_S_LASTC_AUX

#define DMA_S_LASTC_AUX ( ch)
Value:
(0xd00 + 0x84 + (ch))

◆ DMA_S_STATC_AUX

#define DMA_S_STATC_AUX ( ch)
Value:
(0xd00 + 0x86 + (ch))

Function Documentation

◆ ArcDmaClearDone()

void ArcDmaClearDone ( uint32_t handle)

◆ ArcDmaConfig()

void ArcDmaConfig ( void )

◆ ArcDmaGetDone()

uint32_t ArcDmaGetDone ( uint32_t handle)

◆ ArcDmaGetHandle()

uint32_t ArcDmaGetHandle ( void )

◆ ArcDmaInitCh()

void ArcDmaInitCh ( uint32_t dma_ch,
uint32_t base,
uint32_t last )

◆ ArcDmaNext()

void ArcDmaNext ( const void * p_src,
void * p_dest,
uint32_t len,
uint32_t attr )

◆ ArcDmaPollBusy()

uint32_t ArcDmaPollBusy ( void )

◆ ArcDmaStart()

void ArcDmaStart ( uint32_t dma_ch,
const void * p_src,
void * p_dest,
uint32_t len,
uint32_t attr )

◆ ArcDmaTransfer()

bool ArcDmaTransfer ( const void * src,
void * dst,
uint32_t size )