nand_ids.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:4k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /*
  2.  *  linux/include/linux/mtd/nand_ids.h
  3.  *
  4.  *  Copyright (c) 2000 David Woodhouse <dwmw2@mvhi.com>
  5.  *                     Steven J. Hill <sjhill@cotw.com>
  6.  *
  7.  * $Id: nand_ids.h,v 1.1 2000/10/13 16:16:26 mdeans Exp $
  8.  *
  9.  * This program is free software; you can redistribute it and/or modify
  10.  * it under the terms of the GNU General Public License version 2 as
  11.  * published by the Free Software Foundation.
  12.  *
  13.  *  Info:
  14.  *   Contains standard defines and IDs for NAND flash devices
  15.  *
  16.  *  Changelog:
  17.  *   01-31-2000 DMW     Created
  18.  *   09-18-2000 SJH     Moved structure out of the Disk-On-Chip drivers
  19.  * so it can be used by other NAND flash device
  20.  * drivers. I also changed the copyright since none
  21.  * of the original contents of this file are specific
  22.  * to DoC devices. David can whack me with a baseball
  23.  * bat later if I did something naughty.
  24.  *   10-11-2000 SJH     Added private NAND flash structure for driver
  25.  *   2000-10-13 BE      Moved out of 'nand.h' - avoids duplication.
  26.  */
  27. #ifndef __LINUX_MTD_NAND_IDS_H
  28. #define __LINUX_MTD_NAND_IDS_H
  29. static struct nand_flash_dev nand_flash_ids[] = {
  30. {"Toshiba TC5816BDC",     NAND_MFR_TOSHIBA, 0x64, 21, 1, 2, 0x1000}, // 2Mb 5V
  31. {"Toshiba TC58V16BDC",    NAND_MFR_TOSHIBA, 0xea, 21, 1, 2, 0x1000}, // 2Mb 3.3V
  32. {"Toshiba TC5832DC",      NAND_MFR_TOSHIBA, 0x6b, 22, 0, 2, 0x2000}, // 4Mb 5V
  33. {"Toshiba TC58V32DC",     NAND_MFR_TOSHIBA, 0xe5, 22, 0, 2, 0x2000}, // 4Mb 3.3V
  34. {"Toshiba TC58V64AFT/DC", NAND_MFR_TOSHIBA, 0xe6, 23, 0, 2, 0x2000}, // 8Mb 3.3V
  35. {"Toshiba TH58V128DC",    NAND_MFR_TOSHIBA, 0x73, 24, 0, 2, 0x4000}, // 16Mb
  36. {"Toshiba TC58256FT/DC",  NAND_MFR_TOSHIBA, 0x75, 25, 0, 2, 0x4000}, // 32Mb
  37. {"Toshiba TH58512FT",     NAND_MFR_TOSHIBA, 0x76, 26, 0, 3, 0x4000}, // 64Mb
  38. {"Toshiba TH58NS100/DC",  NAND_MFR_TOSHIBA, 0x79, 27, 0, 3, 0x4000}, // 128Mb
  39. {"Samsung KM29N16000",    NAND_MFR_SAMSUNG, 0x64, 21, 1, 2, 0x1000}, // 2Mb 5V
  40. {"Samsung KM29W16000",    NAND_MFR_SAMSUNG, 0xea, 21, 1, 2, 0x1000}, // 2Mb 3.3V
  41. {"Samsung unknown 4Mb",   NAND_MFR_SAMSUNG, 0x6b, 22, 0, 2, 0x2000}, // 4Mb 5V
  42. {"Samsung KM29W32000",    NAND_MFR_SAMSUNG, 0xe3, 22, 0, 2, 0x2000}, // 4Mb 3.3V
  43. {"Samsung unknown 4Mb",   NAND_MFR_SAMSUNG, 0xe5, 22, 0, 2, 0x2000}, // 4Mb 3.3V
  44. {"Samsung KM29U64000",    NAND_MFR_SAMSUNG, 0xe6, 23, 0, 2, 0x2000}, // 8Mb 3.3V
  45. {"Samsung KM29U128T",     NAND_MFR_SAMSUNG, 0x73, 24, 0, 2, 0x4000}, // 16Mb
  46. {"Samsung KM29U256T",     NAND_MFR_SAMSUNG, 0x75, 25, 0, 2, 0x4000}, // 32Mb
  47. {"Samsung K9D1208V0M",    NAND_MFR_SAMSUNG, 0x76, 26, 0, 3, 0x4000}, // 64Mb
  48. {"Samsung K9D1G08V0M",    NAND_MFR_SAMSUNG, 0x79, 27, 0, 3, 0x4000}, // 128Mb
  49. {NULL,}
  50. };
  51. #if defined(CONFIG_MTD_SMC) || defined(CONFIG_MTD_SMC_MODULE)
  52. static struct nand_smc_dev nand_smc_info[8] = {
  53. /*  CpV, HpC, SpH,   allS, szS, PBpV, LBpV, SpB, PpB, szP */
  54.   { 125,   4,   4,   2000, 512,  256,  250,   8,  16, 256},    /* DI_1M */
  55.   { 125,   4,   8,   4000, 512,  512,  500,   8,  16, 256},    /* DI_2M */
  56.   { 250,   4,   8,   8000, 512,  512,  500,  16,  16, 512},    /* DI_4M */
  57.   { 250,   4,  16,  16000, 512, 1024, 1000,  16,  16, 512},    /* DI_8M */
  58.   { 500,   4,  16,  32000, 512, 1024, 1000,  32,  32, 512},    /* DI_16M */
  59.   { 500,   8,  16,  64000, 512, 2048, 2000,  32,  32, 512},    /* DI_32M */
  60.   { 500,   8,  32, 128000, 512, 4096, 4000,  32,  32, 512},    /* DI_64M */
  61.   { 500,  16,  32, 256000, 512, 8192, 8000,  32,  32, 512}     /* DI_128M */
  62. };
  63. #define DI_1M                  0
  64. #define DI_2M                  1
  65. #define DI_4M                  2
  66. #define DI_8M                  3
  67. #define DI_16M                 4
  68. #define DI_32M                 5
  69. #define DI_64M                 6
  70. #define DI_128M                7
  71. #define MAX_DI_NUM             8
  72. #define GET_DI_NUM(x)          ((x) - 20)
  73. #endif
  74. #endif /* __LINUX_MTD_NAND_IDS_H */