|
|
|
@ -22,11 +22,7 @@ |
|
|
|
|
#if (CONFIG_COMMANDS & CFG_CMD_DOC) |
|
|
|
|
|
|
|
|
|
#include <linux/mtd/nftl.h> |
|
|
|
|
#include <linux/mtd/nand_legacy.h> |
|
|
|
|
#include <linux/mtd/nand_ids.h> |
|
|
|
|
|
|
|
|
|
#include <linux/mtd/doc2000.h> |
|
|
|
|
#include <linux/mtd/nftl.h> |
|
|
|
|
|
|
|
|
|
#ifdef CFG_DOC_SUPPORT_2000 |
|
|
|
|
#define DoC_is_2000(doc) (doc->ChipID == DOC_ChipID_Doc2k) |
|
|
|
@ -69,6 +65,32 @@ static struct DiskOnChip doc_dev_desc[CFG_MAX_DOC_DEVICE]; |
|
|
|
|
/* Current DOC Device */ |
|
|
|
|
static int curr_device = -1; |
|
|
|
|
|
|
|
|
|
/* Supported NAND flash devices */ |
|
|
|
|
static struct nand_flash_dev nand_flash_ids[] = { |
|
|
|
|
{"Toshiba TC5816BDC", NAND_MFR_TOSHIBA, 0x64, 21, 1, 2, 0x1000, 0}, |
|
|
|
|
{"Toshiba TC5832DC", NAND_MFR_TOSHIBA, 0x6b, 22, 0, 2, 0x2000, 0}, |
|
|
|
|
{"Toshiba TH58V128DC", NAND_MFR_TOSHIBA, 0x73, 24, 0, 2, 0x4000, 0}, |
|
|
|
|
{"Toshiba TC58256FT/DC", NAND_MFR_TOSHIBA, 0x75, 25, 0, 2, 0x4000, 0}, |
|
|
|
|
{"Toshiba TH58512FT", NAND_MFR_TOSHIBA, 0x76, 26, 0, 3, 0x4000, 0}, |
|
|
|
|
{"Toshiba TC58V32DC", NAND_MFR_TOSHIBA, 0xe5, 22, 0, 2, 0x2000, 0}, |
|
|
|
|
{"Toshiba TC58V64AFT/DC", NAND_MFR_TOSHIBA, 0xe6, 23, 0, 2, 0x2000, 0}, |
|
|
|
|
{"Toshiba TC58V16BDC", NAND_MFR_TOSHIBA, 0xea, 21, 1, 2, 0x1000, 0}, |
|
|
|
|
{"Toshiba TH58100FT", NAND_MFR_TOSHIBA, 0x79, 27, 0, 3, 0x4000, 0}, |
|
|
|
|
{"Samsung KM29N16000", NAND_MFR_SAMSUNG, 0x64, 21, 1, 2, 0x1000, 0}, |
|
|
|
|
{"Samsung unknown 4Mb", NAND_MFR_SAMSUNG, 0x6b, 22, 0, 2, 0x2000, 0}, |
|
|
|
|
{"Samsung KM29U128T", NAND_MFR_SAMSUNG, 0x73, 24, 0, 2, 0x4000, 0}, |
|
|
|
|
{"Samsung KM29U256T", NAND_MFR_SAMSUNG, 0x75, 25, 0, 2, 0x4000, 0}, |
|
|
|
|
{"Samsung unknown 64Mb", NAND_MFR_SAMSUNG, 0x76, 26, 0, 3, 0x4000, 0}, |
|
|
|
|
{"Samsung KM29W32000", NAND_MFR_SAMSUNG, 0xe3, 22, 0, 2, 0x2000, 0}, |
|
|
|
|
{"Samsung unknown 4Mb", NAND_MFR_SAMSUNG, 0xe5, 22, 0, 2, 0x2000, 0}, |
|
|
|
|
{"Samsung KM29U64000", NAND_MFR_SAMSUNG, 0xe6, 23, 0, 2, 0x2000, 0}, |
|
|
|
|
{"Samsung KM29W16000", NAND_MFR_SAMSUNG, 0xea, 21, 1, 2, 0x1000, 0}, |
|
|
|
|
{"Samsung K9F5616Q0C", NAND_MFR_SAMSUNG, 0x45, 25, 0, 2, 0x4000, 1}, |
|
|
|
|
{"Samsung K9K1216Q0C", NAND_MFR_SAMSUNG, 0x46, 26, 0, 3, 0x4000, 1}, |
|
|
|
|
{"Samsung K9F1G08U0M", NAND_MFR_SAMSUNG, 0xf1, 27, 0, 2, 0, 0}, |
|
|
|
|
{NULL,} |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
/* ------------------------------------------------------------------------- */ |
|
|
|
|
|
|
|
|
|
int do_doc (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) |
|
|
|
|