📄 docsoc.c
字号:
/******************************************************************************/
/* */
/* Copyright (C), 1995-2006, msystems Ltd. All rights reserved. */
/* */
/* Redistribution and use in source and binary forms, with or without */
/* modification, are permitted provided that the following conditions are */
/* met: */
/* 1. Redistributions of source code must retain the above copyright notice, */
/* this list of conditions and the following disclaimer. */
/* 2. Redistributions in binary form must reproduce the above copyright */
/* notice, this list of conditions and the following disclaimer in the */
/* documentation and/or other materials provided with the distribution. */
/* 3. Neither the name of msystems nor the names of its contributors may be */
/* used to endorse or promote products derived from this software without */
/* specific prior written permission. */
/* */
/* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */
/* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED */
/* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */
/* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */
/* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */
/* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED */
/* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR */
/* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF */
/* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING */
/* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS */
/* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
/* */
/******************************************************************************/
/*
* $Log: V:/PVCSDB/DiskOnChip/archives/Testing/TrueFFS 6.3/Drop 2.5/3/bddoc/src/docsoc.c-arc $
*
* Rev 1.2.1.1 Sep 11 2006 13:45:18 yaniv.iarovici
* Legal header added
*
* Rev 1.2.1.0 Aug 08 2006 15:55:28 Polina.Marimont
* DOC Driver 1.0 initial
*/
#include "defs.h"
#ifdef FL_PARALLEL_MTD_SUPPORT
#include "pacc_exp.h"
#endif
/************************************************************************/
/* */
/* Beginning of controller-customizable code */
/* */
/* The function prototypes and interfaces in this section are standard */
/* and are used in this form by the non-customizable code. However, the */
/* function implementations are specific to the 82365SL controller. */
/* */
/* You should replace the function bodies here with the implementation */
/* that is appropriate for your controller. */
/* */
/* All the functions in this section have no parameters. This is */
/* because the parameters needed for an operation may be themselves */
/* dependent on the controller. Instead, you should use the value in */
/* the 'vol' structure as parameters. */
/* If you need socket-state variables specific to your implementation, */
/* it is recommended to add them to the 'vol' structure rather than */
/* define them as separate static variables. */
/* */
/************************************************************************/
/************************************************************************/
/* c a r d D e t e c t e d */
/* */
/* Detect if a card is present (inserted) */
/* */
/* Parameters: */
/* vol : Pointer identifying drive */
/* */
/* Returns: */
/* 0 = card not present, other = card present */
/************************************************************************/
static FLBoolean cardDetected(FLSocket * pVol)
{
return TRUE;
}
/************************************************************************/
/* V c c O n */
/* */
/* Turns on Vcc (3.3/5 Volts). Vcc must be known to be good on exit. */
/* This routine also makes sure the device is not in DPD mode */
/* */
/* Parameters: */
/* vol : Pointer identifying drive */
/* */
/************************************************************************/
#ifndef MTD_STANDALONE
static void VccOn(FLSocket * pVol)
{/* Ori */
if((pVol->DPDState == PowerOff) && (pVol->flash != NULL))
if(((FLFlash *)(pVol->flash))->enterDeepPowerDownMode != NULL)
{
((FLFlash *)pVol->flash)->enterDeepPowerDownMode((FLFlash *)pVol->flash,EXIT_DEEP_POWER_DOWN);
pVol->DPDState = PowerOn;
}
#ifdef FL_PARALLEL_MTD_SUPPORT
{
FLBoolean fSocketStateArr[MAX_PARA_SOCKETS] ;
/*** Enable only one serial socket ***/
tffsset (fSocketStateArr,FALSE,sizeof(FLBoolean)*MAX_PARA_SOCKETS) ;
fSocketStateArr[pVol->volNo] = TRUE ;
PARA_ActivateSockets (fSocketStateArr) ;
}
#endif
}
#endif /* MTD_STANDALONE */
/************************************************************************/
/* V c c O f f */
/* */
/* Turns off Vcc. */
/* */
/* Parameters: */
/* vol : Pointer identifying drive */
/* */
/************************************************************************/
static void VccOff(FLSocket * pVol)
{
}
#ifdef SOCKET_12_VOLTS
/************************************************************************/
/* V p p O n */
/* */
/* Turns on Vpp (12 Volts. Vpp must be known to be good on exit.) */
/* */
/* Parameters: */
/* vol : Pointer identifying drive */
/* */
/* Returns: */
/* FLStatus : 0 on success, failed otherwise */
/************************************************************************/
static FLStatus VppOn(FLSocket * pVol)
{
return flOK;
}
/************************************************************************/
/* V p p O f f */
/* */
/* Turns off Vpp. */
/* */
/* Parameters: */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -