AM64x MCU+ SDK  08.02.00

Introduction

This is UDMA driver common parameters and API

Files

file  udma_types.h
 UDMA Low Level Driver API/interface data types file.
 

Typedefs

typedef void * Udma_DrvHandle
 UDMA driver handle. More...
 
typedef void * Udma_ChHandle
 UDMA channel handle. More...
 
typedef void * Udma_EventHandle
 UDMA event handle. More...
 
typedef void * Udma_RingHandle
 UDMA ring handle. More...
 
typedef void * Udma_FlowHandle
 UDMA flow handle. More...
 

Macros

#define UDMA_CACHELINE_ALIGNMENT   (128U)
 Cache line size for alignment of descriptor and buffers. More...
 
#define UDMA_ALIGN_SIZE(x)   (((x) + UDMA_CACHELINE_ALIGNMENT) & ~(UDMA_CACHELINE_ALIGNMENT - 1U))
 Macro to align the size in bytes to UDMA cache line alignment. More...
 
#define UDMA_DEFAULT_CH_DISABLE_TIMEOUT   (100U)
 Default UDMA channel disable timeout. More...
 

UDMA Error Codes

Error codes returned by UDMA APIs

#define UDMA_SOK   ( (int32_t) (0))
 API call successful. More...
 
#define UDMA_EFAIL   (-(int32_t) (1))
 API call returned with error as failed. Used for generic error. It may be some hardware failure and/or software failure. More...
 
#define UDMA_EBADARGS   (-(int32_t) (2))
 API call returned with error as bad arguments. Typically, NULL pointer passed to the API where its not expected. More...
 
#define UDMA_EINVALID_PARAMS   (-(int32_t) (3))
 API call returned with error as invalid parameters. Typically when parameters passed are not valid or out of range. More...
 
#define UDMA_ETIMEOUT   (-(int32_t) (4))
 API call returned with error as timed out. Typically API is waiting for some condition and returned as condition not happened in the timeout period. More...
 
#define UDMA_EALLOC   (-(int32_t) (5))
 API call returned with error as allocation failed. More...
 

UDMA Instance ID

This represents the various Instances in an SOC. The actual Instances present in the chip is SOC dependent. Refer soc file for the actual instance present. Kindly use Udma_InstanceIdSoc macros for SOC specific name.

#define UDMA_INST_ID_0   (0U)
 
#define UDMA_INST_ID_1   (1U)
 
#define UDMA_INST_ID_2   (2U)
 
#define UDMA_INST_ID_3   (3U)
 

UDMA Mapped Group

This represents the various Mapped TX & RX Channels/Rings in the SOC. The actual Mapped TX & RX groups present in the chip is SOC dependent. Refer soc file for the actual instance present. Kindly use Udma_MappedTxGrpSoc macros for Mapped TX SOC specific name and Udma_MappedRxGrpSoc macros for Mapped RX SOC specific name.

#define UDMA_MAPPED_GROUP0   (0U)
 
#define UDMA_MAPPED_GROUP1   (1U)
 
#define UDMA_MAPPED_GROUP2   (2U)
 
#define UDMA_MAPPED_GROUP3   (3U)
 
#define UDMA_MAPPED_GROUP4   (4U)
 
#define UDMA_MAPPED_GROUP5   (5U)
 
#define UDMA_MAPPED_GROUP6   (6U)
 
#define UDMA_MAPPED_GROUP7   (7U)
 

Macro Definition Documentation

◆ UDMA_CACHELINE_ALIGNMENT

#define UDMA_CACHELINE_ALIGNMENT   (128U)

Cache line size for alignment of descriptor and buffers.

◆ UDMA_ALIGN_SIZE

#define UDMA_ALIGN_SIZE (   x)    (((x) + UDMA_CACHELINE_ALIGNMENT) & ~(UDMA_CACHELINE_ALIGNMENT - 1U))

Macro to align the size in bytes to UDMA cache line alignment.

◆ UDMA_DEFAULT_CH_DISABLE_TIMEOUT

#define UDMA_DEFAULT_CH_DISABLE_TIMEOUT   (100U)

Default UDMA channel disable timeout.

◆ UDMA_SOK

#define UDMA_SOK   ( (int32_t) (0))

API call successful.

◆ UDMA_EFAIL

#define UDMA_EFAIL   (-(int32_t) (1))

API call returned with error as failed. Used for generic error. It may be some hardware failure and/or software failure.

◆ UDMA_EBADARGS

#define UDMA_EBADARGS   (-(int32_t) (2))

API call returned with error as bad arguments. Typically, NULL pointer passed to the API where its not expected.

◆ UDMA_EINVALID_PARAMS

#define UDMA_EINVALID_PARAMS   (-(int32_t) (3))

API call returned with error as invalid parameters. Typically when parameters passed are not valid or out of range.

◆ UDMA_ETIMEOUT

#define UDMA_ETIMEOUT   (-(int32_t) (4))

API call returned with error as timed out. Typically API is waiting for some condition and returned as condition not happened in the timeout period.

◆ UDMA_EALLOC

#define UDMA_EALLOC   (-(int32_t) (5))

API call returned with error as allocation failed.

◆ UDMA_INST_ID_0

#define UDMA_INST_ID_0   (0U)

◆ UDMA_INST_ID_1

#define UDMA_INST_ID_1   (1U)

◆ UDMA_INST_ID_2

#define UDMA_INST_ID_2   (2U)

◆ UDMA_INST_ID_3

#define UDMA_INST_ID_3   (3U)

◆ UDMA_MAPPED_GROUP0

#define UDMA_MAPPED_GROUP0   (0U)

◆ UDMA_MAPPED_GROUP1

#define UDMA_MAPPED_GROUP1   (1U)

◆ UDMA_MAPPED_GROUP2

#define UDMA_MAPPED_GROUP2   (2U)

◆ UDMA_MAPPED_GROUP3

#define UDMA_MAPPED_GROUP3   (3U)

◆ UDMA_MAPPED_GROUP4

#define UDMA_MAPPED_GROUP4   (4U)

◆ UDMA_MAPPED_GROUP5

#define UDMA_MAPPED_GROUP5   (5U)

◆ UDMA_MAPPED_GROUP6

#define UDMA_MAPPED_GROUP6   (6U)

◆ UDMA_MAPPED_GROUP7

#define UDMA_MAPPED_GROUP7   (7U)

Typedef Documentation

◆ Udma_DrvHandle

typedef void* Udma_DrvHandle

UDMA driver handle.

◆ Udma_ChHandle

typedef void* Udma_ChHandle

UDMA channel handle.

◆ Udma_EventHandle

typedef void* Udma_EventHandle

UDMA event handle.

◆ Udma_RingHandle

typedef void* Udma_RingHandle

UDMA ring handle.

◆ Udma_FlowHandle

typedef void* Udma_FlowHandle

UDMA flow handle.