Jump to main content

##

# 1.1.4.4.18 DRV_NAND_FLASH_SkipBlock_PageWrite Function

## C

    bool DRV_NAND_FLASH_SkipBlock_PageWrite(
        const DRV_HANDLE handle,
        uint16_t blockNum,
        uint16_t pageNum,
        uint8_t *data,
        uint8_t *spare,
        bool disableBlockCheck
    );

## Summary

Writes the data and/or the spare area of a page of given block to NAND Flash.

## Description

This function schedules a blocking operation for writing the data and/or the spare area of a page of given block to NAND Flash.

## Precondition

The DRV_NAND_FLASH_Open() routine must have been called for the specified NAND FLASH driver instance.

## Parameters

Param | Description
--- | ---
handle | A valid open-instance handle, returned from the driver's open routine
blockNum | Block number to write page
pageNum | Page number to write inside the given block
data | Pointer to source data buffer
spare | Pointer to source spare buffer.
disableBlockCheck | 0 - Block will be checked as good before writing a page. 1 - Block will not check before writing a page.

## Returns

true - If Page write is successfully completed

false - If Page write fails

## Example

    DRV_HANDLE handle; // Returned from DRV_NAND_FLASH_Open
    uint16_t blockNum = 3;
    uint16_t pageNum = 0;
    static uint8_t pageBuffer[4096 + 224];

    memset(pageBuffer, 0x55, sizeof(pageBuffer));
    if (DRV_NAND_FLASH_SkipBlock_PageWrite(handle, blockNum, pageNum, pageBuffer, 0, 0))
    {
        // Page write successfully completed
    }

## Remarks

This routine will block wait until write request is submitted successfully.

Client should wait until write is complete to send next transfer request.