fusion/hal/hal_storage/hal_interface_storage.c

70 lines
2.0 KiB
C
Raw Permalink Normal View History

2025-08-05 07:53:44 +00:00
/*************************************************
File name : hal_interface_button.c
Module : hal nv library interface typedefs
Author : Eric.wu@anker.com
Version :
Created on : 2020-10-28
Description :
Data structure and function definitions required by
the nv interface
Modify History:
1. Date: Author: Modification:
2020-10-28 amir.liang create
*************************************************/
#include "pal.h"
#include "hal_interface_storage.h"
#include "hal_product_config.h"
#include "hal_interface.h"
#if (HAL_CFG_STORAGE_ENABLE == HAL_CFG_STORAGE_TYPE_EMMC)
#include "emmc.h"
#elif (HAL_CFG_STORAGE_ENABLE == HAL_CFG_STORAGE_TYPE_NAND_FLASH)
#include "nand_flash.h"
#else
#include "emmc.h"
#endif
ST_HAL_STORAGE_INTERFACE g_HAL_Storage_Itf[] =
{
#if (HAL_CFG_STORAGE_ENABLE == HAL_CFG_STORAGE_TYPE_EMMC)
{
.pfnInit = EMMC_Storage_Init,
.pfnDeinit = EMMC_Storage_DeInit,
.pfnFormatDisk = EMMC_Storage_FormatDisk,
.pfnGetDiskInfo = EMMC_Storage_GetDiskInfo,
.pfnRegStatusCb = EMMC_Storage_RegStatusCb,
},
#elif (HAL_CFG_STORAGE_ENABLE == HAL_CFG_STORAGE_TYPE_NAND_FLASH)
{
.pfnInit = NandFlash_Storage_Init,
.pfnDeinit = NandFlash_Storage_DeInit,
.pfnFormatDisk = NandFlash_Storage_FormatDisk,
.pfnGetDiskInfo = NandFlash_Storage_GetDiskInfo,
.pfnRegStatusCb = NandFlash_Storage_RegStatusCb,
},
#else
{
.pfnInit = EMMC_Storage_Init,
.pfnDeinit = EMMC_Storage_DeInit,
.pfnFormatDisk = EMMC_Storage_FormatDisk,
.pfnGetDiskInfo = EMMC_Storage_GetDiskInfo,
.pfnRegStatusCb = EMMC_Storage_RegStatusCb,
},
#endif
};
ST_HAL_STORAGE_INTERFACE *HAL_Storage_GetInterface(int32_t Channel)
{
HAL_ITF_INDEX idx = HAL_SELF;
if ( Channel == HAL_CHANNEL_SELF )
{
idx = HAL_SELF;
}
else
{
return NULL;
}
return &g_HAL_Storage_Itf[idx];
}