From 286dd4cdb4cb496ae73d3adcd944916fa304b876 Mon Sep 17 00:00:00 2001 From: Richard Genoud Date: Tue, 10 Jul 2012 18:23:40 +0200 Subject: [PATCH] --- yaml --- r: 329065 b: refs/heads/master c: 62082e56cbb807cb325a8968f35dbd922432eb48 h: refs/heads/master i: 329063: 310e24262f5250437348d2e8c10decd81a532652 v: v3 --- [refs] | 2 +- trunk/drivers/mtd/mtdpart.c | 10 ++++++++++ trunk/include/linux/mtd/partitions.h | 1 + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 4395304cb46f..d5ea11a6e1ab 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5dee4674c8dd4398f4806aae153888319c7e2be9 +refs/heads/master: 62082e56cbb807cb325a8968f35dbd922432eb48 diff --git a/trunk/drivers/mtd/mtdpart.c b/trunk/drivers/mtd/mtdpart.c index 85005846f30d..3a49e6de5e60 100644 --- a/trunk/drivers/mtd/mtdpart.c +++ b/trunk/drivers/mtd/mtdpart.c @@ -760,3 +760,13 @@ int mtd_is_partition(const struct mtd_info *mtd) return ispart; } EXPORT_SYMBOL_GPL(mtd_is_partition); + +/* Returns the size of the entire flash chip */ +uint64_t mtd_get_device_size(const struct mtd_info *mtd) +{ + if (!mtd_is_partition(mtd)) + return mtd->size; + + return PART(mtd)->master->size; +} +EXPORT_SYMBOL_GPL(mtd_get_device_size); diff --git a/trunk/include/linux/mtd/partitions.h b/trunk/include/linux/mtd/partitions.h index 02a51157a173..1f8d24bdafda 100644 --- a/trunk/include/linux/mtd/partitions.h +++ b/trunk/include/linux/mtd/partitions.h @@ -83,5 +83,6 @@ int mtd_is_partition(const struct mtd_info *mtd); int mtd_add_partition(struct mtd_info *master, char *name, long long offset, long long length); int mtd_del_partition(struct mtd_info *master, int partno); +uint64_t mtd_get_device_size(const struct mtd_info *mtd); #endif