DOWNLOAD.H
上传用户:gelin96
上传日期:2017-01-08
资源大小:20993k
文件大小:32k
源码类别:

MTK

开发平台:

C++ Builder

  1. /*******************************************************************************
  2. *  Copyright Statement:
  3. *  --------------------
  4. *  This software is protected by Copyright and the information contained
  5. *  herein is confidential. The software may not be copied and the information
  6. *  contained herein may not be used or disclosed except with the written
  7. *  permission of MediaTek Inc. (C) 2001
  8. *
  9. *******************************************************************************/
  10. /*******************************************************************************
  11.  * Filename:
  12.  * ---------
  13.  *    download.h
  14.  *
  15.  * Project:
  16.  * --------
  17.  *   MTK6208 DOWNLOAD AGENT
  18.  *
  19.  * Description:
  20.  * ------------
  21.  *   This file is intends for download agent specific definition
  22.  *
  23.  * Author:
  24.  * -------
  25.  * Jensen Hu
  26.  *
  27.  *------------------------------------------------------------------------------
  28.  * $Revision:   1.36  $ 
  29.  * $Modtime:   Jan 13 2006 20:33:06  $
  30.  * $Log:   //mtkvs01/vmdata/flash_tool/archives/DA/INC/DOWNLOAD.H-arc  $
  31.  *
  32.  * Jan 31 2008 mtk01413
  33.  * [STP100001630] [FlashTool] v3.0804.0 release
  34.  * New features:
  35.  *  1. USB Download for End User
  36.  * Enhancements:
  37.  *  1. [DA] Download Optimization with 921k on MT6225/MT6229/MT6230/MT6235/MT6238
  38.  *  2. [DA] Provide two download methodology : Best Effort Erase (default) and Sequential Erase
  39.  *  3. [DA] New CheckID algorithm for all SPANSION MCP series
  40.  *
  41.  * Dec 3 2007 mtk01413
  42.  * [STP100001568] [FlashTool] v3.0748.0 release
  43.  * 
  44.  *
  45.  * Aug 30 2007 mtk01413
  46.  * [STP100001497] [FlashTool] v3.2.0 release
  47.  * 
  48.  *
  49.  * May 18 2007 mtk01413
  50.  * [STP100001402] FlashTool v3.1.05 release
  51.  *  1. [DA] Supports new NOR Flash device
  52.  *  [SPANSION] S29WS128P
  53.  *  [SPANSION] S29WS256P
  54.  *  [TOSHIBA] TV00560002DDGB
  55.  *
  56.  * Mar 12 2007 mtk01413
  57.  * [STP100001329] FlashTool v3.1.04 release
  58.  * New features:
  59.  *  1. [DA] Supports new NOR Flash device
  60.  *  [SAMSUNG] K5L2731CAM
  61.  *  [SAMSUNG] K5L2931CAM
  62.  *  [SPANSION] S71PL127J
  63.  *  [TOSHIBA] TY00689002APGN
  64.  *  [SPANSION] S29GL064A_T
  65.  *  [SPANSION] S29GL064A_B
  66.  * 
  67.  *  2. [DA] Supports OTP driver for below NOR Flash device
  68.  *  [SPANSION] NOR_S71WS256N
  69.  *  [SPANSION] S71WS128NB0BFWAN3
  70.  * Enhancements:
  71.  *  1. [DA] Rename old NOR Flash device
  72.  *  [SPANSION] S71WS128NB0BFWAN3 --> S29WS128N
  73.  *  [SPANSION] S71WS256N --> S29WS256N
  74.  *  [SPANSION] S71WS512PD0HF3HR --> S29WS512P
  75.  *  [SPANSION] S29GL128NH --> S29GL128N_T
  76.  *  [SPANSION] S29GL128NL --> S29GL128N_B
  77.  *  [SPANSION] S29GL256NH --> S29GL256N_T
  78.  *  [SPANSION] S29GL256NL --> S29GL256N_B
  79.  *  [SPANSION] S29GL512NH --> S29GL512N_T
  80.  *  [SPANSION] S29GL512NL --> S29GL512N_B
  81.  * 
  82.  *
  83.  * Jan 2 2007 mtk01413
  84.  * [STP100001195] FlashTool v3.1.02 release
  85.  * New features:
  86.  *  1. [BROM_DLL/DA] Support FOTA(Firmware update Over The Air) download.
  87.  *  2. [BROM_DLL/DA] Support MT6223  download.
  88.  *  3. [BROM_DLL/DA] Support MT6268T download.
  89.  *  4. [DA] Supports new NOR Flash device
  90.  *  [SPANSION] S29GL128NH
  91.  *  [SPANSION] S29GL128NL
  92.  *  [SPANSION] S29GL256NH
  93.  *  [SPANSION] S29GL256NL
  94.  *  [SPANSION] S29GL512NH
  95.  *  [SPANSION] S29GL512NL
  96.  * 
  97.  *
  98.  * Nov 2 2006 mtk01413
  99.  * [STP100001195] FlashTool v3.1.02 release
  100.  * New features:
  101.  *  1. [DA] Supports new NOR Flash device (AD-Mux)
  102.  *  [SPANSION] S29NS064N
  103.  *  [SPANSION] S29NS128N
  104.  *  [SPANSION] S29NS256N
  105.  * 
  106.  *  2. [DA] Supports new NOR flash device.
  107.  *  [ST] M58PPR256J
  108.  *  [ST] M58PPR512J
  109.  *  [SST] SST32HF3241C
  110.  *  [SPANSION] S71WS128NB0BFWAN3
  111.  *  [SPANSION] S71WS256N
  112.  *  [SPANSION] S71WS512PD0HF3HR
  113.  * 
  114.  *
  115.  * Aug 16 2006 mtk00539
  116.  * [STP100001057] FlashTool v3.1.00 release
  117.  * Add DA_GET_PROJECT_ID_CMD and DA_GET_FAT_INFO_CMD command.
  118.  *
  119.  * Aug 13 2006 mtk01413
  120.  * [STP100001057] FlashTool v3.1.00 release
  121.  * 
  122.  *
  123.  * Jun 12 2006 mtk01413
  124.  * [STP100000922] FlashTool v2.9.1001 release
  125.  * New features:
  126.  *  1. [FlashTool/BROM_DLL] Support Multi-Load Autodetection Download.
  127.  *
  128.  * May 24 2006 mtk01413
  129.  * [STP100000877] FlashTool v2.7.1018 release
  130.  *  1. [DA] Supports new NOR flash device.
  131.  *  [SHARP] LRS18BK
  132.  *  [INTEL] 28F3204C3TD70, [MemoCom] KS03204
  133.  *  2. [DA] Supports new NAND flash device.
  134.  *  [TOSHIBA] TC58NWM9S3B 
  135.  *
  136.  * Mar 18 2006 mtk01413
  137.  * [STP100000694] [DA] 1. Support SST driver. 2. Bug Fix: WriteCmd  3. Bug Fix: DetectExtSRAM
  138.  * [SST]  SST34HF16x1
  139.  * [SST]  SST34HF32x4
  140.  *
  141.  * Mar 8 2006 mtk00539
  142.  * [STP100000625] FlashTool v2.7.1016
  143.  *  1. [DA] Supports new NOR flash device.
  144.  *  [INTEL] PF48F50xxM0x1xx
  145.  *  [INTEL] PF48F40xxM0x0xx
  146.  *  [INTEL] PF48F40xxM0x1xx
  147.  *  2. [DA] Supports new NAND flash device.
  148.  *  [MICRON] MT29F2G08AAC
  149.  *  [MICRON] MT29F4G08BAB
  150.  *  [RENESAS] superAND 512Mb/8bits
  151.  *  [RENESAS] superAND 512Mb/16bits
  152.  *  [Infineon] HYF33DS51280
  153.  *  [Infineon] HYF33DS1G80
  154.  *  [Infineon] HYF33DS1G16
  155.  * 
  156.  *
  157.  * Mar 8 2006 mtk00539
  158.  * [STP100000669] [DA] Support RENESAS superAND flash read back and format operation.
  159.  * 
  160.  *
  161.  * Feb 26 2006 mtk00539
  162.  * [STP100000633] [BROM_DLL] Using local DA_REPORT_T variable to avoid multithread unsafe problem.
  163.  * 
  164.  *
  165.  * Feb 23 2006 mtk00539
  166.  * [STP100000625] FlashTool v2.7.1016
  167.  * 
  168.  * 
  169.  *    Rev 1.36   Jan 14 2006 00:09:52   mtk00539
  170.  * Bug fixes:
  171.  *  1. [DA] Workaround reading DSP version failure issue in some production lines, rollback to the old method for reading DSP version. 
  172.  * 
  173.  * New features:
  174.  *  1. [DA] Supports INTEL Sibley family flash.
  175.  *  2. [DA] Supports new NOR flash device.
  176.  *  [INTEL] PF38F5050M0XXXX
  177.  * Resolution for 159: [FlashTool v2.7.1015]
  178.  * 
  179.  *    Rev 1.35   Jan 04 2006 14:35:48   mtk00539
  180.  * Bug fixes:
  181.  *  1. [DA] Fix Spansion S71PLXXXN detection problem by reading CFI info.
  182.  * 
  183.  * New features:
  184.  *  1. [DA] Supports Spansion MirrorBit Buffer-Program method.
  185.  *  2. [DA] Supports new NOR flash device.
  186.  *  [SPANSION] S71PL129N
  187.  * 
  188.  * Enhancements:
  189.  *  1. [DA] Halt program when external RAM is less than 128KB.
  190.  * Resolution for 158: [FlashTool v2.7.1014][New] Support Spansion MirrorBit Buffer-Program method.
  191.  * 
  192.  *    Rev 1.34   Jan 02 2006 13:16:22   mtk00539
  193.  * Add new flash [SPANSION] S71PL256NC0HAW5B
  194.  * Resolution for 156: [FlashTool v2.7.1013][BUG FIX] Fix BootROM start command failure while manually selecting NMT6226 or MT6227 baseband chip.
  195.  * 
  196.  *    Rev 1.33   Dec 29 2005 10:42:58   mtk00539
  197.  *  1. [DA] Supports new NOR flash device.
  198.  *  [SPANSION] S71PL127N
  199.  *  [SILICON7] SV6D2832UTA
  200.  *  [SILICON7] SV6D2832UBA
  201.  *  [SILICON7] SV6C2832UTA
  202.  *  [SILICON7] SV6C2832UBA
  203.  *  [SHARP] LH28F16
  204.  *  [TOSHIBA] TV00578002DABD
  205.  *  [TOSHIBA] TV00578003DABD
  206.  *  2. [DA] Supports new NAND flash device.
  207.  *  [TOSHIBA] TH58NVG1S8BFT
  208.  * Resolution for 156: [FlashTool v2.7.1013][BUG FIX] Fix BootROM start command failure while manually selecting NMT6226 or MT6227 baseband chip.
  209.  * 
  210.  *    Rev 1.32   Nov 27 2005 16:35:56   mtk00539
  211.  * 1. [DA][BUG FIX] Add NUTL_VERIFY_AFTER_PROGRAM flash to perform read back verification after program operation. 
  212.  * Resolution for 151: [BROM_DLL v2.7.1012][BUG FIX] Cannot recognize 05B ROM_INFO header.
  213.  * 
  214.  *    Rev 1.31   Nov 19 2005 00:40:30   mtk00539
  215.  *  1. [BROM_DLL&DA][New] Add UID Secure Booting feature.
  216.  *  2. [BROM_DLL&DA][BUG FIX] Fix RTC date-time value could not be initialized problem. 
  217.  *  3. [DA][New] Supports new NOR flash device.
  218.  *  [INTEL] 38F1010C0ZBL0
  219.  *  [INTEL] 28F1602C3BD70
  220.  *  [TOSHIBA] TY0068B012APGG
  221.  *  [TOSHIBA] TY0068B013APGG
  222.  *  4. [DA][New] Supports new NAND flash device.
  223.  *  [HYNIX] HY27XG082G2M
  224.  * Resolution for 149: [BROM_DLL v2.7.1011][New] Add UID Secure Booting feature and Bug Fix.
  225.  * 
  226.  *    Rev 1.30   Oct 26 2005 09:43:42   mtk00539
  227.  *  1. [BROM_DLL][Enhance] Always fix BootROM start command read timeout to 20ms to bypass start command failure problem.
  228.  *  2. [DA][BUG FIX] Fix wrong start block address of 2nd binary for new NFB architecture.
  229.  * Resolution for 144: [BROM_DLL v2.7.1010][BUG FIX] Fix wrong start block address of 2nd binary for new NFB architecture.
  230.  * 
  231.  *    Rev 1.29   Oct 19 2005 14:45:02   mtk00539
  232.  *  1. [BROM_DLL&DA][New] New H/W devices detection architecture including NOR, NAND, SRAM and DRAM detection. 
  233.  *  2. [BROM_DLL&DA][New] DA partial download technic, that overcomes DA size exceeds MT6205B internal SRAM (32KB).
  234.  *  3. [BROM_DLL&DA][New] Format verification option, each byte should be 0xFF after erasure. 
  235.  *  4. [BROM_DLL&DA][New] DA validation to ensure invalid binary could not be loaded.
  236.  *  5. [BROM_DLL&DA][New] Support NFB download. 
  237.  *  6. [BROM_DLL&DA][New] Support NAND flash format with 3 method, NORMAL, FORCEDLY ERASE and MARK AS BAD BLOCK. 
  238.  *  7. [BROM_DLL&DA][New] Support NAND flash read back with 4 methods, PAGE+ECC, PAGE ONLY, SPARE ONLY and PAGE+SPARE. 
  239.  * Resolution for 140: [BROM_DLL v2.7.1008][New] Support NFB download and many new features.
  240.  * 
  241.  *    Rev 1.28   Oct 18 2005 13:36:40   mtk00539
  242.  *  1. [DA][New] New NOR flash device support
  243.  *  [SILICON7] S7_SV7E160XT,
  244.  *  [SILICON7] S7_SV7E160XB,
  245.  *  [SILICON7] S7_SV7E320XT,
  246.  *  [SILICON7] S7_SV7E320XB,
  247.  *  [SPANSION] S71GL032R3_T,
  248.  *  [SPANSION] S71GL032R4_B,
  249.  *  [SPANSION] S71GL032R1R2,
  250.  *  [TOSHIBA] TV00569002BABD,
  251.  *  [TOSHIBA] TV00569003BABD,
  252.  *  [TOSHIBA] TV00569002AABD,
  253.  *  [TOSHIBA] TV00569003AABD,
  254.  * Resolution for 137: [BROM_DLL v2.4.1017][New] Enable SID feature and add new flash device supoprt.
  255.  * 
  256.  *    Rev 1.27   Sep 13 2005 13:23:52   mtk00539
  257.  *  1. [DA][New] New NOR flash device support [Winbond] W19B320ATB, W19B320ATT.
  258.  *  2. [DA][BUG FIX] Fix MT6229 read DSP version failure problem.
  259.  * Resolution for 130: [BROM_DLL v2.4.1016][Enhance] Workaround the 1st time power up failure issue when RTC is empty.
  260.  * 
  261.  *    Rev 1.26   Jun 15 2005 12:21:42   mtk00539
  262.  *  1. [DA][New] Support new flash devices TV0057A002AABD and TV0057A002AABD.
  263.  *  2. [DA][New] Support RENESAS flash with F-WP#(LOW).
  264.  * Resolution for 118: [BROM_DLL v2.4.1013][New] Support RENESAS flash with F-WP#(LOW).
  265.  * 
  266.  *    Rev 1.25   May 24 2005 19:54:22   mtk00539
  267.  *  1. [BROM_DLL][New] Add DA_cmd::CMD_EnableWatchDog() to enable watchdog after download process. 
  268.  *  2. [BROM_DLL][New] Add DL_ResourceProjectIdComparisonSetting() API to enable/disable resource project id comparison. 
  269.  *  3. [BROM_DLL][New] Add callback function in Boot_META() series API to do extra process after BootROM start command passed.
  270.  *  4. [BROM_DLL][BUG FIX] Fix com port error after using HyperTerminal.
  271.  *  5. [BROM_DLL][BUG FIX] Fix m_boot_timeout takes no effect in BRom_AutoBoot::BRom_StartCmd().
  272.  *  6. [BROM_DLL][Change Behavior] Stop download process while CALLBACK_DA_REPORT return non-zero value. 
  273.  *  7. [BROM_DLL][Change Behavior] Skip resource table size and content size checking for CustPack project.
  274.  * Resolution for 115: [BROM_DLL v2.4.1012][New] Support new flash devices and bug fix.
  275.  * 
  276.  *    Rev 1.24   Mar 29 2005 11:14:38   mtk00539
  277.  *  1. [BROM_DLL][BUG FIX] ROM_ID_Class::LoadID() should dump only the last 256 bytes data. 
  278.  *  2. [BROM_DLL][New] Add detail H/W error debug log. 
  279.  *  3. [DA][Enhance] Enhance bus test in FlashTest_DA.
  280.  *  4. [DA][New] Add H/W error detail detection, thus we can distinguish INT_SRAM or EXT_SRAM error.
  281.  *  5. [DA][New] Add all INTEL W18/W30, L18/L30 non-SCSP flashes support. 
  282.  * Resolution for 107: [BROM_DLL v2.4.1010][New] Enhance bus test in FlashTest_DA, new INTEL flash support and bug fix.
  283.  * 
  284.  *    Rev 1.23   Feb 16 2005 17:23:56   mtk00539
  285.  *  1. [DA][BUG FIX] Fix INTEL W18/W30 series flash program fail. this series don't support Buffered-Program method, we can only use WORD program.
  286.  *  2. [DA][BUG FIX] Fix format %x bug in UART_Printf().
  287.  *  3. [DA][BUG FIX] Fix small size EXT_SRAM detection error. Shrink the EXT_SRAM detection unit from 512KB to 128KB in Board_Schematic().
  288.  *  4. [DA][New] Extend max sector region to 4 for SPANSION S71AL016D flash.
  289.  *  5. [DA][New] Add SPANSION S71AL016D T/B and SHARP LRS18C8A flash support. 
  290.  * Resolution for 105: [BROM_DLL v2.4.1009][New] Fix INTEL W18/W30 series bug and add SPANSION S71AL016D and SHARP LRS18C8A flash support.
  291.  * 
  292.  *    Rev 1.22   Nov 29 2004 15:49:36   mtk00539
  293.  * [DA][New] Support new flashes [SHARP]LRS18B0 and LRS1863.
  294.  * Resolution for 99: [BROM_DLL v2.4.1008][New] Support INTEL family flash Buffered-Program method.
  295.  * 
  296.  *    Rev 1.21   Nov 22 2004 12:23:48   mtk00539
  297.  *  1. [DA][BUG FIX] Add data verification in status polling during erase or program operation.
  298.  *  2. [DA][BUG FIX] Fix two dies flash detection fail in INTEL_CheckDevID(). 
  299.  *  3. [DA][Change Behavior] When S_DA_UART_RX_BUF_FULL occurs, flush data queued in UART ring buffer til data is less than 512KB.
  300.  *  4. [DA][New] Support Buffered-Program method for INTEL family flashes.
  301.  *  5. [DA][New] Support new flashes [SHARP]LRS1828C and [RENESAS]M6MGB64BM34CDG.
  302.  * Resolution for 99: [BROM_DLL v2.4.1008][New] Support INTEL family flash Buffered-Program method.
  303.  * 
  304.  *    Rev 1.20   Oct 29 2004 11:42:58   mtk00539
  305.  *  1. [BROM_DLL][New] Implement auto bbchip and ext_clock detection mechanism.
  306.  *  2. [BROM_DLL][New] Increase BootROM baudrate as twice times by setup UART_HIGHSPEED_RATE_STEP register.
  307.  *  3. [BROM_DLL][New] Add new bbchip MT6205_EN and MT6218B_GN.
  308.  *  4. [BROM_DLL][Enhance] Increase MT6217 and MT6219 EMI driving strength.
  309.  * Resolution for 92: [BROM_DLL v2.4.1006][BUG FIX] Fix AM49DL3208GT & S71PL032J download fail problem and some enhancement.
  310.  * 
  311.  *    Rev 1.19   Sep 17 2004 17:01:22   mtk00539
  312.  * add error code to indicate Board_Schematic() error
  313.  * Resolution for 90: [BROM_DLL v2.4.1005][BUG FIX] Fix MT6217 download fail problem and some enhancement.
  314.  * 
  315.  *    Rev 1.18   Sep 14 2004 20:47:38   mtk00539
  316.  * [SAMSUNG] KAD060300B
  317.  * Resolution for 90: [BROM_DLL v2.4.1005][BUG FIX] Fix MT6217 download fail problem and some enhancement.
  318.  * 
  319.  *    Rev 1.17   Sep 14 2004 16:38:26   mtk00539
  320.  *  1. [BROM_DLL][BUG FIX] Change MT6217 EMI general control register to default value since it's different with MT6218B.
  321.  *  2. [BROM_DLL][Enhance] Modify serial port enumeration to support FTDI USB-Serial cable.
  322.  * Resolution for 90: [BROM_DLL v2.4.1005][BUG FIX] Fix MT6217 download fail problem and some enhancement.
  323.  * 
  324.  *    Rev 1.16   Aug 03 2004 10:42:42   mtk00539
  325.  *  1. [DA][BUG FIX] Invoke Board_Schematic()(old name is HW_Init()) before FUTL_CheckDevice(). Because FUTL_CheckDevice() must know the absolute address for each bank.
  326.  *  2. [DA][New] Add 12 new flash devices support 
  327.  *  [SAMSUNG]K5A3280YT,
  328.  *  [TOSHIBA]TH50VPF6782AASB,
  329.  *  [TOSHIBA]TH50VPF6783AASB,
  330.  *  [TOSHIBA]TV00578002AABD,
  331.  *  [TOSHIBA]TV00578003AABD,
  332.  *  [Fujitsu]MB84VP24581HK,
  333.  *  [INTEL]INTEL_28F640W30_B,
  334.  *  [SPANSION]AM49PDL127BH,
  335.  *  [SPANSION]AM49PDL129BH,
  336.  *  [RENESAS]M6MGD13BW66CDG,
  337.  *  [Winbond]W19B322TM,
  338.  *  [Winbond]W19B323TM,
  339.  *  3. [DA][New] Readback check after WORD program is done, so that DA won't have to keep the chksum.
  340.  *  4. [DA][New] Auto-detect baseband chip type.
  341.  *  5. [DA][New] Auto-detect external SRAM size.
  342.  *  6. [DA][New] Merge MT6205B, MT6218B and MT6219 to an all-in-one DA.
  343.  *  7. [DA][New] Merge flash stress test module.
  344.  *  8. [DA][New] Modify makefile to build ARM or THUMB code.
  345.  *  9. [DA][New] Construct a customization kit for customers to add new flash or SOC checking algorithm by themselves.
  346.  * 10. [DA][Enhance] Split out AM29PDL128G function to improve the performance of general AMD callback functions.
  347.  * 11. [DA][Enhance] Enhance RX_BUFF_FULL behavior to prevent always retry two times.
  348.  * Resolution for 83: [BROM_DLL v2.4.1002] Merge all the DAs into all-in-one DA and fix many bugs and enhancement.
  349.  * 
  350.  *    Rev 1.15   Jul 19 2004 01:39:34   mtk00539
  351.  *  1. [DA][New] New flash table structure to support AMD and Intel family flash.
  352.  *  2. [DA][New] New flash ID detection method to tell from single stack flash and daul stack flash with the same id.
  353.  *  3. [DA][BUG FIX] Fix MB84VD23280FA id detection error.
  354.  *  4. [DA][BUG FIX] Fix baudrate 921600 download fail under 13MHz external clock, shift SAMPLE_POINT to 0x01 under 13MHz.
  355.  * Resolution for 81: [BROM_DLL v2.4.1001] Support Intel flash and fix many bugs.
  356.  * 
  357.  *    Rev 1.14   Jun 16 2004 16:30:08   mtk00539
  358.  * 1. [DA][New] Replace two expired Toshiba flash with AMD AM29DL322GT and ST M29DW640D in flash device table.
  359.  * 2. [DA][Enhance] Check MEM_BLOCK range to prevent it exceeds that flash size.
  360.  * Resolution for 77: [BROM_DLL v2.3.1007][New] Support AMD AM29DL322GT and ST M29DW640D flash.
  361.  * 
  362.  *    Rev 1.13   May 14 2004 16:59:22   mtk00539
  363.  * 1. [DA][New] add DA auto selection mechanism, append custom_name at the end of DA.
  364.  * 2. [DA][New] add FAT auto format mechanism, report flash manufacture id and device code to PC side.
  365.  * Resolution for 67: [BootRom v2.3.1001][New] add FAT auto format, DA auto selection mechanism and bug fix.
  366.  * 
  367.  *    Rev 1.12   Mar 02 2004 00:14:42   mtk00539
  368.  * 1. [DA][Enhance] re-assign DA command id.
  369.  * 2. [DA][Enhance] add DSP firmware version command.
  370.  * 3. [DA][BUG FIX] fix unsigned var in while loop that causes infinite loop.
  371.  * Resolution for 53: [BootRom v2.2.1007][Enhance] resource layout error detection.
  372.  * 
  373.  *    Rev 1.11   Feb 05 2004 14:13:52   mtk00539
  374.  * supposupport multiple concatanated bin files download.
  375.  * Resolution for 46: [BootRom v2.2.1001][New] support multiple concatanated bin files download.
  376.  * 
  377.  *    Rev 1.10   Feb 04 2004 10:04:36   mtk00539
  378.  * support AMD AM50DL128CG flash
  379.  * Resolution for 45: [BootRom v2.1.1011][New] support AMD AM50DL128CG flash.
  380.  * 
  381.  *    Rev 1.9   Jan 13 2004 10:14:54   mtk00539
  382.  * [DA][New] support Fujitsu MB84VP24491HK-70 flash.
  383.  * Resolution for 43: [BootRom v2.1.1010][New] support Fujitsu MB84VP24491HK-70 flash
  384.  * 
  385.  *    Rev 1.8   Dec 12 2003 14:31:34   mtk00539
  386.  * support Fujitsu MB84VD22280FE flash by Chicago's request.
  387.  * Resolution for 40: [BootRom v2.1.1007][New] support Fujitsu MB84VD22280FE flash and etc.
  388.  * 
  389.  *    Rev 1.7   Nov 12 2003 14:14:44   mtk00539
  390.  * Add SOC feature
  391.  * Resolution for 35: [BootRom v2.1.1005][New] Add SOC feature.
  392.  * 
  393.  *    Rev 1.6   Oct 01 2003 23:34:06   mtk00539
  394.  * Add packet length in DA_WRITE_CMD and DA_READ_CMD.
  395.  * Resolution for 28: [BootRom v2.1.1001][New] See the reasons below.
  396.  * 
  397.  *    Rev 1.5   Sep 25 2003 13:57:52   mtk00539
  398.  * brom.dll v2.1.1001, please see SCR(28) for more details.
  399.  * Resolution for 28: [BootRom v2.1.1001][New] See the reasons below.
  400.  * 
  401.  *    Rev 1.4   Jun 30 2003 19:30:26   mtk00539
  402.  *  1. [brom.dll][BUG FIXED] Fix DA_MEM_CMD end_addr bug, FlashTool should use (begin_addr+length-1) as end_addr.
  403.  *  2. [brom.dll][Add Features] Split flashtool function into brom.dll
  404.  *  3. [brom.dll][Add Features] Add a fake MT6208 bootrom for FlashTool for Pluto version.
  405.  *  4. [DA][Add Features] Check format range.
  406.  *  5. [DA][Add Features] Report format percentage.
  407.  *  6. [DA][Add Features] Support 6208 EVB/CEVB for double flash devices access.
  408.  *  7. [DA][BUG FIXED] Fix DA pre-format sector bug, it shouldn't format beyond the max size of flash.
  409.  *  8. [DA][BUG FIXED] Fix DA FlashTool MEM_CMD end_addr bug, FlashTool should use (begin_addr+length-1) as end_addr.
  410.  *  9. [DA][BUG FIXED] Fix DA AM29DL640D, MB84VD23280FA and TC58FVB64 flash table error.
  411.  * Resolution for 12: [BootRom v2.2.1001][New Version] Split flashtool function into brom.dll
  412.  * 
  413.  *    Rev 1.3   Jun 11 2003 21:32:46   mtk00539
  414.  * 1. Modify BootRom library to support MT6218
  415.  * 2. Modify DA to support AM29PDL128G flash
  416.  * Resolution for 9: [FlashTool v2.2.1005][Add Feature] Support MT6218 and new flash AM29PDL128G
  417.  * 
  418.  *    Rev 1.2   Jun 09 2003 11:47:56   mtk00539
  419.  * Reason:
  420.  * 1. If we use DA_SET_REG_CMD to release power key, there is no chance to wait for ACK from DA, because target is shutdown already.
  421.  * 
  422.  * Solution:
  423.  * 1. Add DA_FINISH_CMD back, DA will release power key after recieve DA_FINISH_CMD
  424.  * 
  425.  * Resolution for 8: [FlashTool v2.2.1004][BUG FIX] Add DA_FINISH_CMD back
  426.  * 
  427.  *    Rev 1.1   Jun 03 2003 22:32:02   mtk00539
  428.  * 1. extend timeout to 10 sec for large image download in boot_2.cpp
  429.  * 2. disable unnecesssary debug hot-key.
  430.  * 3. add shift+ctrl+A for Jensen's DA debug tool kit.
  431.  * 4. enable build number, and start from 1003.
  432.  * 5. save baseband chip type, mcu frequency and auto-memory wait state setup flag to ini file.
  433.  * 6. add DA_SET_REG_CMD command and remove FINISH_CMD, so that release power key could be issued from FlashTool, not hardcoded in DA.
  434.  * 7. add DA_MCU_FREQ_CMD command, so that we don't have to select different DA while switching frequency.
  435.  * 8. add new flash MB84VD23280FA-70 for Chicago project.
  436.  * 9. remove DEVICE_CMD, DA will check flash automatically and report the flash type to PC.
  437.  * 10. add DA_FORMAT_CMD command to support range format.
  438.  * 11. display flash type on FlashTool.
  439.  * 12. merge the DOWNLOAD.H header file, both FlashTool and DA will use the same header file.
  440.  * 13. modify SPEED_CMD handshake by adding a sync mechanism to detect whether if the speed change is done by both sides.
  441.  * Resolution for 7: [FlashTool v2.2.1003][AddFeature] Enhanced for KLM and Chicago project.
  442.  * 
  443.  *    Rev 1.0   May 20 2003 16:38:38   admin
  444.  * Initial revision.
  445.  * 
  446.  *    Rev 1.1   16 May 2002 09:18:16   mtk00361
  447.  * 0515 updated
  448.  * 
  449.  *    Rev 1.0   Apr 03 2002 22:38:50   mtk00288
  450.  * Initial revision.
  451.  *
  452.  *******************************************************************************/
  453. #ifndef _DOWNLOAD_H_
  454. #define _DOWNLOAD_H_
  455. #include "mtk_status.h"
  456. /* DA Version */
  457. #define DA_MAJOR_VER 0x03
  458. #define DA_MINOR_VER 0x02
  459. /* Max Number of Load Sections */
  460. #define MAX_LOAD_SECTIONS 10
  461. // Max Die Number of MCP 
  462. #define MAX_DIE_IN_MCP 2
  463. /* RETURN VALUE */
  464. #define SOC_OK 0xC1
  465. #define SOC_FAIL 0xCF
  466. #define SYNC_CHAR 0xc0
  467. #define CONT_CHAR 0x69
  468. #define STOP_CHAR 0x96
  469. #define ACK 0x5a
  470. #define NACK 0xa5
  471. #define UNKNOWN_CMD 0xbb
  472. /* COMMANDS */
  473. #define DA_POST_PROCESS 0xD1
  474. #define DA_SPEED_CMD 0xD2
  475. #define DA_MEM_CMD 0xD3
  476. #define DA_FORMAT_CMD 0xD4
  477. #define DA_WRITE_CMD 0xD5
  478. #define DA_READ_CMD 0xD6
  479. #define DA_WRITE_REG16_CMD 0xD7
  480. #define DA_READ_REG16_CMD 0xD8
  481. #define DA_FINISH_CMD 0xD9
  482. #define DA_GET_DSP_VER_CMD 0xDA
  483. #define DA_ENABLE_WATCHDOG_CMD 0xDB
  484. #define DA_NFB_WRITE_BLOADER_CMD 0xDC
  485. #define DA_NAND_IMAGE_LIST_CMD 0xDD
  486. #define DA_NFB_WRITE_IMAGE_CMD 0xDE
  487. #define DA_NAND_READPAGE_CMD 0xDF
  488. #define DA_CHK_PC_SEC_INFO_CMD 0xE0
  489. #define DA_UPDATE_FLASHTOOL_CFG_CMD 0xE1
  490. #define DA_CUST_PARA_GET_INFO_CMD 0xE2
  491. #define DA_CUST_PARA_READ_CMD 0xE3
  492. #define DA_CUST_PARA_WRITE_CMD 0xE4
  493. #define DA_SEC_RO_GET_INFO_CMD 0xE5
  494. #define DA_SEC_RO_READ_CMD 0xE6
  495. #define DA_SEC_RO_WRITE_CMD 0xE7
  496. #define DA_ENABLE_DRAM 0xE8
  497. #define DA_OTP_CHECKDEVICE_CMD 0xE9
  498. #define DA_OTP_GETSIZE_CMD 0xEA
  499. #define DA_OTP_READ_CMD 0xEB
  500. #define DA_OTP_PROGRAM_CMD 0xEC
  501. #define DA_OTP_LOCK_CMD 0xED
  502. #define DA_OTP_LOCK_CHECKSTATUS_CMD 0xEE
  503. #define DA_GET_PROJECT_ID_CMD 0xEF
  504. #define DA_GET_FAT_INFO_CMD 0xF0
  505. #define DA_FDM_MOUNTDEVICE_CMD 0xF1
  506. #define DA_FDM_SHUTDOWN_CMD 0xF2
  507. #define DA_FDM_READSECTORS_CMD 0xF3
  508. #define DA_FDM_WRITESECTORS_CMD 0xF4
  509. #define DA_FDM_MEDIACHANGED_CMD 0xF5
  510. #define DA_FDM_DISCARDSECTORS_CMD 0xF6
  511. #define DA_FDM_GETDISKGEOMETRY_CMD 0xF7
  512. #define DA_FDM_LOWLEVELFORMAT_CMD 0xF8
  513. #define DA_FDM_NONBLOCKWRITESECTORS_CMD 0xF9
  514. #define DA_FDM_RECOVERABLEWRITESECTORS_CMD 0xFA
  515. #define DA_FDM_RESUMESECTORSTATES 0xFB
  516. #define DA_NAND_EXTRACT_NFB_CMD 0xFC
  517. #define DA_NAND_INJECT_NFB_CMD 0xFD
  518. #define DA_MEMORY_TEST_CMD 0xFE
  519. #define DA_ENTER_RELAY_MODE_CMD 0xFF
  520. /* SPEED_PARA */
  521. typedef enum {
  522. UART_BAUD_921600 = 0x01,
  523. UART_BAUD_460800 = 0x02,
  524. UART_BAUD_230400 = 0x03,
  525. UART_BAUD_115200 = 0x04,
  526. UART_BAUD_57600 = 0x05,
  527. UART_BAUD_38400 = 0x06,
  528. UART_BAUD_19200 = 0x07,
  529. UART_BAUD_9600 = 0x08,
  530. UART_BAUD_4800 = 0x09,
  531. UART_BAUD_2400 = 0x0a,
  532. UART_BAUD_1200 = 0x0b,
  533. UART_BAUD_300 = 0x0c,
  534. UART_BAUD_110 = 0x0d
  535. }UART_BAUDRATE;
  536. typedef enum {
  537.  CS0 = 0
  538. ,CS1
  539. ,CS2
  540. ,CS3
  541. ,CS4
  542. ,CS5
  543. ,CS6
  544. ,CS7
  545. ,CS_WITH_DECODER
  546. ,MAX_CS = CS_WITH_DECODER
  547. ,HW_CHIP_SELECT_END
  548. } HW_ChipSelect_E;
  549. typedef enum {
  550.  HW_STORAGE_NOR = 0
  551. ,HW_STORAGE_NAND
  552. ,HW_STORAGE_TYPE_END
  553. } HW_StorageType_E;
  554. typedef enum {
  555.  HW_RAM_UNKNOWN = 0
  556. ,HW_RAM_SRAM
  557. ,HW_RAM_DRAM
  558. ,HW_RAM_TYPE_END
  559. } HW_RAMType_E;
  560. typedef enum {
  561.  HW_MEM_NOR = 0 // NOR Flash
  562.     ,HW_MEM_NAND // NAND Flash
  563. ,HW_MEM_EXT_SRAM // External SRAM
  564. ,HW_MEM_EXT_DRAM // External DRAM
  565. ,HW_MEM_TYPE_END
  566. } HW_MemoryType_E;
  567. typedef enum {
  568.  HW_MEM_IO_8BIT = 0 //  8-Bits Memory I/O
  569. ,HW_MEM_IO_16BIT // 16-Bits Memory I/O
  570. ,HW_MEM_IO_32BIT // 32-Bits Memory I/O
  571. ,HW_MEM_IO_TYPE_END
  572. } HW_MemoryIO_E;
  573. typedef enum {
  574.  HW_MEM_DUMP = 0 // Memory Dump (Warning: it's not a test scenario!)
  575. ,HW_MEM_PATTERN_TEST // Pattern Test Scenario
  576. ,HW_MEM_INC_DEC_TEST // Increment/Decrement Test Scenario
  577. ,HW_MEM_ADDR_BUS_TEST // EMI Address Bus Test Scenario
  578. ,HW_MEM_DATA_BUS_TEST // EMI Data Bus Test Scenario
  579. ,HW_MEM_IO_BUS_TEST // NFI I/O Bus Test Scenario 
  580. ,HW_MEM_TEST_TYPE_END
  581. } HW_MemoryTestMethod_E;
  582. typedef enum {
  583.  NUTL_READ_PAGE_SPARE = 0
  584. ,NUTL_READ_PAGE_ONLY
  585. ,NUTL_READ_SPARE_ONLY
  586. ,NUTL_READ_PAGE_WITH_ECC
  587. ,NUTL_VERIFY_AFTER_PROGRAM
  588. ,NUTL_READ_FLAG_END
  589. } NUTL_ReadFlag_E;
  590. typedef enum {
  591.  NUTL_ERASE = 0
  592. ,NUTL_FORCE_ERASE
  593. ,NUTL_MARK_BAD_BLOCK
  594. ,NUTL_ERASE_FLAG_END
  595. } NUTL_EraseFlag_E;
  596. typedef enum {
  597.  NUTL_PROGRAM_PAGE_SPARE = 0
  598. ,NUTL_PROGRAM_PAGE_ONLY
  599. ,NUTL_PROGRAM_SPARE_ONLY
  600. ,NUTL_PROGRAM_FLAG_END
  601. } NUTL_ProgramFlag_E;
  602. //----------------------------------------
  603. // NOR Flash Callback Function group id
  604. typedef enum {
  605.  ID_DUMMY_CMD = 0
  606. ,ID_AMD_CMD_CB_UNLOCK_BYPASS_PGM
  607. ,ID_AMD_CMD_CB_MIRRORBIT_BUF_PGM
  608. ,ID_AMD_CMD_CB_S29WS_MIRRORBIT_BUF_PGM
  609. ,ID_AMD_CMD_CB_S29N_MIRRORBIT_BUF_PGM
  610. ,ID_AMD_CMD_CB_S29GL_MIRRORBIT_BUF_PGM
  611. ,ID_AMD_CMD_CB_WORD_PGM
  612. ,ID_AMD_AM29PDL128G_CMD_CB_UNLOCK_BYPASS_PGM
  613. ,ID_TOSHIBA_CMD_CB_BUF_PGM
  614. ,ID_INTEL_CMD_CB_WORD_PGM
  615. ,ID_INTEL_CMD_CB_32WORD_BUF_PGM
  616. ,ID_INTEL_CMD_CB_SIBLEY_BUF_PGM
  617. ,ID_RENESAS_CMD_CB_WORD_PGM_64Mb
  618. ,ID_RENESAS_CMD_CB_128WORD_PAGE_PGM_64Mb
  619. ,ID_RENESAS_CMD_CB_WORD_PGM
  620. ,ID_RENESAS_CMD_CB_128WORD_PAGE_PGM
  621. ,ID_SHARP_CMD_CB_WORD_PGM
  622. ,ID_SHARP_CMD_CB_16WORD_BUF_PGM
  623. ,ID_SHARP_CMD_CB_WORD_PGM_NO_UNLOCK
  624. ,ID_SST_CMD_CB_WORD_PGM
  625. ,ID_NOR_CALLBACK_UNKNOWN = 0xFFFF
  626. } NOR_CMD_Callback_ID_E;
  627. // NAND Flash Callback Function group id
  628. typedef enum {
  629.  ID_COMMON_CB_FUNC_SET = 0
  630. ,ID_COMMON_CB_FUNC_SET_WITHOUT_COPYBACK
  631. ,ID_ST_CB_FUNC_SET
  632. ,ID_ST_CB_FUNC_SET_WITHOUT_COPYBACK
  633. ,ID_superAND_CB_FUNC_SET
  634. ,ID_NAND_CALLBACK_UNKNOWN = 0xFFFF
  635. } NAND_CMD_Callback_ID_E;
  636. //----------------------------------------
  637. // NOR flash device id 
  638. typedef enum {
  639.  NOR_AM29DL323D = 0
  640. ,NOR_AM29DL640D
  641. ,NOR_ST_M29DW640D
  642. ,NOR_AM29DL322GT
  643. ,NOR_MB84VD23280FA
  644. ,NOR_AM29PDL128G
  645. ,NOR_MB84VD22280FE
  646. ,NOR_MB84VP24491HK
  647. ,NOR_AM50DL128CG
  648. ,NOR_AM49DL3208GB
  649. ,NOR_ST_M74DW66500B
  650. ,NOR_INTEL_28F128L30_B
  651. ,NOR_K5A3280YT
  652. ,NOR_TH50VPF6782AASB
  653. ,NOR_TH50VPF6783AASB
  654. ,NOR_TV00578002AABD
  655. ,NOR_TV00578003AABD
  656. ,NOR_MB84VP24581HK
  657. ,NOR_INTEL_28F640W30_B
  658. ,NOR_AM49PDL127BH
  659. ,NOR_AM49PDL129BH
  660. ,NOR_M6MGD13BW66CDG
  661. ,NOR_W19B322TM
  662. ,NOR_W19B323TM
  663. ,NOR_KAD060300B
  664. ,NOR_K5J6316CTM
  665. ,NOR_TH50VPF5682CDSB
  666. ,NOR_TH50VPF5683CDSB
  667. ,NOR_IS75V16F128GS32
  668. ,NOR_M6MGT64BM34CDG
  669. ,NOR_ST_M30L0T7000T0
  670. ,NOR_ST_M30L0T7000B0
  671. ,NOR_SHARP_LRS1862
  672. ,NOR_SHARP_LRS1806A
  673. ,NOR_AM49DL3208GT
  674. ,NOR_S29PL032J
  675. ,NOR_SHARP_LRS1828C
  676. ,NOR_M6MGB64BM34CDG
  677. ,NOR_SHARP_LRS18B0
  678. ,NOR_SHARP_LRS1863
  679. ,NOR_S71AL016D_T
  680. ,NOR_S71AL016D_B
  681. ,NOR_SHARP_LRS18C8A
  682. ,NOR_INTEL_28F640L18_T
  683. ,NOR_INTEL_28F128L18_T
  684. ,NOR_INTEL_28F256L18_T
  685. ,NOR_INTEL_28F640L18_B
  686. ,NOR_INTEL_28F128L18_B
  687. ,NOR_INTEL_28F256L18_B
  688. ,NOR_INTEL_28F640L30_T
  689. ,NOR_INTEL_28F128L30_T
  690. ,NOR_INTEL_28F256L30_T
  691. ,NOR_INTEL_28F640L30_B
  692. ,NOR_INTEL_28F256L30_B
  693. ,NOR_INTEL_28F320W30_T
  694. ,NOR_INTEL_28F320W30_B
  695. ,NOR_INTEL_28F640W30_T
  696. ,NOR_INTEL_28F128W30_T
  697. ,NOR_INTEL_28F128W30_B
  698. ,NOR_INTEL_28F320W18_T
  699. ,NOR_INTEL_28F320W18_B
  700. ,NOR_INTEL_28F640W18_T
  701. ,NOR_INTEL_28F640W18_B
  702. ,NOR_INTEL_28F128W18_T
  703. ,NOR_INTEL_28F128W18_B
  704. ,NOR_M6MGD15BM34CDG
  705. ,NOR_S71PL254J
  706. ,NOR_TV0057A002AABD
  707. ,NOR_TV0057A003AABD
  708. ,NOR_W19B320ATB
  709. ,NOR_W19B320ATT
  710. ,NOR_S7_SV7E160XT
  711. ,NOR_S7_SV7E160XB
  712. ,NOR_S7_SV7E320XT
  713. ,NOR_S7_SV7E320XB
  714. ,NOR_S71GL032R3_T
  715. ,NOR_S71GL032R4_B
  716. ,NOR_S71GL032R1R2
  717. ,NOR_TV00569002BABD
  718. ,NOR_TV00569003BABD
  719. ,NOR_TV00569002AABD
  720. ,NOR_TV00569003AABD
  721. ,NOR_INTEL_38F1010C0ZBL0
  722. ,NOR_INTEL_28F1602C3BD70
  723. ,NOR_TY0068B012APGG
  724. ,NOR_TY0068B013APGG
  725. ,NOR_S71PL127N
  726. ,NOR_S7_SV6D2832UTA
  727. ,NOR_S7_SV6D2832UBA
  728. ,NOR_S7_SV6C2832UTA
  729. ,NOR_S7_SV6C2832UBA
  730. ,NOR_SHARP_LH28F16
  731. ,NOR_TV00578002DABD
  732. ,NOR_TV00578003DABD
  733. ,NOR_S71PL256N
  734. ,NOR_S71PL129N
  735. ,NOR_INTEL_PF48F50xxM0x0xx
  736. ,NOR_INTEL_PF48F50xxM0x1xx
  737. ,NOR_INTEL_PF48F40xxM0x0xx
  738. ,NOR_INTEL_PF48F40xxM0x1xx
  739. ,NOR_SST34HF16x1    // 1=Bottom
  740. ,NOR_SST34HF32x4    // 4=Top
  741. ,NOR_SHARP_LRS18BK
  742. ,NOR_INTEL_28F3204C3TD70
  743. ,NOR_S29WS128N
  744. ,NOR_ST_M58PPR256J
  745. ,NOR_ST_M58PPR512J
  746. ,NOR_SST32HF3241C
  747. ,NOR_S29WS512P
  748. ,NOR_S29NS064N
  749. ,NOR_S29NS128N
  750. ,NOR_S29NS256N
  751. ,NOR_S29WS256N
  752. ,NOR_S29GL128N_T
  753. ,NOR_S29GL128N_B
  754. ,NOR_S29GL256N_T
  755. ,NOR_S29GL256N_B
  756. ,NOR_S29GL512N_T
  757. ,NOR_S29GL512N_B
  758. ,NOR_K5L2731CAM
  759. ,NOR_K5L2931CAM
  760. ,NOR_S71PL127J
  761. ,NOR_TY00689002APGN
  762. ,NOR_S29GL064A_T
  763. ,NOR_S29GL064A_B
  764.     ,NOR_S29WS128P
  765.     ,NOR_S29WS256P
  766.     ,NOR_TV00560002DDGB
  767. ,NOR_ST_M58WR016QT
  768. ,NOR_ST_M58WR016QB
  769.     ,NOR_ST_M58WR032QT
  770.     ,NOR_ST_M58WR032QB
  771. ,NOR_INTEL_PF38F60xxM0x0xx
  772. ,NOR_INTEL_PF38F60xxM0x1xx
  773. ,NOR_S29NS016J
  774. ,NOR_S29NS032J
  775. ,NOR_S29NS064J
  776. ,NOR_S29NS128J
  777. ,NOR_ST_M58WR064HU
  778. ,NOR_ST_M58WR064HL
  779.     ,NOR_TV00560002EDGB
  780.     ,NOR_TV00560003EDGB
  781.     ,NOR_INTEL_PF38F30xxM0x0xx
  782.     ,NOR_INTEL_PF38F30xxM0x1xx
  783.     ,NOR_SHARP_LRS18CK
  784.     ,NOR_TY00670002APGN
  785.     ,NOR_A82DL3228T
  786.     ,NOR_A82DL3228U
  787.     ,NOR_A82DL3238T
  788.     ,NOR_A82DL3238U
  789.     ,NOR_A82DL3248T
  790.     ,NOR_A82DL3248U
  791.     ,NOR_K5L6331CAA
  792.     ,NOR_KAL5563CAM
  793.     ,NOR_EON_EN29PL032
  794.     ,NOR_EON_EN29PL064
  795.     ,NOR_SHARP_LRS18D5_D7
  796.     ,NOR_SHARP_LRS18A7A
  797. ,NOR_LAST
  798. ,NOR_UNKNOWN = 0xFFFF // Unknown Device 
  799. } NOR_DeviceID_E;
  800. // NAND flash device id 
  801. typedef enum {
  802.  NAND_K9F5608Q0C = 0
  803. ,NAND_K9F5608X0C
  804. ,NAND_K9F5616Q0C
  805. ,NAND_K9F5616X0C
  806. ,NAND_K9K1208X0C
  807. ,NAND_K9K1G08X0A
  808. ,NAND_K9F1G08Q0M
  809. ,NAND_K9F1G08X0M
  810. ,NAND_K9F1G16Q0M
  811. ,NAND_K9F1G16X0M
  812. ,NAND_K9F2G08X0M
  813. ,NAND_K9F2G16X0M
  814. ,NAND_K9K4G08Q0M
  815. ,NAND_K9K4G08U0M
  816. ,NAND_K9K4G16Q0M
  817. ,NAND_K9K4G16U0M
  818. ,NAND_TC58DVM82A1FT
  819. ,NAND_TC58DVM92A1FT
  820. ,NAND_TC58DVG02A1FT
  821. ,NAND_TC58NVG0S3AFT
  822. ,NAND_TH58NVG1S3AFT
  823. ,NAND_HY27XS08561M
  824. ,NAND_HY27XS08121M
  825. ,NAND_HY27XA081G1M
  826. ,NAND_HY27XA161G1M
  827. ,NAND_ST128W3A
  828. ,NAND_ST128W4A
  829. ,NAND_ST256W3A
  830. ,NAND_ST256W4A
  831. ,NAND_ST512W3A
  832. ,NAND_ST512W4A
  833. ,NAND_ST01GW3A
  834. ,NAND_ST01GW4A
  835. ,NAND_ST512R3B
  836. ,NAND_ST512W3B
  837. ,NAND_ST512R4B
  838. ,NAND_ST512W4B
  839. ,NAND_ST01GR3B
  840. ,NAND_ST01GW3B
  841. ,NAND_ST01GR4B
  842. ,NAND_ST01GW4B
  843. ,NAND_ST02GR3B
  844. ,NAND_ST02GW3B
  845. ,NAND_ST02GR4B
  846. ,NAND_ST02GW4B
  847. ,NAND_ST04GR3B
  848. ,NAND_ST04GW3B
  849. ,NAND_ST04GR4B
  850. ,NAND_ST04GW4B
  851. ,NAND_ST08GR3B
  852. ,NAND_ST08GW3B
  853. ,NAND_ST08GR4B
  854. ,NAND_ST08GW4B
  855. ,NAND_K9F2808U0C
  856. ,NAND_K9K8G08U0M
  857. ,NAND_TH58NVG2D4BFT
  858. ,NAND_HY27UF081G2M
  859. ,NAND_TH58NVG1S8BFT
  860. ,NAND_MT29F2G08AAC
  861. ,NAND_MT29F4G08BAB
  862. ,NAND_SUPERAND51208
  863. ,NAND_SUPERAND51216
  864. ,NAND_HYF33DS51280
  865. ,NAND_HYF33DS1G80
  866. ,NAND_HYF33DS1G16
  867. ,NAND_TC58NWM9S3B
  868. ,NAND_HY27UF082G2M
  869. ,NAND_M6MGA157F2LCWG08
  870. ,NAND_M6MGA157F2LCWG16
  871. ,NAND_LAST
  872. ,NAND_UNKNOWN = 0xFFFF // Unknown Device 
  873. } NAND_DeviceID_E;
  874. #endif