mirror of
https://github.com/rvtr/twl_wrapsdk.git
synced 2025-10-31 06:11:10 -04:00
small fix
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/twl_wrapsdk/trunk@153 4ee2a332-4b2b-5046-8439-1ba90f034370
This commit is contained in:
parent
89ecd85df0
commit
08109c64b6
@ -61,9 +61,9 @@ static int nand_calculated_fat_params = 0;
|
|||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
static関数
|
static関数
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
static void sdi_get_CHS_params( void);
|
static BOOL sdi_get_CHS_params( void);
|
||||||
static u32 sdi_get_ceil( u32 cval, u32 mval);
|
static u32 sdi_get_ceil( u32 cval, u32 mval);
|
||||||
static void sdi_get_nom( u32 min_nom);
|
static BOOL sdi_get_nom( u32 min_nom);
|
||||||
static void sdi_get_fatparams( void);
|
static void sdi_get_fatparams( void);
|
||||||
static void sdi_build_partition_table( void);
|
static void sdi_build_partition_table( void);
|
||||||
|
|
||||||
@ -225,9 +225,13 @@ int nandRtfsCtrl( int driveno, int opcode, void* pargs)
|
|||||||
|
|
||||||
if( nand_calculated_fat_params == 0) {
|
if( nand_calculated_fat_params == 0) {
|
||||||
i_sdmcCalcSize(); //TODO:sdmc_current_specを構造体に入れること
|
i_sdmcCalcSize(); //TODO:sdmc_current_specを構造体に入れること
|
||||||
sdi_get_CHS_params(); //最初に呼ぶこと
|
if( sdi_get_CHS_params() == FALSE) { //<2F>Å<EFBFBD>‰‚ɌĂԂ±‚Æ
|
||||||
|
return( -1);
|
||||||
|
}
|
||||||
sdi_get_fatparams();
|
sdi_get_fatparams();
|
||||||
sdi_get_nom( NAND_RAW_SECTORS);
|
if( sdi_get_nom( NAND_RAW_SECTORS) == FALSE) {
|
||||||
|
return( -1);
|
||||||
|
}
|
||||||
nand_calculated_fat_params = 1;
|
nand_calculated_fat_params = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -386,7 +390,7 @@ BOOL nandRtfsAttach( int driveno, int partition_no)
|
|||||||
|
|
||||||
|
|
||||||
/*SD File System Specification(仕様書)に基づいた値を出す*/
|
/*SD File System Specification(仕様書)に基づいた値を出す*/
|
||||||
static void sdi_get_CHS_params( void)
|
static BOOL sdi_get_CHS_params( void)
|
||||||
{
|
{
|
||||||
u16 i;
|
u16 i;
|
||||||
int mbytes;
|
int mbytes;
|
||||||
@ -405,8 +409,7 @@ static void sdi_get_CHS_params( void)
|
|||||||
}
|
}
|
||||||
/*容量破綻チェック*/
|
/*容量破綻チェック*/
|
||||||
if( cumulative_capacity >= sdmc_current_spec.memory_capacity) {
|
if( cumulative_capacity >= sdmc_current_spec.memory_capacity) {
|
||||||
OS_TPrintf( "INVALID PARAMETER ERROR!\n");
|
return( FALSE);
|
||||||
while( 1) {};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*最終パーティションは残りのセクタ全部*/
|
/*最終パーティションは残りのセクタ全部*/
|
||||||
@ -516,6 +519,7 @@ static void sdi_get_CHS_params( void)
|
|||||||
i, NandFatSpec[i].memory_capacity,
|
i, NandFatSpec[i].memory_capacity,
|
||||||
NandFatSpec[i].adjusted_memory_capacity);
|
NandFatSpec[i].adjusted_memory_capacity);
|
||||||
}
|
}
|
||||||
|
return( TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -527,7 +531,7 @@ static u32 sdi_get_ceil( u32 cval, u32 mval)
|
|||||||
|
|
||||||
|
|
||||||
/*マスターブートセクタのセクタ数を返す*/
|
/*マスターブートセクタのセクタ数を返す*/
|
||||||
static void sdi_get_nom( u32 MIN_NOM)
|
static BOOL sdi_get_nom( u32 MIN_NOM)
|
||||||
{
|
{
|
||||||
u32 RSC[4];
|
u32 RSC[4];
|
||||||
u32 TS[4];
|
u32 TS[4];
|
||||||
@ -606,6 +610,9 @@ static void sdi_get_nom( u32 MIN_NOM)
|
|||||||
NandFatSpec[i].NOM += NandFatSpec[i].BU;
|
NandFatSpec[i].NOM += NandFatSpec[i].BU;
|
||||||
}
|
}
|
||||||
do {
|
do {
|
||||||
|
if( NandFatSpec[i].NOM >= sdmc_current_spec.memory_capacity) {
|
||||||
|
return( FALSE);
|
||||||
|
}
|
||||||
MAX = ((TS[i] - NandFatSpec[i].NOM - NandFatSpec[i].SSA) / SC) + 1;
|
MAX = ((TS[i] - NandFatSpec[i].NOM - NandFatSpec[i].SSA) / SC) + 1;
|
||||||
SFdash = sdi_get_ceil( (2+(MAX-1)) * NandFatSpec[i].FATBITS, SS*8);
|
SFdash = sdi_get_ceil( (2+(MAX-1)) * NandFatSpec[i].FATBITS, SS*8);
|
||||||
if( SFdash > NandFatSpec[i].SF) {
|
if( SFdash > NandFatSpec[i].SF) {
|
||||||
@ -630,7 +637,7 @@ static void sdi_get_nom( u32 MIN_NOM)
|
|||||||
i, NandFatSpec[i].NOM, NandFatSpec[i].SSA, NandFatSpec[i].begin_sect);
|
i, NandFatSpec[i].NOM, NandFatSpec[i].SSA, NandFatSpec[i].begin_sect);
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return( TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*FATのビット数を返す*/
|
/*FATのビット数を返す*/
|
||||||
|
|||||||
@ -305,9 +305,9 @@ NAND_FLASH_FORMAT_START:
|
|||||||
|
|
||||||
|
|
||||||
/*--- パーティション構成をセクタ単位にしてライブラリに要求 ---*/
|
/*--- パーティション構成をセクタ単位にしてライブラリに要求 ---*/
|
||||||
for( i=0; i<4; i++) {
|
for( i=0; i<5; i++) {
|
||||||
partition_MB_size[i] *= ((1024 * 1024) / 512);
|
partition_MB_size[i] *= ((1024 * 1024) / 512);
|
||||||
PRINTDEBUG( "p%d : %d\n", i, partition_MB_size[i]);
|
// PRINTDEBUG( "p%d : %d\n", i, partition_MB_size[i]);
|
||||||
}
|
}
|
||||||
nandSetFormatRequest( nand_fat_partition_num, partition_MB_size);
|
nandSetFormatRequest( nand_fat_partition_num, partition_MB_size);
|
||||||
/*------------------------------------------------------------*/
|
/*------------------------------------------------------------*/
|
||||||
@ -338,7 +338,7 @@ NAND_FLASH_FORMAT_START:
|
|||||||
|
|
||||||
/*--- MBR書き込み、パーティション0フォーマット ---*/
|
/*--- MBR書き込み、パーティション0フォーマット ---*/
|
||||||
if( !rtfs_pc_get_media_parms( (byte*)"F:", &geometry)) {
|
if( !rtfs_pc_get_media_parms( (byte*)"F:", &geometry)) {
|
||||||
PRINTDEBUG( "pc_get_media_parms failed\n");
|
PRINTDEBUG( "Invalid parameter. (size over)\n");
|
||||||
goto NAND_FLASH_FORMAT_END;
|
goto NAND_FLASH_FORMAT_END;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user