//----- MarkFail_D_PhyOneBlock() --------------------------------------- int MarkFail_D_PhyOneBlock(struct us_data *us) { BYTE sect; //SSFDCTYPE_T aa = (SSFDCTYPE_T ) &Ssfdc; //ADDRESS_T bb = (ADDRESS_T) &Media; sect=Media.Sector; Set_D_FailBlock(WorkRedund); //Ssfdc_D_WriteRedtMode(); for(Media.Sector=0; Media.Sector<Ssfdc.MaxSectors; Media.Sector++) { if (Ssfdc_D_WriteRedtData(us, WorkRedund)) { Ssfdc_D_Reset(us); Media.Sector = sect; ErrCode = ERR_HwError; MediaChange = ERROR; return(ERROR); } // NO Status Check } Ssfdc_D_Reset(us); Media.Sector=sect; return(SMSUCCESS); }
int MarkFail_D_PhyOneBlock(struct us_data *us) { BYTE sect; sect=Media.Sector; Set_D_FailBlock(WorkRedund); for(Media.Sector=0; Media.Sector<Ssfdc.MaxSectors; Media.Sector++) { if (Ssfdc_D_WriteRedtData(us, WorkRedund)) { Ssfdc_D_Reset(us); Media.Sector = sect; ErrCode = ERR_HwError; MediaChange = ERROR; return(ERROR); } } Ssfdc_D_Reset(us); Media.Sector=sect; return(SMSUCCESS); }