Skip to content

Include/FlashFSInstance.h

The AWEFlashFSInstance API Header File.

Classes

Name
struct _AWEFlashFSInstance
The DSPC Flash File System Instance.

Types

Name
typedef struct _AWEFlashFSInstance AWEFlashFSInstance
The DSPC Flash File System Instance.

Defines

Name
FLASH_FS_API_CHANGED

Types Documentation

typedef AWEFlashFSInstance

typedef struct _AWEFlashFSInstance AWEFlashFSInstance;

The DSPC Flash File System Instance.

Optional – SINGLE INSTANCE ONLY

Macros Documentation

define FLASH_FS_API_CHANGED

#define FLASH_FS_API_CHANGED

Source code

/*******************************************************************************
*
*               Audio Framework
*               ---------------
*
********************************************************************************
*     FlashFSInstance.h
********************************************************************************
*
*     Description:  Prototypes of AudioWeaver Flash File System
*
*     Copyright:    (c) 2007-2021 DSP Concepts, Inc. All rights reserved.
*                   3235 Kifer Road
*                   Santa Clara, CA 95054
*
*******************************************************************************/

#ifndef _FLASHFSINSTANCE_H
#define _FLASHFSINSTANCE_H

#include "FileInfo.h"

#ifdef  __cplusplus
extern "C" {
#endif

// Forward decl as AWEInstance and AWEFlashFSInstance reference each other
struct _AWEInstance;

typedef struct _AWEFlashFSInstance
{
    UINT32 flashSizeInBytes;

    UINT32 flashErasableBlockSizeInBytes;

    UINT32 flashStartOffsetInBytes;

    UINT32 flashEraseTimeInMs;

    BOOL (*cbInit)(void);

    BOOL (*cbEraseSector)(UINT32 nStartingAddress, UINT32 nNumberOfSectors);

    BOOL (*cbFlashWrite)(UINT32 nFlashAddress, UINT32 * pBuffer, UINT32 nDWordsToWrite);

    BOOL (*cbFlashRead)(UINT32 nFlashAddress, UINT32 * pBuffer, UINT32 nDWordsToRead);

    INT32 (*cbFlashProcessCmd)(struct _AWEInstance *pAWE);

#ifdef FILESYSTEM_FRAMEWORK
    FILESYSTEM_FRAMEWORK
#else
    UINT32 _Reserved[59];
#endif

} AWEFlashFSInstance;

// Macro to indicate API's changed
#define FLASH_FS_API_CHANGED

#ifdef  __cplusplus
}
#endif


#endif  // _FLASHFSINSTANCE_H