Lines Matching refs:phyblk

755 static int ms_lib_set_logicalpair(struct us_data *us, u16 logblk, u16 phyblk)
759 if ((logblk >= info->MS_Lib.NumberOfLogBlock) || (phyblk >= info->MS_Lib.NumberOfPhyBlock))
762 info->MS_Lib.Phy2LogMap[phyblk] = logblk;
763 info->MS_Lib.Log2PhyMap[logblk] = phyblk;
768 static int ms_lib_set_logicalblockmark(struct us_data *us, u16 phyblk, u16 mark)
772 if (phyblk >= info->MS_Lib.NumberOfPhyBlock)
775 info->MS_Lib.Phy2LogMap[phyblk] = mark;
780 static int ms_lib_set_initialerrorblock(struct us_data *us, u16 phyblk)
782 return ms_lib_set_logicalblockmark(us, phyblk, MS_LB_INITIAL_ERROR);
785 static int ms_lib_set_bootblockmark(struct us_data *us, u16 phyblk)
787 return ms_lib_set_logicalblockmark(us, phyblk, MS_LB_BOOT_BLOCK);
1004 u16 phyblk;
1026 phyblk = be16_to_cpu(*(u16 *)(PageBuffer + (EntryOffset % MS_BYTES_PER_PAGE)));
1027 if (phyblk < 0x0fff)
1028 ms_lib_set_initialerrorblock(us, phyblk);
1136 static int ms_lib_force_setlogical_pair(struct us_data *us, u16 logblk, u16 phyblk)
1144 (phyblk >= info->MS_Lib.NumberOfPhyBlock))
1147 info->MS_Lib.Phy2LogMap[phyblk] = logblk;
1148 info->MS_Lib.Log2PhyMap[logblk] = phyblk;
1244 static int ms_lib_setacquired_errorblock(struct us_data *us, u16 phyblk)
1249 if (phyblk >= info->MS_Lib.NumberOfPhyBlock)
1252 log = info->MS_Lib.Phy2LogMap[phyblk];
1257 if (info->MS_Lib.Phy2LogMap[phyblk] != MS_LB_INITIAL_ERROR)
1258 info->MS_Lib.Phy2LogMap[phyblk] = MS_LB_ACQUIRED_ERROR;
1295 static int ms_lib_error_phyblock(struct us_data *us, u16 phyblk)
1299 if (phyblk >= info->MS_Lib.NumberOfPhyBlock)
1302 ms_lib_setacquired_errorblock(us, phyblk);
1305 return ms_lib_overwrite_extra(us, phyblk, 0, (u8)(~MS_REG_OVR_BKST & BYTE_MASK));
1310 static int ms_lib_erase_phyblock(struct us_data *us, u16 phyblk)
1315 if (phyblk >= info->MS_Lib.NumberOfPhyBlock)
1318 log = info->MS_Lib.Phy2LogMap[phyblk];
1323 info->MS_Lib.Phy2LogMap[phyblk] = MS_LB_NOT_USED;
1326 switch (ms_read_eraseblock(us, phyblk)) {
1328 info->MS_Lib.Phy2LogMap[phyblk] = MS_LB_NOT_USED_ERASED;
1332 ms_lib_error_phyblock(us, phyblk);
1337 ms_lib_setacquired_errorblock(us, phyblk);
1342 ms_lib_setacquired_errorblock(us, phyblk);
1382 static int ms_libsearch_block_from_physical(struct us_data *us, u16 phyblk)
1389 if (phyblk >= info->MS_Lib.NumberOfPhyBlock)
1392 for (blk = phyblk + 1; blk != phyblk; blk++) {
1435 u16 phyblk;
1438 phyblk = ms_libconv_to_physical(info, logblk);
1439 if (phyblk >= MS_LB_ERROR) {
1443 phyblk = (logblk + MS_NUMBER_OF_BOOT_BLOCK) / MS_LOGICAL_BLOCKS_PER_SEGMENT;
1444 phyblk *= MS_PHYSICAL_BLOCKS_PER_SEGMENT;
1445 phyblk += MS_PHYSICAL_BLOCKS_PER_SEGMENT - 1;
1448 return ms_libsearch_block_from_physical(us, phyblk);
1673 u16 phyblk, logblk;
1698 phyblk = ms_libconv_to_physical(info, logblk);
1699 blkno = phyblk * 0x20 + PageNum;