mirror of
https://github.com/rvtr/ctr_firmware.git
synced 2025-06-18 16:55:31 -04:00
(shirait)
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_firmware@281 b871894f-2f95-9b40-918c-086798483c85
This commit is contained in:
parent
973edc76b8
commit
3a53089d55
@ -143,7 +143,7 @@ NandPageCacheFormat* g_nandPageCache;
|
||||
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
Name: STD_CompareString
|
||||
Name: mystdCompareString
|
||||
|
||||
Description: compare strings. same to strcmp
|
||||
|
||||
@ -151,8 +151,8 @@ NandPageCacheFormat* g_nandPageCache;
|
||||
|
||||
Returns: 0 if same
|
||||
*---------------------------------------------------------------------------*/
|
||||
int stdCompareString(const char *str1, const char *str2);
|
||||
int stdCompareString(const char *str1, const char *str2)
|
||||
int mystdCompareString(const char *str1, const char *str2);
|
||||
int mystdCompareString(const char *str1, const char *str2)
|
||||
{
|
||||
while (*str1 == *str2 && *str1)
|
||||
{
|
||||
@ -427,8 +427,8 @@ u8 i_nandCheckBlock( u16 physical_blk, u16* logical_adr, u32* erase_count)
|
||||
(NandDevPage1.spare.block_stat_bad == 0xFF)) {
|
||||
|
||||
new_block_stat = 0xFF;
|
||||
if( (stdCompareString( NandDevSpare0.sig0, "CTR\0") == 0) ||
|
||||
(stdCompareString( NandDevSpare0.sig1, "CTR\0") == 0)) {
|
||||
if( (mystdCompareString( NandDevSpare0.sig0, "CTR\0") == 0) ||
|
||||
(mystdCompareString( NandDevSpare0.sig1, "CTR\0") == 0)) {
|
||||
new_erase_count = NandDevSpare0.block_erase_count0; //todo:parity check
|
||||
}else{/*--- pre slip write済みでpost slip writeされてないときに対応 ---*/
|
||||
if( i_nandCheckFollowCluster( physical_blk, logical_adr,
|
||||
@ -440,8 +440,8 @@ u8 i_nandCheckBlock( u16 physical_blk, u16* logical_adr, u32* erase_count)
|
||||
/*----- BBフラグに1bitだけ0があるとき -----*/
|
||||
if( (i_nandCountBitDifferent( NandDevSpare0.block_stat_bad, 0xFF) <= 1) &&
|
||||
(i_nandCountBitDifferent( NandDevPage1.spare.block_stat_bad, 0xFF) <= 1)) {
|
||||
if( (stdCompareString( NandDevSpare0.sig0, "CTR\0") == 0) ||
|
||||
(stdCompareString( NandDevSpare0.sig1, "CTR\0") == 0)) {
|
||||
if( (mystdCompareString( NandDevSpare0.sig0, "CTR\0") == 0) ||
|
||||
(mystdCompareString( NandDevSpare0.sig1, "CTR\0") == 0)) {
|
||||
new_block_stat = 0xFF;
|
||||
new_erase_count = NandDevSpare0.block_erase_count0; //todo:parity check
|
||||
}else{/*--- pre slip write済みでpost slip writeされてないときに対応 ---*/
|
||||
@ -485,8 +485,8 @@ static BOOL i_nandCheckFollowCluster( u16 physical_blk, u16* logical_adr, u32* e
|
||||
physical_page_addr = (u32)(((u32)(physical_blk) << 6) + (i * 8));
|
||||
i_nandReadPage( &NandDevPage, physical_page_addr, 1);
|
||||
|
||||
if( (stdCompareString( NandDevPage.spare.sig0, "CTR\0") == 0) ||
|
||||
(stdCompareString( NandDevPage.spare.sig1, "CTR\0") == 0)) {
|
||||
if( (mystdCompareString( NandDevPage.spare.sig0, "CTR\0") == 0) ||
|
||||
(mystdCompareString( NandDevPage.spare.sig1, "CTR\0") == 0)) {
|
||||
*logical_adr = NandDevPage.spare.logical_adr0; //todo:parity check
|
||||
*erase_count = NandDevPage.spare.block_erase_count0; //todo:parity check
|
||||
return( TRUE);
|
||||
|
Loading…
Reference in New Issue
Block a user