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

📄 bddefs.h

📁 H3 M-system NAND flash driver in Linux OS, M-DOC driver
💻 H
字号:
/****************************************************************************** *                                                                            * * Project: DOC Driver for Linux 2.4 Block device driver for mDOC H3  family  * * of devices under Linux kernel 2.4.                                         * *                                                                            * *   Version: 1.0                                                             * *   Email questions to: oemsupport@sandisk.com                               * *   Copyright (C) SanDisk IL Ltd. 1995 - 2007                                * *   SanDisk IL Ltd., 7 Atir Yeda Street, Kfar Saba 44425, Israel             * *                                                                            * ****************************************************************************** *                                                                            * * This program is free software; you can redistribute it and/or modify it    * * under the terms of the GNU General Public License as published by the Free * * Software Foundation; either version 2 of the License, or any later version.* * This program is distributed in the hope that it will be useful, but WITHOUT* * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or      * * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for  * * more details, which is set forth in the readme.txt file.                   * * You should have received a copy of the GNU General Public License along    * * with this program; if not, write to the Free Software Foundation, Inc., 51 * * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA                    * *                                                                            * * This License does not grant you any right to use the trademarks, service   * * marks or logos of SanDisk IL Ltd. or SanDisk Corporation.                  * * Subject to the foregoing, SanDisk IL Ltd., for itself and on behalf of its * * licensors, hereby reserves all intellectual property rights in the program,* * except for the rights expressly granted in this License.                   * *                                                                            * ******************************************************************************//*
 * $Log:   V:/PVCSDB/DiskOnChip/archives/Testing/TrueFFS 6.3/Drop 2.5/3/bddoc/src/bddefs.h-arc  $
 * 
 *    Rev 1.5.1.2   Sep 11 2006 13:45:10   yaniv.iarovici
 * Legal header added
 * 
 *    Rev 1.5.1.1   Aug 22 2006 13:22:06   Yaniv.Iarovici
 * Add 'extern "c"' on vols[] external definition
 * 
 *    Rev 1.5.1.0   Aug 08 2006 15:55:34   Polina.Marimont
 * DOC Driver 1.0 initial
 */

#ifndef BDDEFS_H
#define BDDEFS_H

#include "defs.h"
#include "fltl.h"
#include "flbuffer.h"
#include "docsys.h"


typedef struct {
  FLSByte       flags;                  /* See description in flreq.h */

  FLDword	sectorsInVolume;
  unsigned	mountCount;		/* can be opened/closed several times */

  FLMutex*      volExecInProgress;
  FLFlash FAR2* flash;                  /* flash structure for low level operations */
  TL            tl;                     /* Translation layer methods */
  FLSocket      *socket;                /* Pointer to socket */

  FLBoolean     globalAttFlag;        /* indication of global attention flag */
} Volume;

#define VOLUME_NOT_OCCUPIED	0
#define VOLUME_LOW_LVL_MOUNTED	1  /* Volume is mounted for low level operations */
#define VOLUME_MOUNTED		2  /* Volume is mounted                          */
#define VOLUME_12BIT_FAT	4  /* Volume uses 12-bit FAT                     */
#define VOLUME_ABS_MOUNTED	8  /* Volume is mounted for abs calls            */
#define VOLUME_OCCUPIED		32 /* Volume record in use                       */
#define VOLUME_MOUNTED_NO_MBR	64
#define VOLUME_MOUNTED_ON_RANGE	128


#define execInProgress (pVol->volExecInProgress)

#ifdef __cplusplus
extern "C" {
#endif
extern Volume   vols[FL_VOLUMES];
#ifdef __cplusplus
}
#endif

FLStatus lockForIO(FLByte socket, FLByte partition, FLBoolean onOff);
void setTL(FLByte socket, FLByte partition, TL * fsVol);

#endif

⌨️ 快捷键说明

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