developer | ba03b7e | 2022-12-06 14:16:23 +0800 | [diff] [blame^] | 1 | diff -uprN a/drivers/mtd/nand/spi/Kconfig b/drivers/mtd/nand/spi/Kconfig |
| 2 | --- a/drivers/mtd/nand/spi/Kconfig 2022-12-06 11:24:48.877723457 +0800 |
| 3 | +++ b/drivers/mtd/nand/spi/Kconfig 2022-12-06 11:25:14.593951660 +0800 |
| 4 | @@ -7,11 +7,3 @@ menuconfig MTD_SPI_NAND |
| 5 | help |
| 6 | This is the framework for the SPI NAND device drivers. |
| 7 | |
| 8 | -config MTD_SPI_NAND_W25N01KV |
| 9 | - tristate "Winbond W25N01KV Support" |
| 10 | - select MTD_SPI_NAND |
| 11 | - default n |
| 12 | - help |
| 13 | - Winbond W25N01KV share the same ID with W25N01GV. However, they have |
| 14 | - different attributes. |
| 15 | - |
| 16 | diff -uprN a/drivers/mtd/nand/spi/winbond.c b/drivers/mtd/nand/spi/winbond.c |
| 17 | --- a/drivers/mtd/nand/spi/winbond.c 2022-12-06 11:24:48.877723457 +0800 |
| 18 | +++ b/drivers/mtd/nand/spi/winbond.c 2022-12-06 11:25:14.593951660 +0800 |
| 19 | @@ -26,13 +26,11 @@ |
| 20 | #define W25N01_M02GV_STATUS_ECC_1_BITFLIPS (1 << 4) |
| 21 | #define W25N01_M02GV_STATUS_ECC_UNCOR_ERROR (2 << 4) |
| 22 | |
| 23 | -#if IS_ENABLED(CONFIG_MTD_SPI_NAND_W25N01KV) |
| 24 | #define W25N01KV_STATUS_ECC_MASK (3 << 4) |
| 25 | #define W25N01KV_STATUS_ECC_NO_BITFLIPS (0 << 4) |
| 26 | #define W25N01KV_STATUS_ECC_1_3_BITFLIPS (1 << 4) |
| 27 | #define W25N01KV_STATUS_ECC_4_BITFLIPS (3 << 4) |
| 28 | #define W25N01KV_STATUS_ECC_UNCOR_ERROR (2 << 4) |
| 29 | -#endif |
| 30 | |
| 31 | static SPINAND_OP_VARIANTS(read_cache_variants, |
| 32 | SPINAND_PAGE_READ_FROM_CACHE_QUADIO_OP(0, 2, NULL, 0), |
| 33 | @@ -116,7 +114,6 @@ static int w25m02gv_select_target(struct |
| 34 | return spi_mem_exec_op(spinand->spimem, &op); |
| 35 | } |
| 36 | |
| 37 | -#if IS_ENABLED(CONFIG_MTD_SPI_NAND_W25N01KV) |
| 38 | static int w25n01kv_ecc_get_status(struct spinand_device *spinand, |
| 39 | u8 status) |
| 40 | { |
| 41 | @@ -139,7 +136,6 @@ static int w25n01kv_ecc_get_status(struc |
| 42 | |
| 43 | return -EINVAL; |
| 44 | } |
| 45 | -#endif |
| 46 | |
| 47 | static int w25n02kv_n04kv_ecc_get_status(struct spinand_device *spinand, |
| 48 | u8 status) |
| 49 | @@ -181,10 +177,9 @@ static const struct spinand_info winbond |
| 50 | 0, |
| 51 | SPINAND_ECCINFO(&w25m02gv_ooblayout, NULL), |
| 52 | SPINAND_SELECT_TARGET(w25m02gv_select_target)), |
| 53 | -#if IS_ENABLED(CONFIG_MTD_SPI_NAND_W25N01KV) |
| 54 | SPINAND_INFO("W25N01KV", |
| 55 | - SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xaa, 0x21), |
| 56 | - NAND_MEMORG(1, 2048, 96, 64, 1024, 20, 1, 1, 1), |
| 57 | + SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xae, 0x21), |
| 58 | + NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1), |
| 59 | NAND_ECCREQ(4, 512), |
| 60 | SPINAND_INFO_OP_VARIANTS(&read_cache_variants, |
| 61 | &write_cache_variants, |
| 62 | @@ -192,7 +187,6 @@ static const struct spinand_info winbond |
| 63 | 0, |
| 64 | SPINAND_ECCINFO(&w25n02kv_n04kv_ooblayout, |
| 65 | w25n01kv_ecc_get_status)), |
| 66 | -#else |
| 67 | SPINAND_INFO("W25N01GV", |
| 68 | SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xaa, 0x21), |
| 69 | NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1), |
| 70 | @@ -202,7 +196,6 @@ static const struct spinand_info winbond |
| 71 | &update_cache_variants), |
| 72 | 0, |
| 73 | SPINAND_ECCINFO(&w25m02gv_ooblayout, NULL)), |
| 74 | -#endif |
| 75 | SPINAND_INFO("W25N02KV", |
| 76 | SPINAND_ID(SPINAND_READID_METHOD_OPCODE_DUMMY, 0xaa, 0x22), |
| 77 | NAND_MEMORG(1, 2048, 128, 64, 2048, 40, 2, 1, 1), |