sdk-hwV1.3/lichee/linux-4.9/modules/nand/sun50iw1p1/nfd/nand_lib_cfg.c

113 lines
3.3 KiB
C
Raw Normal View History

2024-05-07 10:09:20 +00:00
#define PHY_ONLY_TOG_AND_SDR 1
#define PHY_WAIT_RB_BEFORE 1
#define PHY_WAIT_RB_INTERRRUPT 1
#define PHY_WAIT_DMA_INTERRRUPT 0
/*****************************************************************************
1.һ<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ͬһ<EFBFBD><EFBFBD>flash
2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>flash
<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>
1.֧<EFBFBD><EFBFBD> two-plane
2.֧<EFBFBD><EFBFBD> vertical_interleave
3.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>32k<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>two-plane
4.vertical_interleave ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>rb<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>chip<EFBFBD><EFBFBD><EFBFBD>
˫ͨ<EFBFBD><EFBFBD>
1.֧<EFBFBD><EFBFBD> two-plane
2.֧<EFBFBD><EFBFBD>dual_channel
3.֧<EFBFBD><EFBFBD>vertical_interleave
4.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>32k<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>two-plane
5.dual_channel ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>chip0<EFBFBD><EFBFBD>chip0<EFBFBD><EFBFBD><EFBFBD>
6.vertical_interleave ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>rb<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>chip<EFBFBD><EFBFBD><EFBFBD>
*****************************************************************************/
#define PHY_SUPPORT_TWO_PLANE 1
#define PHY_SUPPORT_VERTICAL_INTERLEAVE 1
#define PHY_SUPPORT_DUAL_CHANNEL 1
/*****************************************************************************
*Name :
*Description :
*Parameter :
*Return :
*Note :
*****************************************************************************/
int nand_cfg_interface(void)
{
return PHY_ONLY_TOG_AND_SDR ? 1 : 0;
}
/*****************************************************************************
*Name :
*Description :
*Parameter :
*Return :
*Note :
*****************************************************************************/
int nand_wait_rb_before(void)
{
return PHY_WAIT_RB_BEFORE ? 1 : 0;
}
/*****************************************************************************
*Name :
*Description :
*Parameter :
*Return :
*Note :
*****************************************************************************/
int nand_wait_rb_mode(void)
{
return PHY_WAIT_RB_INTERRRUPT ? 1 : 0;
}
/*****************************************************************************
*Name :
*Description :
*Parameter :
*Return :
*Note :
*****************************************************************************/
int nand_wait_dma_mode(void)
{
return PHY_WAIT_DMA_INTERRRUPT ? 1 : 0;
}
/*****************************************************************************
*Name :
*Description :
*Parameter :
*Return :
*Note :
*****************************************************************************/
int nand_support_two_plane(void)
{
return PHY_SUPPORT_TWO_PLANE ? 1 : 0;
}
/*****************************************************************************
*Name :
*Description :
*Parameter :
*Return :
*Note :
*****************************************************************************/
int nand_support_vertical_interleave(void)
{
return PHY_SUPPORT_VERTICAL_INTERLEAVE ? 1 : 0;
}
/*****************************************************************************
*Name :
*Description :
*Parameter :
*Return :
*Note :
*****************************************************************************/
int nand_support_dual_channel(void)
{
return PHY_SUPPORT_DUAL_CHANNEL ? 1 : 0;
}