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

📄 oren_exp.h

📁 M-System DOC(Disk on a Chip) Flash芯片的诊断工具, 可以从Flash芯片中获取特定的数据信息, 用于判断芯片当前的状态.
💻 H
📖 第 1 页 / 共 3 页
字号:
/***********************************************************************************/
/*                        M-Systems Confidential                                   */
/*           Copyright (C) M-Systems Flash Disk Pioneers Ltd. 1995-2003            */
/*                         All Rights Reserved                                     */
/***********************************************************************************/
/*                            NOTICE OF M-SYSTEMS OEM                              */
/*                           SOFTWARE LICENSE AGREEMENT                            */
/*                                                                                 */
/*      THE USE OF THIS SOFTWARE IS GOVERNED BY A SEPARATE LICENSE                 */
/*      AGREEMENT BETWEEN THE OEM AND M-SYSTEMS. REFER TO THAT AGREEMENT           */
/*      FOR THE SPECIFIC TERMS AND CONDITIONS OF USE,                              */
/*      OR CONTACT M-SYSTEMS FOR LICENSE ASSISTANCE:                               */
/*      E-MAIL = info@m-sys.com                                                    */
/***********************************************************************************/

/*
 * $Log:   V:/PVCSDB/DiskOnChip/archives/general storage/TrueFFS/src/mtd/oren_exp.h-arc  $
 * 
 *    Rev 1.3   Sep 30 2003 17:54:52   oris
 * changed comments
 * 
 *    Rev 1.2   Jun 05 2003 03:15:50   oris
 * OREN_phyGetEraseMark routines was missing a FAR qualifier.
 * 
 *    Rev 1.1   May 16 2003 00:58:08   OriS
 * Added oren_protectionKeyInsert prototype.
 * 
 *    Rev 1.0   Apr 09 2003 12:15:56   OriS
 * Initial revision.
 * 
 */

/************************************************************************
 * Name    : oren_exp.h                                                 *
 *                                                                      *
 * Written : Ronen Golan                                                *
 *                                                                      *
 * Abstract: This file contains the exported from the physical MTD      *
 ************************************************************************/

#ifndef _OREN_EXP_H
#define _OREN_EXP_H

/***********************************************************************
 * Name:  OREN_AsicSetFloor                                                  
 *                                                                      
 * Write to DeviceSelector register.                                    
 *                                                                      
 * Parameters:                                                          
 *      flashPtr     : Pointer identifying drive                             
 *      bFloor     : The selected Floor (0,1,2,3)
 ***********************************************************************/
#define OREN_AsicSetFloor(flashPtr,bFloor) \
        OREN_Write8BitReg(flashPtr,OREN_DEVICE_ID_SELECT_REG,(bFloor))

/***********************************************************************
 * Name : OREN_DPS0_LowProtectedUnit                                                  
 *   returns DPS0 low Protected unit  
 *
 ***********************************************************************/
#define OREN_DPS0_LowProtectedUnit(volume) \
        OREN_Read16BitReg(volume,OREN_DPS0_ADDRESS_LOW_REG)  

/***********************************************************************
 * Name : OREN_DPS0_HighProtectedUnit                                                  
 *   returns DPS0 high protected unit  
 *
 ***********************************************************************/
#define OREN_DPS0_HighProtectedUnit(volume) \
        OREN_Read16BitReg(volume,OREN_DPS0_ADDRESS_HIGH_REG)

/***********************************************************************
 * Name : OREN_DPS1_LowProtectedUnit                                                  
 *   returns DPS1 low Protected unit  
 *
 ***********************************************************************/
#define OREN_DPS1_LowProtectedUnit(volume) \
        OREN_Read16BitReg(volume,OREN_DPS1_ADDRESS_LOW_REG)

/***********************************************************************
 * Name : OREN_DPS1_HighProtectedUnit                                                  
 *   returns DPS1 high Protected unit  
 *
 ***********************************************************************/
#define OREN_DPS1_HighProtectedUnit(volume) \
        OREN_Read16BitReg(volume,OREN_DPS1_ADDRESS_HIGH_REG)

/***********************************************************************
 * Name : OREN_DPS0_LowProtectedBank                                                  
 *   returns DPS0 low Protected unit  
 *
 ***********************************************************************/
#define OREN_DPS0_LowProtectedBank(volume) \
        ((OREN_Read8BitReg (volume,OREN_DPS0_STATUS_REG) & OREN_LOW_BANK_BITS)>>3)  

/***********************************************************************
 * Name : OREN_DPS0_HighProtectedBank                                                  
 *   returns DPS0 high Protected unit  
 *
 ***********************************************************************/
#define OREN_DPS0_HighProtectedBank(volume) \
        ((OREN_Read8BitReg (volume,OREN_DPS0_STATUS_REG) & OREN_HIGH_BANK_BITS)>>5)  

/***********************************************************************
 * Name : OREN_DPS1_LowProtectedBank                                                  
 *   returns DPS0 low Protected unit  
 *
 ***********************************************************************/
#define OREN_DPS1_LowProtectedBank(volume) \
        ((OREN_Read8BitReg (volume,OREN_DPS1_STATUS_REG) & OREN_LOW_BANK_BITS)>>3)  

/***********************************************************************
 * Name : OREN_DPS1_HighProtectedBank                                                  
 *   returns DPS1 high Protected unit  
 *
 ***********************************************************************/
#define OREN_DPS1_HighProtectedBank(volume) \
        ((OREN_Read8BitReg (volume,OREN_DPS1_STATUS_REG) & OREN_HIGH_BANK_BITS)>>5)  
  
/***********************************************************************
 * Name : OREN_DPS0_UnitLocation                                                  
 *   returns DPS0 unit location in the Flash 
 *
 ***********************************************************************/
#define OREN_DPS0_UnitLocation(volume) \
        (OREN_Read8BitReg(volume,OREN_DPS0_POINTER_REG))

/***********************************************************************
 * Name : OREN_DPS1_UnitLocation                                                  
 *   returns DPS1 unit location in the Flash 
 *
 ***********************************************************************/
#define OREN_DPS1_UnitLocation(volume) \
        (OREN_Read8BitReg(volume,OREN_DPS1_POINTER_REG))
                                     
/***********************************************************************
 * Name : OREN_IsDPS0_WP                                                 
 *   Checks if dps is write protected 
 *
 * Returns:        
 *   None 0  - DPS_0 is write protected          
 *   0       - DPS_0 is NOT write protected 
 ***********************************************************************/
#define OREN_IsDPS0_WP(volume) \
        (OREN_Read8BitReg(volume,OREN_DPS0_STATUS_REG) & OREN_MTD_WRITE_PROTECTED)
           
/***********************************************************************
 * Name : OREN_IsDPS1_WP                                                 
 *   Checks if dps is write protected 
 *
 * Returns:        
 *   None 0  - DPS_1 is write protected          
 *   0       - DPS_1 is NOT write protected 
 ***********************************************************************/
#define OREN_IsDPS1_WP(volume) \
        (OREN_Read8BitReg(volume,OREN_DPS1_STATUS_REG) & OREN_MTD_WRITE_PROTECTED)

/***********************************************************************
 * Name : OREN_IsDPS0_RP                                                 
 *   Checks if DPS is read protected 
 *
 * Returns:        
 *   None 0  - DPS_0 is read protected
 *   0       - DPS_0 is NOT read protected
 ***********************************************************************/
#define OREN_IsDPS0_RP(volume) \
        (OREN_Read8BitReg(volume,OREN_DPS0_STATUS_REG) & OREN_MTD_READ_PROTECTED)

/***********************************************************************
 * Name : OREN_IsDPS1_RP                                                 
 *   Checks if DPS is read protected 
 *
 * Returns:        
 *   None 0  - DPS_1 is read protected
 *   0       - DPS_1 is NOT read protected
 ***********************************************************************/
#define OREN_IsDPS1_RP(volume) \
        (OREN_Read8BitReg(volume,OREN_DPS1_STATUS_REG) & OREN_MTD_READ_PROTECTED)

/***********************************************************************
 * Name : OREN_IsDPS0_LOCK_Enabled                                                  
 *   Checks if DPS is HW_LOCK protected 
 *
 * Returns:        
 *   None 0  - DPS_0 HW locked          
 *   0       - DPS_0 is not HW locked
 ***********************************************************************/
#define OREN_IsDPS0_LOCK_Enabled(volume) \
        (OREN_Read8BitReg(volume,OREN_DPS0_STATUS_REG) & OREN_HW_LOCK_ENABLED)

/***********************************************************************
 * Name : OREN_IsDPS1_LOCK_Enabled                                                
 *   Checks if DPS is HW_LOCK protected 
 *
 * Returns:        
 *   None 0   - DPS_1 HW locked          
 *   0        - DPS_1 is not HW locked
 ***********************************************************************/
#define OREN_IsDPS1_LOCK_Enabled(volume) \
        (OREN_Read8BitReg(volume,OREN_DPS1_STATUS_REG) & OREN_HW_LOCK_ENABLED)
 
/***********************************************************************
 * Name : OREN_Is_LOCK_Asserted                                                 
 *   Checks if the LOCK# H/W signal is assterted 
 *
 * Returns:        
 *   None 0  - H/W LOCK# signal is assterted         
 *   0       - H/W LOCK# signal is asserted
 ***********************************************************************/
#define OREN_Is_LOCK_Asserted(volume) \
        (OREN_Read8BitReg(volume,OREN_PROTECTION_STATUS_REG) & OREN_LOCK_INPUT_ASSERTED)

/***********************************************************************
 * Name : OREN_Is_StickyLOCK_Asserted                                                 
 *   Checks if the sticky lock signal is activated (asserted)
 *
 * Returns:        

⌨️ 快捷键说明

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