# CARD_WriteAndVerifyFlash

## C Specification

  `#include <nitro/card.h>`
  `static inline BOOL CARD_WriteAndVerifyFlash(u32 dst, const void *src, u32 len);`

## Arguments

dst | The FLASH address of the transfer destination
src | Transfer source memory address.
len | Byte length of data being written.

## Return Values

TRUE if the process succeeds and the data are the same. FALSE otherwise.

## Description

This function writes data to the FLASH device, and then performs a comparison on that written data. The function does not return control until it has finished processing. If the process succeeds and the data matches, the function returns TRUE. Otherwise, it returns FALSE. To get the detailed result value when the process fails, call the `CARD_GetResultCode` function. In order to use this function, you must first lock the access bus with the `CARD_LockBackup` function.

## Internal Operation

This function communicates with the ARM7 processor internally via PXI.
The process will not end if PXI interrupts are not enabled.

## See Also

`CARD_GetResultCode` `CARD_IsBackupFlash`, `CARD_WriteAndVerifyFlashAsync`, `CARD_ReadFlash`, `CARD_WriteFlash`, `CARD_VerifyFlash`,

## Revision History

12/09/2004 Changed "IO processor" to "ARM7 processor".
08/31/2004 Added description for the `CARD_GetResultCode` function.
08/23/2004 Initial version.