📄 jnand_param.h
字号:
#ifndef __JNAND_PARAM_H__
#define __JNAND_PARAM_H__
/*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*
Flash Programming Plug-In for Lauterbach JTAG/ICD TRACE32
GENERAL DESCRIPTION
This header file contains the structures that are used to communicate
between our plug-in and Lauterbach TRACE32 Debugger. Also contains
definitions for commands and responses that the JTAG ICD understands.
Copyright (c) 2002 by QUALCOMM Incorporated. All Rights Reserved.
*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*/
/*===========================================================================
EDIT HISTORY FOR MODULE
This section contains comments describing changes made to the module.
Notice that changes are listed in reverse chronological order.
$Header: //depot/asic/MSMSHARED/tools/jnand/jnand_param.h#2 $ $DateTime: 2004/02/26 14:43:26 $ $Author: dionh $
when who what, where, why
-------- --- ----------------------------------------------------------
02/26/04 drh Add support for erasing entire NAND flash
02/06/03 pg Moved from ASWP402 server to ASWP401 server.
07/12/02 drh Added FLASH_INIT_BOOT command
07/05/02 drh Created.
===========================================================================*/
/*===========================================================================
INCLUDE FILES FOR MODULE
===========================================================================*/
#include "jnand_comdef.h"
/*===========================================================================
STRUCTURE AND TYPE DEFINITIONS FOR MODULE
===========================================================================*/
/* This structure is used to communcate between TRACE32 Debugger and
* our FLASH plug-in. */
struct type_jtag_flash_param {
uint32 flashaddr;
uint32 flashwidth;
uint32 width;
uint32 offset;
uint32 addr; // in: address of the flash to write/erase
uint32 size; // in: size of data to write/erase
uint32 reserved;
uint32 status;// in: 1=program, 2=erase, 5=erase, out: 0=o.k., 0x100=fail
byte data[0x20000]; // give 128K worth of buffer
// this is where TRACE32 will store data that
// we'll be writing to the FLASH
};
/* This structure is used to communcate from our program to T32
* in an extended fashion for post processing statistics. It
* overlays the data area of jtag_flash_param and presents
* a different interface */
struct type_jtag_report {
uint32 input_gap_size;
uint32 bad_block_gap_size;
uint32 image_size;
uint32 reserved1;
uint32 reserved2;
uint32 reserved3;
uint32 reserved4;
uint32 status; // out: 0=o.k., 0x100=fail
};
/*===========================================================================
MACRO DEFINITIONS FOR MODULE
===========================================================================*/
/* command code from type_jtag_flash_param.status */
#define FLASH_PROGRAM 0x00000001
#define FLASH_ERASE 0x00000002
#define FLASH_ERASE5 0x00000005
#define FLASH_INITIALIZE 0x00000009
#define FLASH_FINALIZE 0x0000000A
#define FLASH_SELFTEST 0x0000000B
#define FLASH_REPORT 0x0000000C
#define FLASH_VERIFY 0x0000000D
#define FLASH_INIT_BOOT 0x0000000E
#define FLASH_ERASE_CHIP 0x00000020
#define FLASH_DUMP 0x00000021
// return code for type_jtag_flash_param.status
#define FLASH_SUCCESS 0
#define FLASH_FAIL 0x00000100
#endif /* __JNAND_PARAM_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -