alf_wb_dtl_begin

NAME

alf_wb_dtl_begin - Marks the beginning of a data transfer list for the specified target buffer_type.

SYNOPSIS

int alf_wb_dtl_begin (alf_wb_handle_t wb_handle, ALF_BUF_TYPE_T buffer_type, unsigned int offset_to_accel_buf);

Parameters  
wb_handle [IN] The work block handle.
buffer_type [IN] The type of the buffer. Possible values are:
  • ALF_BUF_IN: Input to the input only buffer
  • ALF_BUF_OUT: Output from the output only buffer
  • ALF_BUF_OVL_IN: Input to the overlapped buffer
  • ALF_BUF_OVL_OUT: Output from the overlapped buffer
  • ALF_BUF_OVL_INOUT: In/out to/from the overlapped buffer
offset_to_accel_buf [IN] Offset of the target buffer on the accelerator.

DESCRIPTION

This function marks the beginning of a data transfer list for the specified target buffer_type. Further calls to function alf_wb_dtl_entry_add refers to the currently opened data transfer list. You can create multiple data transfer lists per buffer type, however, only one data transfer list is opened for entry at any time for a specific work block there can be no nesting of data transfer list.

RETURN VALUE

0 Success.
less than 0 Errors occurred:
  • ALF_ERR_INVAL: Invalid input argument.
  • ALF_ERR_PERM: Operation not allowed.
  • ALF_ERR_BADF: Invalid work block handle.
  • ALF_ERR_2BIG: The offset to the accelerator buffer is larger than the size of the buffer.
  • ALF_ERR_NOSYS: The specified I/O type feature is not supported.
  • ALF_ERR_BADR: The requested buffer is not defined in the task context.
  • ALF_ERR_GENERIC: Generic internal errors.
  • ALF_ERR_NOBUFS: The internal data buffer is used up.
Related concepts
Data structures
Related reference
alf_wb_create
alf_wb_enqueue
alf_wb_parm_add
alf_wb_dtl_entry_add
alf_wb_dtl_end