# CARD_ReadEepromAsync

## C Specification

      #include <nitro/card.h>

      static inline void CARD_ReadEepromAsync (
          u32           src,
          void          *dst,
          u32           len,
          MIDmaCallback callback,
          void          *arg );

## Description

This function reads data asynchronously from an EEPROM device. This function returns control promptly.

Before using this function, you must lock the access bus using the `CARD_LockBackup` function.

Use the `CARD_WaitBackupAsync` function to wait for process completion. To determine the result when complete, call the `CARD_GetResultCode` function.

This function communicates internally with the IO processor via PXI. Note that the process will not be completed unless the PXI interrupt is enabled.

## Internal Operation

This function uses an internal thread to process asynchronously. See the description of the `CARD_GetThreadPriority` function for information about this thread.

## Arguments

`src` | Transfer source EEPROM address.
`dst` | Transfer destination memory address.
`len` | Length of the read data in bytes.
`callback` | Callback function upon completion. Specify NULL when not needed.
`arg` | Argument passed to callback function upon completion. Ignored when the callback specifies NULL.

## Return Values

None.

## See Also

`CARD_IsBackupEeprom`, `CARD_WaitBackupAsync`, `CARD_GetResultCode`, `CARD_ReadEeprom`, `CARD_WriteEeprom`, `CARD_VerifyEeprom`, `CARD_WriteAndVerifyEeprom`, `CARD_GetThreadPriority`

## Revision History

11/02/2004 Corrected a link destination.
08/18/2004 Added a description of the PXI interrupt.
07/28/2004 Initial version.