kernel/4.{4, 9}: add manufacturer ID for Winbond NANDs
Some MikroTik devices are using a Winbond NAND flash. Linux treats it as an unknown NAND before version 4.11: nand: device found, Manufacturer ID: 0xef, Chip ID: 0xf1 nand: Unknown NAND 128MiB 3,3V 8-bit nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64 Backport a patch from 4.11 to show the manufacturer correctly: nand: device found, Manufacturer ID: 0xef, Chip ID: 0xf1 nand: Winbond NAND 128MiB 3,3V 8-bit nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64 Tested on a MikroTik R951Ui-2HnD board. Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
This commit is contained in:
parent
adaf1cbcc8
commit
02050f7e7d
3 changed files with 69 additions and 1 deletions
|
@ -0,0 +1,34 @@
|
||||||
|
From a4077ce5871304f8a78f80b74b18b6052a410f1a Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Andrey Jr. Melnikov" <temnota.am@gmail.com>
|
||||||
|
Date: Thu, 8 Dec 2016 19:57:08 +0300
|
||||||
|
Subject: [PATCH] mtd: nand: Add Winbond manufacturer id
|
||||||
|
|
||||||
|
Add WINBOND manufacturer id.
|
||||||
|
|
||||||
|
Signed-off-by: Andrey Jr. Melnikov <temnota.am@gmail.com>
|
||||||
|
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
|
||||||
|
---
|
||||||
|
drivers/mtd/nand/nand_ids.c | 1 +
|
||||||
|
include/linux/mtd/nand.h | 1 +
|
||||||
|
2 files changed, 2 insertions(+)
|
||||||
|
|
||||||
|
--- a/drivers/mtd/nand/nand_ids.c
|
||||||
|
+++ b/drivers/mtd/nand/nand_ids.c
|
||||||
|
@@ -182,6 +182,7 @@ struct nand_manufacturers nand_manuf_ids
|
||||||
|
{NAND_MFR_SANDISK, "SanDisk"},
|
||||||
|
{NAND_MFR_INTEL, "Intel"},
|
||||||
|
{NAND_MFR_ATO, "ATO"},
|
||||||
|
+ {NAND_MFR_WINBOND, "Winbond"},
|
||||||
|
{0x0, "Unknown"}
|
||||||
|
};
|
||||||
|
|
||||||
|
--- a/include/linux/mtd/nand.h
|
||||||
|
+++ b/include/linux/mtd/nand.h
|
||||||
|
@@ -928,6 +928,7 @@ static inline void nand_set_controller_d
|
||||||
|
#define NAND_MFR_SANDISK 0x45
|
||||||
|
#define NAND_MFR_INTEL 0x89
|
||||||
|
#define NAND_MFR_ATO 0x9b
|
||||||
|
+#define NAND_MFR_WINBOND 0xef
|
||||||
|
|
||||||
|
/* The maximum expected count of bytes in the NAND ID sequence */
|
||||||
|
#define NAND_MAX_ID_LEN 8
|
|
@ -0,0 +1,34 @@
|
||||||
|
From a4077ce5871304f8a78f80b74b18b6052a410f1a Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Andrey Jr. Melnikov" <temnota.am@gmail.com>
|
||||||
|
Date: Thu, 8 Dec 2016 19:57:08 +0300
|
||||||
|
Subject: [PATCH] mtd: nand: Add Winbond manufacturer id
|
||||||
|
|
||||||
|
Add WINBOND manufacturer id.
|
||||||
|
|
||||||
|
Signed-off-by: Andrey Jr. Melnikov <temnota.am@gmail.com>
|
||||||
|
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
|
||||||
|
---
|
||||||
|
drivers/mtd/nand/nand_ids.c | 1 +
|
||||||
|
include/linux/mtd/nand.h | 1 +
|
||||||
|
2 files changed, 2 insertions(+)
|
||||||
|
|
||||||
|
--- a/drivers/mtd/nand/nand_ids.c
|
||||||
|
+++ b/drivers/mtd/nand/nand_ids.c
|
||||||
|
@@ -181,6 +181,7 @@ struct nand_manufacturers nand_manuf_ids
|
||||||
|
{NAND_MFR_SANDISK, "SanDisk"},
|
||||||
|
{NAND_MFR_INTEL, "Intel"},
|
||||||
|
{NAND_MFR_ATO, "ATO"},
|
||||||
|
+ {NAND_MFR_WINBOND, "Winbond"},
|
||||||
|
{0x0, "Unknown"}
|
||||||
|
};
|
||||||
|
|
||||||
|
--- a/include/linux/mtd/nand.h
|
||||||
|
+++ b/include/linux/mtd/nand.h
|
||||||
|
@@ -736,6 +736,7 @@ struct nand_chip {
|
||||||
|
#define NAND_MFR_SANDISK 0x45
|
||||||
|
#define NAND_MFR_INTEL 0x89
|
||||||
|
#define NAND_MFR_ATO 0x9b
|
||||||
|
+#define NAND_MFR_WINBOND 0xef
|
||||||
|
|
||||||
|
/* The maximum expected count of bytes in the NAND ID sequence */
|
||||||
|
#define NAND_MAX_ID_LEN 8
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
--- a/include/linux/mtd/nand.h
|
--- a/include/linux/mtd/nand.h
|
||||||
+++ b/include/linux/mtd/nand.h
|
+++ b/include/linux/mtd/nand.h
|
||||||
@@ -863,6 +863,7 @@ struct platform_nand_chip {
|
@@ -864,6 +864,7 @@ struct platform_nand_chip {
|
||||||
unsigned int options;
|
unsigned int options;
|
||||||
unsigned int bbt_options;
|
unsigned int bbt_options;
|
||||||
const char **part_probe_types;
|
const char **part_probe_types;
|
||||||
|
|
Loading…
Reference in a new issue