| /****************************************************************************** |
| * |
| * Copyright (C) 2002-2012 Broadcom Corporation |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at: |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| * |
| ******************************************************************************/ |
| |
| /****************************************************************************** |
| * |
| * This file contains NV definitions from WIDCOMM's Universal Embedded |
| * Drivers API. |
| * |
| ******************************************************************************/ |
| |
| #ifndef UNV_H |
| #define UNV_H |
| |
| #include "data_types.h" |
| |
| /******************************************************************************* |
| ** NV APIs |
| *******************************************************************************/ |
| |
| /**** Storage preferences ****/ |
| #define UNV_BLOCK 1 |
| #define UNV_BYTE 2 |
| #define UNV_NOPREF 3 |
| |
| typedef UINT8 tUNV_STORAGE_PREF; |
| |
| /**** Status ****/ |
| #define UNV_REINIT (-1) |
| #define UNV_WRITELOCKED (-2) |
| #define UNV_ERROR (-3) |
| |
| typedef INT16 tUNV_STATUS; |
| |
| /* Prototype for function to restore defaults to a block */ |
| typedef void (tUNV_DEFAULT_FUNC)(void); |
| |
| /******************************************************************************* |
| ** Function Prototypes |
| *******************************************************************************/ |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #ifndef UDRV_API |
| #define UDRV_API |
| #endif |
| |
| UDRV_API extern void UNV_Init(void *); |
| UDRV_API extern BOOLEAN UNV_MapBlock(UINT16, tUNV_STORAGE_PREF, UINT16, |
| UINT16, UINT16 *, void *); |
| UDRV_API extern BOOLEAN UNV_ReadMap(UINT16, tUNV_STORAGE_PREF *, UINT16 *, |
| UINT16 *, UINT16 *); |
| UDRV_API extern BOOLEAN UNV_EraseBlock(UINT16); |
| UDRV_API extern void UNV_Default(UINT16); |
| UDRV_API extern tUNV_STATUS UNV_Read(UINT16, UINT16, UINT16, UINT16, void *); |
| UDRV_API extern tUNV_STATUS UNV_Write(UINT16, UINT16, UINT16, UINT16, void *); |
| UDRV_API extern tUNV_STATUS UNV_ReadBlock(UINT16, UINT16, void *); |
| UDRV_API extern tUNV_STATUS UNV_WriteBlock(UINT16, void *); |
| UDRV_API extern UINT32 UNV_BytesRemaining(void); |
| UDRV_API extern void UNV_Consolidate(void); |
| UDRV_API extern tUNV_STATUS UNV_ReadPtr(UINT16, UINT16, UINT8 **); |
| UDRV_API extern tUNV_STATUS UNV_FreePtr(UINT16, UINT16); |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /* UNV_H */ |