jt_flash_info_amd.c File Reference

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <stdint.h>
#include "dbg_msg.h"
#include "jt_arm.h"
#include "jt_flash.h"

Defines

Functions


Detailed Description

Flash support functions


Define Documentation

#define AMD_VID_8BIT   0x01

Referenced by jt_amdflashGetInfoByte().

#define AMD_VID_2x8BIT   0x0101
#define AMD_VID_16BIT   0x0001
#define AMD_VID_4x8BIT   0x01010101

Referenced by jt_amdflashGetInfoWord().

#define AMD_VID_2x16BIT   0x00010001

Referenced by jt_amdflashGetInfoWord().

#define AMD_CID_8BIT_AM29LV040B   0x4F
#define AMD_CID_2x8BIT_AM29LV040B   0x4F4F
#define AMD_CID_4x8BIT_AM29LV040B   0x4F4F4F4F
#define AMD_CID_8BIT_AM29F080B   0xD5
#define AMD_CID_2x8BIT_AM29F080B   0xD5D5
#define AMD_CID_4x8BIT_AM29F080B   0xD5D5D5D5
#define AMD_CID_8BIT_AM29LV640D   0xD7
#define AMD_CID_16BIT_AM29LV640D   0x22D7
#define AMD_CID_2x16BIT_AM29LV640D   0x22D722D7
#define AMD_CID_8BIT_AM29LV800BB   0x5B

Referenced by jt_amdflashGetInfoByte().

#define AMD_CID_2x8BIT_AM29LV800BB   0x5B5B
#define AMD_CID_16BIT_AM29LV800BB   0x225B
#define AMD_CID_4x8BIT_AM29LV800BB   0x5B5B5B5B

Referenced by jt_amdflashGetInfoWord().

#define AMD_CID_2x16BIT_AM29LV800BB   0x225B225B

Referenced by jt_amdflashGetInfoWord().

#define AMD_CID_8BIT_AM29LV800BT   0xDA

Referenced by jt_amdflashGetInfoByte().

#define AMD_CID_2x8BIT_AM29LV800BT   0xDADA
#define AMD_CID_16BIT_AM29LV800BT   0x22DA
#define AMD_CID_4x8BIT_AM29LV800BT   0xDADADADA

Referenced by jt_amdflashGetInfoWord().

#define AMD_CID_2x16BIT_AM29LV800BT   0x22DA22DA

Referenced by jt_amdflashGetInfoWord().

#define AMD_CID_8BIT_AM29LV400BB   0xBA

Referenced by jt_amdflashGetInfoByte().

#define AMD_CID_2x8BIT_AM29LV400BB   0xBABA
#define AMD_CID_16BIT_AM29LV400BB   0x22BA
#define AMD_CID_4x8BIT_AM29LV400BB   0xBABABABA

Referenced by jt_amdflashGetInfoWord().

#define AMD_CID_2x16BIT_AM29LV400BB   0x22BA22BA

Referenced by jt_amdflashGetInfoWord().

#define AMD_CID_8BIT_AM29LV400BT   0xB9

Referenced by jt_amdflashGetInfoByte().

#define AMD_CID_2x8BIT_AM29LV400BT   0xB9B9
#define AMD_CID_16BIT_AM29LV400BT   0x22B9
#define AMD_CID_4x8BIT_AM29LV400BT   0xB9B9B9B9

Referenced by jt_amdflashGetInfoWord().

#define AMD_CID_2x16BIT_AM29LV400BT   0x22B922B9

Referenced by jt_amdflashGetInfoWord().

#define ATMEL_VID_8BIT   0x1F

Referenced by jt_amdflashGetInfoByte().

#define ATMEL_VID_2x8BIT   0x1F1F
#define ATMEL_VID_16BIT   0x001F
#define ATMEL_VID_16BIT_ALT   0x161F
#define ATMEL_VID_4x8BIT   0x1F1F1F1F

Referenced by jt_amdflashGetInfoWord().

#define ATMEL_VID_2x16BIT   0x001F001F

Referenced by jt_amdflashGetInfoWord().

#define ATMEL_VID_2x16BIT_ALT   0x161F161F

Referenced by jt_amdflashGetInfoWord().

#define ATMEL_CID_8BIT_AT49LV1604A   0xC0

Referenced by jt_amdflashGetInfoByte().

#define ATMEL_CID_2x8BIT_AT49LV1604A   0xC0C0
#define ATMEL_CID_16BIT_AT49LV1604A   0x00C0
#define ATMEL_CID_4x8BIT_AT49LV1604A   0xC0C0C0C0

Referenced by jt_amdflashGetInfoWord().

#define ATMEL_CID_2x16BIT_AT49LV1604A   0x00C000C0

Referenced by jt_amdflashGetInfoWord().

#define ATMEL_CID_8BIT_AT49LV1604AT   0xC2

Referenced by jt_amdflashGetInfoByte().

#define ATMEL_CID_2x8BIT_AT49LV1604AT   0xC2C2
#define ATMEL_CID_16BIT_AT49LV1604AT   0x00C2
#define ATMEL_CID_4x8BIT_AT49LV1604AT   0xC2C2C2C2

Referenced by jt_amdflashGetInfoWord().

#define ATMEL_CID_2x16BIT_AT49LV1604AT   0x00C200C2

Referenced by jt_amdflashGetInfoWord().

#define ATMEL_CID_8BIT_AT49LV4096A   0x92

Referenced by jt_amdflashGetInfoByte().

#define ATMEL_CID_16BIT_AT49LV4096A   0x1692
#define ATMEL_CID_2x16BIT_AT49LV4096A   0x1692

Referenced by jt_amdflashGetInfoWord().

#define STM_VID_8BIT   0x20

Referenced by jt_amdflashGetInfoByte().

#define STM_VID_2x8BIT   0x2020
#define STM_VID_16BIT   0x0020
#define STM_VID_4x8BIT   0x20202020

Referenced by jt_amdflashGetInfoWord().

#define STM_VID_2x16BIT   0x00200020

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_8BIT_M29F400BB   0xD6

Referenced by jt_amdflashGetInfoByte().

#define STM_CID_16BIT_M29F400BB   0x00D6
#define STM_CID_2x16BIT_M29F400BB   0x00D600D6

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_8BIT_M29F400BT   0xD5

Referenced by jt_amdflashGetInfoByte().

#define STM_CID_16BIT_M29F400BT   0x00D5
#define STM_CID_2x16BIT_M29F400BT   0x00D500D5

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_8BIT_M29W400DB   0xEF

Referenced by jt_amdflashGetInfoByte().

#define STM_CID_2x8BIT_M29W400DB   0xEFEF
#define STM_CID_16BIT_M29W400DB   0x00EF
#define STM_CID_4x8BIT_M29W400DB   0xEFEFEFEF

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_2x16BIT_M29W400DB   0x00EF00EF

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_8BIT_M29W400DT   0xEE

Referenced by jt_amdflashGetInfoByte().

#define STM_CID_2x8BIT_M29W400DT   0xEEEE
#define STM_CID_16BIT_M29W400DT   0x00EE
#define STM_CID_4x8BIT_M29W400DT   0xEEEEEEEE

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_2x16BIT_M29W400DT   0x00EE00EE

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_8BIT_M29W800DB   0x5B

Referenced by jt_amdflashGetInfoByte().

#define STM_CID_2x8BIT_M29W800DB   0x5B5B
#define STM_CID_16BIT_M29W800DB   0x225B
#define STM_CID_4x8BIT_M29W800DB   0x5B5B5B5B

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_2x16BIT_M29W800DB   0x225B225B

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_8BIT_M29W800DT   0xD7

Referenced by jt_amdflashGetInfoByte().

#define STM_CID_2x8BIT_M29W800DT   0xD7D7
#define STM_CID_16BIT_M29W800DT   0x22D7
#define STM_CID_4x8BIT_M29W800DT   0xD7D7D7D7

Referenced by jt_amdflashGetInfoWord().

#define STM_CID_2x16BIT_M29W800DT   0x22D722D7

Referenced by jt_amdflashGetInfoWord().


Function Documentation

static void AMD_AM29LV040B ( void   )  [inline, static]

References DBG_LEVEL_JTAG_ARM, and dbgPrintf().

static void AMD_2x_AM29LV040B ( void   )  [inline, static]

References DBG_LEVEL_JTAG_ARM, and dbgPrintf().

static void AMD_4x_AM29LV040B ( void   )  [inline, static]

References DBG_LEVEL_JTAG_ARM, and dbgPrintf().

static void AMD_AM29F080B ( void   )  [inline, static]

References DBG_LEVEL_JTAG_ARM, and dbgPrintf().

static void AMD_2x_AM29F080B ( void   )  [inline, static]

References DBG_LEVEL_JTAG_ARM, and dbgPrintf().

static void AMD_4x_AM29F080B ( void   )  [inline, static]

References DBG_LEVEL_JTAG_ARM, and dbgPrintf().

static void AMD_AM29LV640D ( void   )  [inline, static]

References DBG_LEVEL_JTAG_ARM, and dbgPrintf().

static void AMD_2x_AM29LV640D ( void   )  [inline, static]

References DBG_LEVEL_JTAG_ARM, and dbgPrintf().

static void AMD_AM29LV800BB ( void   )  [inline, static]
static void AMD_2x_AM29LV800BB ( void   )  [inline, static]
static void AMD_4x_AM29LV800BB ( void   )  [inline, static]
static void AMD_AM29LV800BT ( void   )  [inline, static]
static void AMD_2x_AM29LV800BT ( void   )  [inline, static]
static void AMD_4x_AM29LV800BT ( void   )  [inline, static]
static void AMD_AM29LV400BB ( void   )  [inline, static]
static void AMD_2x_AM29LV400BB ( void   )  [inline, static]
static void AMD_4x_AM29LV400BB ( void   )  [inline, static]
static void AMD_AM29LV400BT ( void   )  [inline, static]
static void AMD_2x_AM29LV400BT ( void   )  [inline, static]
static void AMD_4x_AM29LV400BT ( void   )  [inline, static]
static void ATMEL_AT49LV1604A ( void   )  [inline, static]
static void ATMEL_2x_AT49LV1604A ( void   )  [inline, static]
static void ATMEL_4x_AT49LV1604A ( void   )  [inline, static]
static void ATMEL_AT49LV1604AT ( void   )  [inline, static]
static void ATMEL_2x_AT49LV1604AT ( void   )  [inline, static]
static void ATMEL_4x_AT49LV1604AT ( void   )  [inline, static]
static void ATMEL_AT49LV4096A ( void   )  [inline, static]
static void ATMEL_2x_AT49LV4096A ( void   )  [inline, static]
static void STM_M29F400BB ( void   )  [inline, static]
static void STM_2x_M29F400BB ( void   )  [inline, static]
static void STM_M29F400BT ( void   )  [inline, static]
static void STM_2x_M29F400BT ( void   )  [inline, static]
static void STM_M29W400DB ( void   )  [inline, static]
static void STM_2x_M29W400DB ( void   )  [inline, static]
static void STM_4x_M29W400DB ( void   )  [inline, static]
static void STM_M29W400DT ( void   )  [inline, static]
static void STM_2x_M29W400DT ( void   )  [inline, static]
static void STM_4x_M29W400DT ( void   )  [inline, static]
static void STM_M29W800DB ( void   )  [inline, static]
static void STM_2x_M29W800DB ( void   )  [inline, static]
static void STM_4x_M29W800DB ( void   )  [inline, static]
static void STM_M29W800DT ( void   )  [inline, static]
static void STM_2x_M29W800DT ( void   )  [inline, static]
static void STM_4x_M29W800DT ( void   )  [inline, static]
int jt_amdflashGetInfoByte ( uint32_t  base_address,
struct sector **  sector_info 
)
int jt_amdflashGetInfoHalfword ( uint32_t  base_address,
struct sector **  sector_info 
)

Try to get the Flash info and create a new sector_info if possible. (16-Bit access)
(external std. flash using AMD programming algorithm)

Parameters:
base_address flash base address
sector_info pointer to target for new sector_info
Returns:
number of flash chips per 16-bit bus (0=not found; 1=one 16-flash; 2=two 8-bit flash)

References AMD_2x_AM29LV400BB(), AMD_2x_AM29LV400BT(), AMD_2x_AM29LV800BB(), AMD_2x_AM29LV800BT(), AMD_AM29LV400BB(), AMD_AM29LV400BT(), AMD_AM29LV800BB(), AMD_AM29LV800BT(), AMD_CID_16BIT_AM29LV400BB, AMD_CID_16BIT_AM29LV400BT, AMD_CID_16BIT_AM29LV800BB, AMD_CID_16BIT_AM29LV800BT, AMD_CID_2x8BIT_AM29LV400BB, AMD_CID_2x8BIT_AM29LV400BT, AMD_CID_2x8BIT_AM29LV800BB, AMD_CID_2x8BIT_AM29LV800BT, AMD_VID_16BIT, AMD_VID_2x8BIT, ATMEL_2x_AT49LV1604A(), ATMEL_2x_AT49LV1604AT(), ATMEL_AT49LV1604A(), ATMEL_AT49LV1604AT(), ATMEL_AT49LV4096A(), ATMEL_CID_16BIT_AT49LV1604A, ATMEL_CID_16BIT_AT49LV1604AT, ATMEL_CID_16BIT_AT49LV4096A, ATMEL_CID_2x8BIT_AT49LV1604A, ATMEL_CID_2x8BIT_AT49LV1604AT, ATMEL_VID_16BIT, ATMEL_VID_16BIT_ALT, ATMEL_VID_2x8BIT, DBG_LEVEL_JTAG_ARM, dbgPrintf(), jt_flash_create_sector_info(), jtag_arm_ReadHalfword(), jtag_arm_WriteHalfword(), sector::lock, STM_2x_M29W400DB(), STM_2x_M29W400DT(), STM_2x_M29W800DB(), STM_2x_M29W800DT(), STM_CID_16BIT_M29F400BB, STM_CID_16BIT_M29F400BT, STM_CID_16BIT_M29W400DB, STM_CID_16BIT_M29W400DT, STM_CID_16BIT_M29W800DB, STM_CID_16BIT_M29W800DT, STM_CID_2x8BIT_M29W400DB, STM_CID_2x8BIT_M29W400DT, STM_CID_2x8BIT_M29W800DB, STM_CID_2x8BIT_M29W800DT, STM_M29F400BB(), STM_M29F400BT(), STM_M29W400DB(), STM_M29W400DT(), STM_M29W800DB(), STM_M29W800DT(), STM_VID_16BIT, and STM_VID_2x8BIT.

Referenced by detectFlash(), and jtag_test().

int jt_amdflashGetInfoWord ( uint32_t  base_address,
struct sector **  sector_info 
)

Try to get the Flash info and create a new sector_info if possible. (32-Bit access)
(external std. flash using AMD programming algorithm)

Parameters:
base_address flash base address
sector_info pointer to target for new sector_info
Returns:
number of flash chips per 16-bit bus (0=not found; 2=two 16-flash; 4=four 8-bit flash)

References AMD_2x_AM29LV400BB(), AMD_2x_AM29LV400BT(), AMD_2x_AM29LV800BB(), AMD_2x_AM29LV800BT(), AMD_4x_AM29LV400BB(), AMD_4x_AM29LV400BT(), AMD_4x_AM29LV800BB(), AMD_4x_AM29LV800BT(), AMD_CID_2x16BIT_AM29LV400BB, AMD_CID_2x16BIT_AM29LV400BT, AMD_CID_2x16BIT_AM29LV800BB, AMD_CID_2x16BIT_AM29LV800BT, AMD_CID_4x8BIT_AM29LV400BB, AMD_CID_4x8BIT_AM29LV400BT, AMD_CID_4x8BIT_AM29LV800BB, AMD_CID_4x8BIT_AM29LV800BT, AMD_VID_2x16BIT, AMD_VID_4x8BIT, ATMEL_2x_AT49LV1604A(), ATMEL_2x_AT49LV1604AT(), ATMEL_2x_AT49LV4096A(), ATMEL_4x_AT49LV1604A(), ATMEL_4x_AT49LV1604AT(), ATMEL_CID_2x16BIT_AT49LV1604A, ATMEL_CID_2x16BIT_AT49LV1604AT, ATMEL_CID_2x16BIT_AT49LV4096A, ATMEL_CID_4x8BIT_AT49LV1604A, ATMEL_CID_4x8BIT_AT49LV1604AT, ATMEL_VID_2x16BIT, ATMEL_VID_2x16BIT_ALT, ATMEL_VID_4x8BIT, DBG_LEVEL_JTAG_ARM, dbgPrintf(), jt_flash_create_sector_info(), jtag_arm_ReadWord(), jtag_arm_WriteWord(), sector::lock, STM_2x_M29F400BB(), STM_2x_M29F400BT(), STM_2x_M29W400DB(), STM_2x_M29W400DT(), STM_2x_M29W800DB(), STM_2x_M29W800DT(), STM_4x_M29W400DB(), STM_4x_M29W400DT(), STM_4x_M29W800DB(), STM_4x_M29W800DT(), STM_CID_2x16BIT_M29F400BB, STM_CID_2x16BIT_M29F400BT, STM_CID_2x16BIT_M29W400DB, STM_CID_2x16BIT_M29W400DT, STM_CID_2x16BIT_M29W800DB, STM_CID_2x16BIT_M29W800DT, STM_CID_4x8BIT_M29W400DB, STM_CID_4x8BIT_M29W400DT, STM_CID_4x8BIT_M29W800DB, STM_CID_4x8BIT_M29W800DT, STM_VID_2x16BIT, and STM_VID_4x8BIT.

Referenced by detectFlash().


This file is part of the documentation for JTAG-GDB Server for ARM .

Generated on Mon Feb 15 21:23:21 2010 by doxygen 1.6.2.