lkml.org 
[lkml]   [2012]   [Jul]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 2/4] MTD parts: introduce mtd_get_device_size()
    Date
    mtd_get_device_size() returns the size of the whole MTD device, that is
    the mtd_info master size.
    This is used by UBI to calculate the maximum number of bad blocks (MBB)
    on a MTD device.

    Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
    ---
    drivers/mtd/mtdpart.c | 14 ++++++++++++++
    include/linux/mtd/partitions.h | 1 +
    2 files changed, 15 insertions(+), 0 deletions(-)

    diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c
    index 8500584..d12f583 100644
    --- a/drivers/mtd/mtdpart.c
    +++ b/drivers/mtd/mtdpart.c
    @@ -760,3 +760,17 @@ int mtd_is_partition(const struct mtd_info *mtd)
    return ispart;
    }
    EXPORT_SYMBOL_GPL(mtd_is_partition);
    +
    +/* returns the size of an MTD device */
    +uint64_t mtd_get_device_size(const struct mtd_info *mtd)
    +{
    + struct mtd_part *part;
    +
    + if (!mtd_is_partition(mtd))
    + return mtd->size;
    +
    + part = PART(mtd);
    +
    + return part->master->size;
    +}
    +EXPORT_SYMBOL_GPL(mtd_get_device_size);
    diff --git a/include/linux/mtd/partitions.h b/include/linux/mtd/partitions.h
    index 02a5115..1f8d24b 100644
    --- a/include/linux/mtd/partitions.h
    +++ b/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
    --
    1.7.2.5


    \
     
     \ /
      Last update: 2012-07-10 19:02    [W:0.027 / U:0.612 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site