⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 flcustom.c

📁 Linux下msys公司提供的doc2000的驱动源代码
💻 C
字号:
#include "flcustom.h"#include "tffsdrv.h"#include "stdcomp.h"#include "blockdev.h"#ifdef ENVIRONMENT_VARSunsigned char flUse8Bit=FL_DOC_8BIT_ACCESS_DEF;unsigned char flUseNFTLCache;#if TFFS_SVER<60000unsigned char flUseisRAM;#endif /* TFFS_SVER<60000 */extern short fl_nftl_cache;extern short fl_8bit_access;extern unsigned long fl_sectors_verified_per_folding;extern unsigned long fl_mtd_bus_access_type;#if TFFS_SVER<60000extern short fl_is_ram_check;#endif /* TFFS_SVER<60000 *//*-----------------------------------------------------------------------*//*                 f l s e t E n v V a r                                 *//*  Sets the value of all environment variables                          *//*  Parameters : None                                                    *//*-----------------------------------------------------------------------*/void flSetEnvVar(void){	unsigned long prevValue;		flSetEnvAll(FL_MTD_BUS_ACCESS_TYPE,fl_mtd_bus_access_type,&prevValue);#if defined(VERIFY_WRITE) || defined(VERIFY_ERASED_SECTOR)	flSetEnvAll(FL_SECTORS_VERIFIED_PER_FOLDING,fl_sectors_verified_per_folding,&prevValue);#endif	flSetEnvAll(FL_DOC_8BIT_ACCESS,fl_8bit_access,&prevValue);	flSetEnvAll(FL_TL_CACHE_ENABLED,fl_nftl_cache,&prevValue);#if TFFS_SVER>=60000	flSetEnvAll(FL_SUSPEND_MODE,FL_SUSPEND_MODE_DEF,&prevValue);	flSetEnvAll(FL_DO_NOT_WAIT_FOR_READY,FL_DO_NOT_WAIT_FOR_READY_DEF,&prevValue);#else	flSetEnvAll(FL_IS_RAM_CHECK_ENABLED,fl_is_ram_check,&prevValue);#endif /* TFFS_SVER<60000 */}#endif /* ENVIRONMENT_VARS *//*----------------------------------------------------------------------*//*                f l R e g i s t e r C o m p o n e n t s               *//*                                                                      *//* Register socket, MTD and Translation Layer components for usage      *//*                                                                      *//* This function is called by FLite once only, at initialization of the *//* FLite system.                                                        *//*                                                                      *//* Parameters:                                                          *//*      None                                                            *//*                                                                      *//*----------------------------------------------------------------------*/#ifdef TFFS_USE_CACHE_TLextern FLStatus flRegisterCACHETL(void);#endifFLStatus flRegisterComponents(void){	FLStatus stat;	unsigned long dwL,dwH;	unsigned char fFound=FALSE;#ifdef TFFS_USE_AMD_ISA	unsigned long dwIsaReg=0;#endif	LnxGetMappedRange(&dwL,&dwH#ifdef TFFS_USE_AMD_ISA	,&dwIsaReg#endif	);#ifdef TFFS_USE_AMD_ISA	if(dwIsaReg==0)		return flAdapterNotFound;	if((stat=flRegisterAMDISASOC(dwL,TFFS_IOMEM_WINDOW_SIZE,dwIsaReg))==flOK)#endif /* FL_AMD_ISA_SOCKET */#ifdef TFFS_USE_AMD_PCI	if((stat=flRegisterAMDSOC(dwL,TFFS_IOMEM_WINDOW_SIZE))==flOK)#endif /* TFFS_USE_AMD_PCI */#if defined(TFFS_USE_AMD_PCI) || defined(TFFS_USE_AMD_ISA)	{		stat=flRegisterAMDMTD();   /* Register amdmtd.c  MTD */		if(stat==flOK)			fFound=TRUE;	}#endif#ifdef TFFS_USE_MDOCP    stat=flRegisterDOCPLUSSOC(dwL,dwH);	if(stat==flOK)	{		stat=flRegisterDOCPLUS();	/* Register DiskOnChip Millennium Plus MTD */		PrintkDebug("flRegisterComponents:flRegisterDOCPLUS returns %d",stat);		if(stat==flOK)			fFound=TRUE;    }#endif	/* TFFS_USE_MDOCP */#ifdef TFFS_USE_MDOC    stat=flRegisterDOCSOC(dwL,dwH);	if(stat==flOK)	{		stat=flRegisterDOC2000();	/* Register DiskOnChip 2000, Alon based DiskOnChips and DiskOnChip Millennium MTD */		PrintkDebug("flRegisterComponents:flRegisterDOC2000 returns %d",stat);		if(stat==flOK)			fFound=TRUE;    }                                   #endif	/* TFFS_USE_MDOC */#ifdef TFFS_USE_M512	stat=flRegisterDOCM512SOC(dwL,dwH); /* Register OREN socket controller */	PrintkDebug("flRegisterComponents:flRegisterDOCM512SOC returns %d",stat);	if(stat==flOK)	{		stat=flRegisterDOCM512();		PrintkDebug("flRegisterComponents:flRegisterDOCM512 returns %d",stat);		if(stat==flOK)			fFound=TRUE;	}#endif /* TFFS_USE_M512 */#ifdef TFFS_USE_OREN	stat=flRegisterDOCORENSOC(dwL,dwH); /* Register OREN socket controller */	PrintkDebug("flRegisterComponents:flRegisterDOCORENSOC returns %d",stat);	if(stat==flOK)	{		stat=flRegisterDOCOREN(); /* Register Oren based DiskOnChip MTD */		PrintkDebug("flRegisterComponents:flRegisterDOCOREN returns %d",stat);		if(stat==flOK)			fFound=TRUE;	}#endif	/* TFFS_USE_OREN */	if(fFound)	{		fFound=FALSE;#ifdef TFFS_USE_FTL		stat=flRegisterFTL();		PrintkDebug("flRegisterComponents:flRegisterFTL returns %d",stat);		fFound+=(stat==flOK);#endif /* TFFS_USE_FTL */#ifdef TFFS_USE_NFTL		stat=flRegisterNFTL();		PrintkDebug("flRegisterComponents:flRegisterNFTL returns %d",stat);		fFound+=(stat==flOK);#endif /* TFFS_USE_NFTL */#ifdef TFFS_USE_INFTL		stat=flRegisterINFTL();		PrintkDebug("flRegisterComponents:flRegisterINFTL returns %d",stat);		fFound+=(stat==flOK);#endif /* TFFS_USE_INFTL */#ifdef TFFS_USE_SAFTL		stat=flRegisterSAFTL();		PrintkDebug("flRegisterComponents:flRegisterSAFTL returns %d",stat);		fFound+=(stat==flOK);#endif /* TFFS_USE_SAFTL */	}#ifdef TFFS_USE_CACHE_TL	stat=flRegisterCACHETL();	PrintkDebug("flRegisterComponents:flRegisterCACHETL returns %d",stat);#endif	return fFound?flOK:flAdapterNotFound;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -