generic: allow ubi autoattach to run on NOR flash

Some devices out there only have a NOR flash to store the rootfs on.

While using UBI is arguable on this kind of flash, this is something that should
be supported.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 44260
This commit is contained in:
Imre Kaloz 2015-02-05 11:21:31 +00:00
parent 67b91f47d6
commit b361a9d59a
4 changed files with 12 additions and 8 deletions

View File

@ -11,7 +11,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/ubi/build.c --- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c +++ b/drivers/mtd/ubi/build.c
@@ -1207,6 +1207,48 @@ static struct mtd_info * __init open_mtd @@ -1207,6 +1207,49 @@ static struct mtd_info * __init open_mtd
return mtd; return mtd;
} }
@ -43,6 +43,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+ +
+ /* auto-add only media types where UBI makes sense */ + /* auto-add only media types where UBI makes sense */
+ if (mtd->type == MTD_NANDFLASH || + if (mtd->type == MTD_NANDFLASH ||
+ mtd->type == MTD_NORFLASH ||
+ mtd->type == MTD_DATAFLASH || + mtd->type == MTD_DATAFLASH ||
+ mtd->type == MTD_MLCNANDFLASH) { + mtd->type == MTD_MLCNANDFLASH) {
+ mutex_lock(&ubi_devices_mutex); + mutex_lock(&ubi_devices_mutex);
@ -60,7 +61,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
static int __init ubi_init(void) static int __init ubi_init(void)
{ {
int err, i, k; int err, i, k;
@@ -1290,6 +1332,12 @@ static int __init ubi_init(void) @@ -1290,6 +1333,12 @@ static int __init ubi_init(void)
} }
} }

View File

@ -11,7 +11,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/ubi/build.c --- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c +++ b/drivers/mtd/ubi/build.c
@@ -1209,6 +1209,48 @@ static struct mtd_info * __init open_mtd @@ -1209,6 +1209,49 @@ static struct mtd_info * __init open_mtd
return mtd; return mtd;
} }
@ -43,6 +43,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+ +
+ /* auto-add only media types where UBI makes sense */ + /* auto-add only media types where UBI makes sense */
+ if (mtd->type == MTD_NANDFLASH || + if (mtd->type == MTD_NANDFLASH ||
+ mtd->type == MTD_NORFLASH ||
+ mtd->type == MTD_DATAFLASH || + mtd->type == MTD_DATAFLASH ||
+ mtd->type == MTD_MLCNANDFLASH) { + mtd->type == MTD_MLCNANDFLASH) {
+ mutex_lock(&ubi_devices_mutex); + mutex_lock(&ubi_devices_mutex);
@ -60,7 +61,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
static int __init ubi_init(void) static int __init ubi_init(void)
{ {
int err, i, k; int err, i, k;
@@ -1298,6 +1340,12 @@ static int __init ubi_init(void) @@ -1298,6 +1341,12 @@ static int __init ubi_init(void)
} }
} }

View File

@ -11,7 +11,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/ubi/build.c --- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c +++ b/drivers/mtd/ubi/build.c
@@ -1209,6 +1209,48 @@ static struct mtd_info * __init open_mtd @@ -1209,6 +1209,49 @@ static struct mtd_info * __init open_mtd
return mtd; return mtd;
} }
@ -43,6 +43,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+ +
+ /* auto-add only media types where UBI makes sense */ + /* auto-add only media types where UBI makes sense */
+ if (mtd->type == MTD_NANDFLASH || + if (mtd->type == MTD_NANDFLASH ||
+ mtd->type == MTD_NORFLASH ||
+ mtd->type == MTD_DATAFLASH || + mtd->type == MTD_DATAFLASH ||
+ mtd->type == MTD_MLCNANDFLASH) { + mtd->type == MTD_MLCNANDFLASH) {
+ mutex_lock(&ubi_devices_mutex); + mutex_lock(&ubi_devices_mutex);
@ -60,7 +61,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
static int __init ubi_init(void) static int __init ubi_init(void)
{ {
int err, i, k; int err, i, k;
@@ -1298,6 +1340,12 @@ static int __init ubi_init(void) @@ -1298,6 +1341,12 @@ static int __init ubi_init(void)
} }
} }

View File

@ -11,7 +11,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/ubi/build.c --- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c +++ b/drivers/mtd/ubi/build.c
@@ -1213,6 +1213,48 @@ static struct mtd_info * __init open_mtd @@ -1213,6 +1213,49 @@ static struct mtd_info * __init open_mtd
return mtd; return mtd;
} }
@ -43,6 +43,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+ +
+ /* auto-add only media types where UBI makes sense */ + /* auto-add only media types where UBI makes sense */
+ if (mtd->type == MTD_NANDFLASH || + if (mtd->type == MTD_NANDFLASH ||
+ mtd->type == MTD_NORFLASH ||
+ mtd->type == MTD_DATAFLASH || + mtd->type == MTD_DATAFLASH ||
+ mtd->type == MTD_MLCNANDFLASH) { + mtd->type == MTD_MLCNANDFLASH) {
+ mutex_lock(&ubi_devices_mutex); + mutex_lock(&ubi_devices_mutex);
@ -60,7 +61,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
static int __init ubi_init(void) static int __init ubi_init(void)
{ {
int err, i, k; int err, i, k;
@@ -1305,6 +1347,12 @@ static int __init ubi_init(void) @@ -1305,6 +1348,12 @@ static int __init ubi_init(void)
} }
} }