diff options
Diffstat (limited to 'drivers/staging/keucr/smilmain.c')
-rw-r--r-- | drivers/staging/keucr/smilmain.c | 152 |
1 files changed, 75 insertions, 77 deletions
diff --git a/drivers/staging/keucr/smilmain.c b/drivers/staging/keucr/smilmain.c index 2cbe9f897eef..31f7813cab0d 100644 --- a/drivers/staging/keucr/smilmain.c +++ b/drivers/staging/keucr/smilmain.c @@ -48,35 +48,31 @@ int MarkFail_D_PhyOneBlock (struct us_data *); DWORD ErrXDCode; DWORD ErrCode; //BYTE SectBuf[SECTSIZE]; -BYTE WorkBuf[SECTSIZE]; -BYTE Redundant[REDTSIZE]; -BYTE WorkRedund[REDTSIZE]; +static BYTE WorkBuf[SECTSIZE]; +static BYTE Redundant[REDTSIZE]; +static BYTE WorkRedund[REDTSIZE]; //WORD Log2Phy[MAX_ZONENUM][MAX_LOGBLOCK]; -WORD *Log2Phy[MAX_ZONENUM]; // 128 x 1000, Log2Phy[MAX_ZONENUM][MAX_LOGBLOCK]; -BYTE Assign[MAX_ZONENUM][MAX_BLOCKNUM/8]; -WORD AssignStart[MAX_ZONENUM]; +static WORD *Log2Phy[MAX_ZONENUM]; // 128 x 1000, Log2Phy[MAX_ZONENUM][MAX_LOGBLOCK]; +static BYTE Assign[MAX_ZONENUM][MAX_BLOCKNUM/8]; +static WORD AssignStart[MAX_ZONENUM]; WORD ReadBlock; WORD WriteBlock; DWORD MediaChange; -DWORD SectCopyMode; +static DWORD SectCopyMode; -extern struct SSFDCTYPE Ssfdc; -extern struct ADDRESS Media; -extern struct CIS_AREA CisArea; - -//BIT Controll Macro -BYTE BitData[] = { 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80 } ; +//BIT Control Macro +static BYTE BitData[] = { 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80 } ; #define Set_D_Bit(a,b) (a[(BYTE)((b)/8)]|= BitData[(b)%8]) #define Clr_D_Bit(a,b) (a[(BYTE)((b)/8)]&=~BitData[(b)%8]) #define Chk_D_Bit(a,b) (a[(BYTE)((b)/8)] & BitData[(b)%8]) //extern PBYTE SMHostAddr; -extern BYTE IsSSFDCCompliance; -extern BYTE IsXDCompliance; +BYTE IsSSFDCCompliance; +BYTE IsXDCompliance; // -////Power Controll & Media Exist Check Function +////Power Control & Media Exist Check Function ////----- Init_D_SmartMedia() -------------------------------------------- //int Init_D_SmartMedia(void) //{ @@ -102,12 +98,12 @@ int SM_FreeMem(void) { int i; - printk("SM_FreeMem start\n"); + pr_info("SM_FreeMem start\n"); for (i=0; i<MAX_ZONENUM; i++) { if (Log2Phy[i]!=NULL) { - printk("Free Zone = %x, Addr = %p\n", i, Log2Phy[i]); + pr_info("Free Zone = %x, Addr = %p\n", i, Log2Phy[i]); kfree(Log2Phy[i]); Log2Phy[i] = NULL; } @@ -198,7 +194,7 @@ int Media_D_CopySector(struct us_data *us, DWORD start,WORD count,BYTE *buf) //SSFDCTYPE_T aa = (SSFDCTYPE_T ) &Ssfdc; //ADDRESS_T bb = (ADDRESS_T) &Media; - //printk("Media_D_CopySector !!!\n"); + /* pr_info("Media_D_CopySector !!!\n"); */ if (Conv_D_MediaAddr(us, start)) return(ErrCode); @@ -256,13 +252,13 @@ int Release_D_CopySector(struct us_data *us) if (Media.PhyBlock==NO_ASSIGN) { Media.PhyBlock=WriteBlock; - return(SUCCESS); + return(SMSUCCESS); } Clr_D_Bit(Assign[Media.Zone],Media.PhyBlock); Media.PhyBlock=WriteBlock; - return(SUCCESS); + return(SMSUCCESS); } /* //----- Media_D_WriteSector() ------------------------------------------ @@ -572,10 +568,10 @@ int Media_D_OneSectWriteFlush(PFDO_DEVICE_EXTENSION fdoExt) // default: *c= 0; *h= 0; *s= 0; ErrCode = ERR_NoSmartMedia; return(ERROR); // } // -// return(SUCCESS); +// return(SMSUCCESS); //} // -////Power Controll & Media Exist Check Subroutine +////Power Control & Media Exist Check Subroutine ////----- Initialize_D_Media() ------------------------------------------- //void Initialize_D_Media(void) //{ @@ -599,7 +595,7 @@ int Media_D_OneSectWriteFlush(PFDO_DEVICE_EXTENSION fdoExt) // MediaChange = ERROR; // //usleep(56*1024); // if ((!Check_D_CntPower())&&(!MediaChange)) // ¦³ power & Media ¨S³Q change, «h return success -// return(SUCCESS); +// return(SMSUCCESS); // //usleep(56*1024); // // if (Check_D_CardExist()) // Check if card is not exist, return err @@ -618,7 +614,7 @@ int Media_D_OneSectWriteFlush(PFDO_DEVICE_EXTENSION fdoExt) // //usleep(56*1024); // Ssfdc_D_Reset(fdoExt); // //usleep(56*1024); -// return(SUCCESS); +// return(SMSUCCESS); //} // ////-----Check_D_MediaExist() -------------------------------------------- @@ -630,7 +626,7 @@ int Media_D_OneSectWriteFlush(PFDO_DEVICE_EXTENSION fdoExt) // if (!Check_D_CardExist()) // { // if (!MediaChange) -// return(SUCCESS); +// return(SMSUCCESS); // // ErrCode = ERR_ChangedMedia; // return(ERROR); @@ -650,19 +646,19 @@ int Media_D_OneSectWriteFlush(PFDO_DEVICE_EXTENSION fdoExt) // return(ERROR); // } // -// return(SUCCESS); +// return(SMSUCCESS); //} */ //SmartMedia Physical Format Test Subroutine //----- Check_D_MediaFmt() --------------------------------------------- int Check_D_MediaFmt(struct us_data *us) { - printk("Check_D_MediaFmt\n"); + pr_info("Check_D_MediaFmt\n"); //ULONG i,j, result=FALSE, zone,block; //usleep(56*1024); if (!MediaChange) - return(SUCCESS); + return(SMSUCCESS); MediaChange = ERROR; SectCopyMode = COMPLETED; @@ -682,8 +678,8 @@ int Check_D_MediaFmt(struct us_data *us) } - MediaChange = SUCCESS; - return(SUCCESS); + MediaChange = SMSUCCESS; + return(SMSUCCESS); } /* ////----- Check_D_BlockIsFull() ---------------------------------- @@ -735,10 +731,10 @@ int Check_D_MediaFmt(struct us_data *us) // return(ERROR); // } // -// return(SUCCESS); +// return(SMSUCCESS); //} */ -//SmartMedia Physical Address Controll Subroutine +//SmartMedia Physical Address Control Subroutine //----- Conv_D_MediaAddr() --------------------------------------------- int Conv_D_MediaAddr(struct us_data *us, DWORD addr) { @@ -767,7 +763,7 @@ int Conv_D_MediaAddr(struct us_data *us, DWORD addr) Clr_D_RedundantData(Redundant); Set_D_LogBlockAddr(Redundant); Media.PhyBlock = Log2Phy[Media.Zone][Media.LogBlock]; - return(SUCCESS); + return(SMSUCCESS); } ErrCode = ERR_OutOfLBA; @@ -782,7 +778,7 @@ int Inc_D_MediaAddr(struct us_data *us) //ADDRESS_T bb = (ADDRESS_T) &Media; if (++Media.Sector<Ssfdc.MaxSectors) - return(SUCCESS); + return(SMSUCCESS); if (Log2Phy[Media.Zone]==NULL) { @@ -801,7 +797,7 @@ int Inc_D_MediaAddr(struct us_data *us) Clr_D_RedundantData(Redundant); Set_D_LogBlockAddr(Redundant); Media.PhyBlock=Log2Phy[Media.Zone][Media.LogBlock]; - return(SUCCESS); + return(SMSUCCESS); } Media.LogBlock=0; @@ -822,7 +818,7 @@ int Inc_D_MediaAddr(struct us_data *us) Clr_D_RedundantData(Redundant); Set_D_LogBlockAddr(Redundant); Media.PhyBlock=Log2Phy[Media.Zone][Media.LogBlock]; - return(SUCCESS); + return(SMSUCCESS); } Media.Zone=0; @@ -838,7 +834,7 @@ int Check_D_FirstSect(void) ADDRESS_T bb = (ADDRESS_T) &Media; if (!Media.Sector) - return(SUCCESS); + return(SMSUCCESS); return(ERROR); } @@ -852,7 +848,7 @@ int Check_D_LastSect(void) if (Media.Sector<(Ssfdc.MaxSectors-1)) return(ERROR); - return(SUCCESS); + return(SMSUCCESS); } */ //SmartMedia Read/Write Subroutine with Retry @@ -862,7 +858,7 @@ int Media_D_ReadOneSect(struct us_data *us, WORD count, BYTE *buf) DWORD err, retry; if (!Read_D_PhyOneSect(us, count, buf)) - return(SUCCESS); + return(SMSUCCESS); if (ErrCode==ERR_HwError) return(ERROR); if (ErrCode==ERR_DataStatus) @@ -872,7 +868,7 @@ int Media_D_ReadOneSect(struct us_data *us, WORD count, BYTE *buf) if (Ssfdc.Attribute &MWP) { if (ErrCode==ERR_CorReadErr) - return(SUCCESS); + return(SMSUCCESS); return(ERROR); } @@ -888,13 +884,13 @@ int Media_D_ReadOneSect(struct us_data *us, WORD count, BYTE *buf) ErrCode = err; if (ErrCode==ERR_CorReadErr) - return(SUCCESS); + return(SMSUCCESS); return(ERROR); } MediaChange = ERROR; #else - if (ErrCode==ERR_CorReadErr) return(SUCCESS); + if (ErrCode==ERR_CorReadErr) return(SMSUCCESS); #endif return(ERROR); @@ -908,7 +904,7 @@ int Media_D_WriteOneSect(PFDO_DEVICE_EXTENSION fdoExt, WORD count, BYTE *buf) ADDRESS_T bb = (ADDRESS_T) &Media; if (!Write_D_PhyOneSect(fdoExt, count, buf)) - return(SUCCESS); + return(SMSUCCESS); if (ErrCode==ERR_HwError) return(ERROR); @@ -922,7 +918,7 @@ int Media_D_WriteOneSect(PFDO_DEVICE_EXTENSION fdoExt, WORD count, BYTE *buf) } if (!Write_D_PhyOneSect(fdoExt, count, buf)) - return(SUCCESS); + return(SMSUCCESS); if (ErrCode==ERR_HwError) return(ERROR); } @@ -944,7 +940,7 @@ int Media_D_CopyBlockHead(PFDO_DEVICE_EXTENSION fdoExt) for(retry=0; retry<2; retry++) { if (!Copy_D_BlockHead(fdoExt)) - return(SUCCESS); + return(SMSUCCESS); if (ErrCode==ERR_HwError) return(ERROR); } @@ -959,7 +955,7 @@ int Media_D_CopyBlockTail(PFDO_DEVICE_EXTENSION fdoExt) DWORD retry; if (!Copy_D_BlockTail(fdoExt)) - return(SUCCESS); + return(SMSUCCESS); if (ErrCode==ERR_HwError) return(ERROR); @@ -973,7 +969,7 @@ int Media_D_CopyBlockTail(PFDO_DEVICE_EXTENSION fdoExt) } if (!Copy_D_BlockTail(fdoExt)) - return(SUCCESS); + return(SMSUCCESS); if (ErrCode==ERR_HwError) return(ERROR); } @@ -995,7 +991,7 @@ int Media_D_CopyBlockTail(PFDO_DEVICE_EXTENSION fdoExt) // ADDRESS_T bb = (ADDRESS_T) &Media; // // if (Media.PhyBlock==NO_ASSIGN) -// return(SUCCESS); +// return(SMSUCCESS); // // if (Log2Phy[Media.Zone]==NULL) // { @@ -1023,7 +1019,7 @@ int Media_D_CopyBlockTail(PFDO_DEVICE_EXTENSION fdoExt) // // Clr_D_Bit(Assign[Media.Zone],Media.PhyBlock); // Media.PhyBlock=NO_ASSIGN; -// return(SUCCESS); +// return(SMSUCCESS); //} // ////SmartMedia Erase Subroutine @@ -1076,7 +1072,7 @@ int Media_D_CopyBlockTail(PFDO_DEVICE_EXTENSION fdoExt) // } // // } -// return(SUCCESS); +// return(SMSUCCESS); //} */ //SmartMedia Physical Sector Data Copy Subroutine @@ -1116,7 +1112,7 @@ int Copy_D_BlockAll(struct us_data *us, DWORD mode) Media.PhyBlock=WriteBlock; Media.Sector=sect; - return(SUCCESS); + return(SMSUCCESS); } /* //----- Copy_D_BlockHead() --------------------------------------------- @@ -1149,7 +1145,7 @@ int Copy_D_BlockHead(PFDO_DEVICE_EXTENSION fdoExt) Media.PhyBlock=WriteBlock; Media.Sector=sect; - return(SUCCESS); + return(SMSUCCESS); } //----- Copy_D_BlockTail() --------------------------------------------- @@ -1178,7 +1174,7 @@ int Copy_D_BlockTail(PFDO_DEVICE_EXTENSION fdoExt) Media.PhyBlock=WriteBlock; Media.Sector=sect; - return(SUCCESS); + return(SMSUCCESS); } //----- Reassign_D_BlockHead() ----------------------------------------- @@ -1226,7 +1222,7 @@ int Reassign_D_BlockHead(PFDO_DEVICE_EXTENSION fdoExt) ReadBlock=block; Media.Sector=sect; Media.PhyBlock=WriteBlock; - return(SUCCESS); + return(SMSUCCESS); } */ //SmartMedia Physical Block Assign/Release Subroutine @@ -1246,7 +1242,7 @@ int Assign_D_WriteBlock(void) Media.PhyBlock=WriteBlock; SectCopyMode=REQ_ERASE; //ErrXDCode = NO_ERROR; - return(SUCCESS); + return(SMSUCCESS); } } @@ -1259,7 +1255,7 @@ int Assign_D_WriteBlock(void) Media.PhyBlock=WriteBlock; SectCopyMode=REQ_ERASE; //ErrXDCode = NO_ERROR; - return(SUCCESS); + return(SMSUCCESS); } } @@ -1282,7 +1278,7 @@ int Release_D_ReadBlock(struct us_data *us) SectCopyMode=COMPLETED; if (mode==COMPLETED) - return(SUCCESS); + return(SMSUCCESS); Log2Phy[Media.Zone][Media.LogBlock]=WriteBlock; Media.PhyBlock=ReadBlock; @@ -1290,7 +1286,7 @@ int Release_D_ReadBlock(struct us_data *us) if (Media.PhyBlock==NO_ASSIGN) { Media.PhyBlock=WriteBlock; - return(SUCCESS); + return(SMSUCCESS); } if (mode==REQ_ERASE) @@ -1307,7 +1303,7 @@ int Release_D_ReadBlock(struct us_data *us) return(ERROR); Media.PhyBlock=WriteBlock; - return(SUCCESS); + return(SMSUCCESS); } //----- Release_D_WriteBlock() ----------------------------------------- @@ -1322,7 +1318,7 @@ int Release_D_WriteBlock(struct us_data *us) return(ERROR); Media.PhyBlock=ReadBlock; - return(SUCCESS); + return(SMSUCCESS); } //SmartMedia Physical Sector Data Copy Subroutine @@ -1334,7 +1330,7 @@ int Copy_D_PhyOneSect(struct us_data *us) //SSFDCTYPE_T aa = (SSFDCTYPE_T ) &Ssfdc; //ADDRESS_T bb = (ADDRESS_T) &Media; - //printk("Copy_D_PhyOneSect --- Secotr = %x\n", Media.Sector); + /* pr_info("Copy_D_PhyOneSect --- Secotr = %x\n", Media.Sector); */ if (ReadBlock!=NO_ASSIGN) { Media.PhyBlock=ReadBlock; @@ -1355,9 +1351,9 @@ int Copy_D_PhyOneSect(struct us_data *us) if (Check_D_DataStatus(WorkRedund)) { err=ERROR; break; } if (!Check_D_ReadError(WorkRedund)) - { err=SUCCESS; break; } + { err=SMSUCCESS; break; } if (!Check_D_Correct(WorkBuf,WorkRedund)) - { err=SUCCESS; break; } + { err=SMSUCCESS; break; } err=ERROR; SectCopyMode=REQ_FAIL; @@ -1365,7 +1361,7 @@ int Copy_D_PhyOneSect(struct us_data *us) } else { - err=SUCCESS; + err=SMSUCCESS; for(i=0; i<SECTSIZE; i++) WorkBuf[i]=DUMMY_DATA; Clr_D_RedundantData(WorkRedund); @@ -1386,7 +1382,7 @@ int Copy_D_PhyOneSect(struct us_data *us) { ErrCode = ERR_WriteFault; return(ERROR); } Media.PhyBlock=ReadBlock; - return(SUCCESS); + return(SMSUCCESS); } //SmartMedia Physical Sector Read/Write/Erase Subroutine @@ -1402,7 +1398,7 @@ int Read_D_PhyOneSect(struct us_data *us, WORD count, BYTE *buf) { for(i=0; i<SECTSIZE; i++) *buf++=DUMMY_DATA; - return(SUCCESS); + return(SMSUCCESS); } for(retry=0; retry<2; retry++) @@ -1424,7 +1420,7 @@ int Read_D_PhyOneSect(struct us_data *us, WORD count, BYTE *buf) { ErrCode = ERR_DataStatus; return(ERROR); } if (!Check_D_ReadError(Redundant)) - return(SUCCESS); + return(SMSUCCESS); if (!Check_D_Correct(buf,Redundant)) { ErrCode = ERR_CorReadErr; return(ERROR); } @@ -1446,7 +1442,7 @@ int Write_D_PhyOneSect(PFDO_DEVICE_EXTENSION fdoExt, WORD count, BYTE *buf) if (Ssfdc_D_CheckStatus()) { ErrCode = ERR_WriteFault; return(ERROR); } - return(SUCCESS); + return(SMSUCCESS); } */ //----- Erase_D_PhyOneBlock() ------------------------------------------ @@ -1460,7 +1456,7 @@ int Erase_D_PhyOneBlock(struct us_data *us) if (Ssfdc_D_CheckStatus()) { ErrCode = ERR_WriteFault; return(ERROR); } - return(SUCCESS); + return(SMSUCCESS); } //SmartMedia Physical Format Check Local Subroutine @@ -1544,7 +1540,7 @@ int Set_D_PhyFmtValue(struct us_data *us) // } // } - return(SUCCESS); + return(SMSUCCESS); } //----- Search_D_CIS() ------------------------------------------------- @@ -1600,7 +1596,7 @@ int Search_D_CIS(struct us_data *us) CisArea.PhyBlock=Media.PhyBlock; CisArea.Sector=Media.Sector; Ssfdc_D_Reset(us); - return(SUCCESS); + return(SMSUCCESS); } Media.Sector++; @@ -1620,7 +1616,8 @@ int Make_D_LogTable(struct us_data *us) if (Log2Phy[Media.Zone]==NULL) { Log2Phy[Media.Zone] = kmalloc(MAX_LOGBLOCK*sizeof(WORD), GFP_KERNEL); - //printk("ExAllocatePool Zone = %x, Addr = %x\n", Media.Zone, Log2Phy[Media.Zone]); + /* pr_info("ExAllocatePool Zone = %x, Addr = %x\n", + Media.Zone, Log2Phy[Media.Zone]); */ if (Log2Phy[Media.Zone]==NULL) return(ERROR); } @@ -1630,7 +1627,8 @@ int Make_D_LogTable(struct us_data *us) //for(Media.Zone=0; Media.Zone<MAX_ZONENUM; Media.Zone++) //for(Media.Zone=0; Media.Zone<Ssfdc.MaxZones; Media.Zone++) { - //printk("Make_D_LogTable --- MediaZone = 0x%x\n", Media.Zone); + /* pr_info("Make_D_LogTable --- MediaZone = 0x%x\n", + Media.Zone); */ for(Media.LogBlock=0; Media.LogBlock<Ssfdc.MaxLogBlocks; Media.LogBlock++) Log2Phy[Media.Zone][Media.LogBlock]=NO_ASSIGN; @@ -1735,7 +1733,7 @@ int Make_D_LogTable(struct us_data *us) } // End for (Media.Zone<MAX_ZONENUM) Ssfdc_D_Reset(us); - return(SUCCESS); + return(SMSUCCESS); } //----- MarkFail_D_PhyOneBlock() --------------------------------------- @@ -1763,7 +1761,7 @@ int MarkFail_D_PhyOneBlock(struct us_data *us) Ssfdc_D_Reset(us); Media.Sector=sect; - return(SUCCESS); + return(SMSUCCESS); } /* // @@ -1821,7 +1819,7 @@ int MarkFail_D_PhyOneBlock(struct us_data *us) // // Ssfdc_D_Reset(fdoExt); // -// return(SUCCESS); +// return(SMSUCCESS); //} // ////----- Media_D_GetMediaInfo() --------------------------------------- |