PDK API Guide for J721E
UDMA Driver Common Data types

Introduction

This is UDMA driver common parameters and API

Files

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

Macros

#define UDMA_CACHELINE_ALIGNMENT   (128U)
 Cache line size for alignment of descriptor and buffers. More...
 
#define UDMA_NO_WAIT   ((uint32_t) 0U)
 UDMA transaction timeout define - no wait. More...
 
#define UDMA_WAIT_FOREVER   (~((uint32_t) 0U))
 UDMA transaction timeout define - wait for ever. More...
 
#define UDMA_INIT_DONE   (0xABDCABCDU)
 Macro used to specify that init is performed for an object. More...
 
#define UDMA_DEINIT_DONE   (0x00000000U)
 Macro used to specify that deinit is performed for an object. More...
 

UDMA Error Codes

Error codes returned by UDMA APIs

#define UDMA_SOK   (CSL_PASS)
 API call successful. More...
 
#define UDMA_EFAIL   (CSL_EFAIL)
 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   (CSL_EBADARGS)
 API call returned with error as bad arguments. Typically, NULL pointer passed to the API where its not expected. More...
 
#define UDMA_EINVALID_PARAMS   (CSL_EINVALID_PARAMS)
 API call returned with error as invalid parameters. Typically when parameters passed are not valid or out of range. More...
 
#define UDMA_ETIMEOUT   (CSL_ETIMEOUT)
 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   (CSL_EALLOC)
 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 UTC ID

This represents the various UTC IP in the SOC. The actual UTC present in the chip is SOC dependent. Refer soc file for the actual instance present. Kindly use Udma_UtcIdSoc macros for SOC specific name.

#define UDMA_UTC_ID0   (0U)
 
#define UDMA_UTC_ID1   (1U)
 
#define UDMA_UTC_ID2   (2U)
 
#define UDMA_UTC_ID3   (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_SOK

#define UDMA_SOK   (CSL_PASS)

API call successful.

◆ UDMA_EFAIL

#define UDMA_EFAIL   (CSL_EFAIL)

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   (CSL_EBADARGS)

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   (CSL_EINVALID_PARAMS)

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

◆ UDMA_ETIMEOUT

#define UDMA_ETIMEOUT   (CSL_ETIMEOUT)

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   (CSL_EALLOC)

API call returned with error as allocation failed.

◆ UDMA_NO_WAIT

#define UDMA_NO_WAIT   ((uint32_t) 0U)

UDMA transaction timeout define - no wait.

◆ UDMA_WAIT_FOREVER

#define UDMA_WAIT_FOREVER   (~((uint32_t) 0U))

UDMA transaction timeout define - wait for ever.

◆ UDMA_INIT_DONE

#define UDMA_INIT_DONE   (0xABDCABCDU)

Macro used to specify that init is performed for an object.

◆ UDMA_DEINIT_DONE

#define UDMA_DEINIT_DONE   (0x00000000U)

Macro used to specify that deinit is performed for an object.

◆ 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_UTC_ID0

#define UDMA_UTC_ID0   (0U)

◆ UDMA_UTC_ID1

#define UDMA_UTC_ID1   (1U)

◆ UDMA_UTC_ID2

#define UDMA_UTC_ID2   (2U)

◆ UDMA_UTC_ID3

#define UDMA_UTC_ID3   (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)