a0IFWrite()

Starts a non-blocking write.


Syntax

a0tError a0IFWrite(
a0tDMARegion *region,
a0tRequest *request,
a0tFormat *format,
void *address,
int count );

Arguments

Namerd/wrDescription
region read DMA region to write.
request write Request descriptor to hold the status.
format read Format of the data to send.
address write Address of the data to send.
count read Number of elements of the data to send.

Description

This function starts a non-blocking write to a specific DMA region region. It posts a request to write the remote data with its own format information. The data sent locally will be treated as count elements of the format and will be taken contiguously, starting at address.

On return of this function, the variable pointed by request contains an opaque request that should be used later to wait or test the completion of the write operation.


Return Values

If an error condition occurs, it returns the error code, otherwise it returns A0ErrOk. Possible values are as follows:
Error CodeDescription
A0ErrFailSend It was not possible to send a request.
A0ErrInvFormat The format has an invalid type.
A0ErrNotImplem The format has an unimplemented type.
A0ErrOkSuccessful completion.

See Also

a0FWrite() a0IFRead() a0IFWritePart() a0UseFormats() a0NewMapFormat() a0NewFunctionFormat() a0NewDMARegion() a0WaitRequest() a0TestRequest()